1. 程式人生 > >神經網路簡單理解(一):梯度彌散

神經網路簡單理解(一):梯度彌散

這裡C(w)為最後的代價函式,它權值w的函式。每一層的加權輸入為ZJ=W×aj-1+b。每一層的輸出為ajaj=φ(ZJ),這裡φ是啟用函式。

反向傳播更新的是每一層神經元連線的權重w,即求C(w)對每一層w 的偏導數。反向傳播首先求C對W4的偏導數,所以公式為:

同理,由於W3只能通過加權輸入Z3在影響結果,所以公式為:

可以看出在更新權值的時候,每向前傳播一層,就要乘以啟用函式的導數φ’。當選擇的啟用函式為sigmoid時(導數影象如圖所示,該導數的最大值為1/4),乘一個會導致梯度越來越小,這對於深層網路的訓練是個很大的問題。而relu函式的導數是1,不會導致梯度變小。

http://upload-images.jianshu.io/upload_images/2256672-ad98d6b22f1a66ab.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/360