感知器與梯度下降(二)

上一篇我們講了感知器和梯度下降的關聯,詳細請查看 感知器與梯度下降(一)今天我們來講一下,從算法上看,感知器和梯度下降的區別和聯繫。

從上一篇中,我們得到了誤差函數的表達式:

誤差函數是關於權重W的函數,畫一個三維的圖如下,誤差函數是關於權重W1和W2的函數,在某一點上誤差E的梯度是對w1和w2的偏導數的矢量和的反方向(相反數),如下圖右側所示: 

梯度下降的算法計算過程,我們來簡單看一下,預測函數y,初始隨機產生的W和b,那麼預測的結果不太好,誤差比較大,此時誤差下降最快的方向就是在該點的梯度,就是E對w1,w2.......wn,及b的偏導數,爲了使得梯度下降的更細膩,引入了學習率α=0.1,那麼經過梯度下降後,得到新的wi` 和b`,見下面圖中右側部分

 

 根據學習率和誤差對權重W和b的偏導數計算出新的權重值W`和b`

  此時,預測值y 就是  此時的誤差要比之前減少了,預測的效果就變好了,重複這一過程,誤差會變的越來越小,進而完成預測的過程。

下面我們來看下公式的推導過程,首先α(x) 是s型函數(sigmod函數),所有就有:,推導過程如下:

誤差函數: 

 其中,

 

 

 

梯度下降的過程和感知器的學習過程有點類似,感興趣的同學可以點擊查看 之前關於感知器的文章 深度學習-感知器是怎麼學習分類的? 下面我們來對比一下,看看兩者到底有什麼聯繫和區別:

從上面的圖中對比一下兩者的公式,左邊是梯度下降,右邊是感知器,在感知器學習過程中,不是所有點的權重都進行更新的,只有分類錯誤的點的權重才進行更新,具體介紹說明可以查看之前的一篇博文 深度學習-感知器是怎麼學習分類的?

在感知器中,預測值y^ 的值是0或者1 ,標籤y的值也是0或者1 ,因此,分類錯誤的情況下,分爲兩種:

(1) y =0,y^=1 : y-y^ = -1  wi = wi - α 

(2)y=1,y^=0: y-y^= 1      wi = wi + α xi6

 這樣就和左側的梯度下降的公式是一致的了,只是在梯度下降的過程中,預測值y^ 可以是0~1中的任意一值,而感知器中的y^  的值只能是0或者1.

而且他們在學習過程中的思想都是一致的,分類錯誤的點,需要分割線離得更近一點,分類正確的點,需要分割 線離得更遠一點

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章