最近進一步學習了邏輯函數(shù)和神經(jīng)網(wǎng)絡
邏輯函數(shù)
邏輯函數(shù)是為了解決二分類問題室谚,如是否為垃圾郵件究珊、腫瘤是良性還是惡性等荆萤,對于這些問題感猛,我們通過輸出y的只來判別(y的值只有0或1)。
Y用函數(shù)表達式為
其中g(z)為邏輯函數(shù)(logistic function & sigmoid function)没龙,函數(shù)表達式為
邏輯函數(shù)的圖像如下
因為他的圖像形狀為s形癌蚁,也可以稱g(z)為s形函數(shù)。
邏輯函數(shù)通過占比分類兜畸,如果y值靠近1則取1努释,如果靠近0則取0.通過圖可以看出來,0.5為一個分界線咬摇,也就是一個分類邊界伐蒂。
對于邏輯回歸問題,我們定義新的代價函數(shù)肛鹏,如下所示
經(jīng)過簡化可以得到
邏輯回歸中存在比梯度下降更優(yōu)的算法逸邦,這些算法不需要你去找學習速率α,它會自動找到局部最優(yōu)的學習速率進行計算在扰。這些算法為Conjugate gradient缕减、BFGS、L-BFGS.這些算法可以更快完成梯度下降法的工作芒珠,實現(xiàn)他們需要在Octave中輸入一下高級函數(shù)
多分類任務
比如說一個需要三個特征區(qū)分的函數(shù)桥狡,把它分為三個只需要兩個特征的函數(shù)(將其中的任意兩個特征當做一個特征,另一個特征不變),選取當中y的最大值就可以了裹芝。
欠擬合:不能很好的完成對現(xiàn)有訓練集的擬合
過擬合:可以很好地完成對現(xiàn)有訓練集的擬合部逮,但因為變量過多,不能很好的預測未來的數(shù)據(jù)嫂易。
對于過擬合有兩種方法
1兄朋、減少特征的數(shù)量
2、正則化:減少參數(shù)的大小
正則化就是將過多余的參數(shù)加入代價函數(shù)j(theta)中怜械,如
這里的theta3和theta4為多余特征變量颅和,將它們加入代價函數(shù),因為我們要使代價的數(shù)的值趨近于0缕允,所以必須要使theta3和theta4的值趨近于0峡扩,那么他們在h(x)中的影響就會變得很小,可以達到很好的擬合現(xiàn)有的訓練集和預測未來的數(shù)據(jù)灼芭。
在邏輯回歸函數(shù)中使用正則化之后有额,他的函數(shù)為
神經(jīng)網(wǎng)絡
線性回歸和邏輯回歸都是一些解決少特征問題的方法般又,一旦遇到多特征問題彼绷,就會變得很棘手,所以我們要學習神經(jīng)網(wǎng)絡算法茴迁。
該圖為神經(jīng)網(wǎng)絡大致的一個計算過程
第一列為第一層寄悯,也稱之為輸入層,最后一層為輸出層堕义,第二層為隱藏層(除了輸入層和輸出層以外都是隱藏層)猜旬。
? a_j^i表示為第i層第j個。
? 每一層都會有一個第0個元素倦卖,他們的下表為0洒擦,因為他們的值都為1,所以會考慮是否對例子有利來判斷是否寫出怕膛。
? 為第j層到第j+1層的權值矩陣熟嫩。
其用公式表示為:
s_j為第j層的單元數(shù)(不包括下標為0的),s_(j+1)為第j+1蹭的單元數(shù)褐捻。隱藏層和輸出層的函數(shù)表達式如下
其中g函數(shù)就為上文中的邏輯函數(shù)掸茅,也成為s形函數(shù)。所以神經(jīng)網(wǎng)絡的函數(shù)值也為0或1.
舉一個用or函數(shù)的例子
通過給定theta的值來對不同x1柠逞、x2的值進行預測昧狮,設z=-10+20x1+20x2,當z大于0時按照上文中s形函數(shù)的圖像板壮,g(z)的值取1逗鸣,當z小于0時,g(z)的值取0,所欲偶一神經(jīng)網(wǎng)絡得知也通過0或1來判斷慕购。