本文主要內(nèi)容來自于西瓜書和南瓜書溉箕。
誤差逆?zhèn)鞑ィ╡rror backpropagation沟优,簡稱bp)算法是迄今最成功的神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法。
現(xiàn)實任務(wù)中使用神經(jīng)網(wǎng)絡(luò)大多是在BP算法進(jìn)行訓(xùn)練功舀。
BP算法基于梯度下降策略棺棵,以目標(biāo)的負(fù)梯度方向?qū)?shù)進(jìn)行調(diào)整,對于誤差Ek食寡,給定學(xué)習(xí)率η雾狈,可知:
其中最外層(輸出層)神經(jīng)元輸入值β對w求導(dǎo)即為上一層(這里指隱層)的輸出b,即:
定gj為誤差Ek對j層輸入值的負(fù)梯度:
這里輸出層輸出值y對輸入值求導(dǎo)即為sigmoid函數(shù)求導(dǎo)抵皱。
最終可得
神經(jīng)元閾值更新:
由于sigmoid函數(shù)導(dǎo)數(shù)性質(zhì)善榛,其中yj對閾值θj求導(dǎo)與yj對輸入值求導(dǎo)是一對相反數(shù),故:
同理可推出損失對v的導(dǎo)數(shù):
其中:
而且輸出層神經(jīng)元輸入βj對隱層神經(jīng)元輸出bh的導(dǎo)數(shù)即為該輪bp前的whj
故可列出:
其中eh為損失對隱層第h個節(jié)點(diǎn)梯度的負(fù)梯度:
同理得: