能使待優化的目標函數逐步減小。梯度下降法是2範數下的最速下降法。
最速下降法的一種簡單形式是:x(k+1)=x(k)-a*g(k),其中a稱爲學習速率,可以是
較小的常數。g(k)是x(k)的梯度。
直觀的說,就是在一個有中心的等值線中,從初始值開始,每次沿着垂直等值線方
向移動一個小的距離,最終收斂在中心。
對於某一個性能指數,我們能夠運用梯度下降法,使這個指數降到最小。若該
指數爲均方誤差,我們便得到了最小均方誤差(LMS)算法。
BP算法也是要使性能指數-均方誤差達到最小,它與LMS算法的差別在於對於權值導數
(即梯度)的計算方式上。
LMS是運用在單層線性網絡中的,誤差是網絡權值的顯示線性函數,權值導數可直接
求得。但其只能解決線性可分問題。
BP算法用於有隱藏層的多層網絡中,權值和誤差的關係比較複雜,需要用到微積分鏈
法則。該算法可以解決線性不可分問題。
如何使用鏈法則,是個比較複雜的問題,可以參考《神經網絡設計》一書。