天天看點

《深度學習導論及案例分析》一2.14通用反向傳播算法

#### 本節書摘來自華章出版社《深度學習導論及案例分析》一書中的第2章,第2.14節,作者李玉鑑 張婷,更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視。

由于深度學習在本質上是人工神經網絡的延續,是在克服反向傳播算法對深層網絡的訓練困難過程中逐漸發展和建立起來的,是以有必要先讨論反向傳播算法,又稱為bp算法。下面将給出任意前饋神經網絡的通用bp算法,以幫助讀者了解其他各種不同網絡的具體bp算法。

不妨設前饋神經網絡共包含n個節點{u1,u2,…,un},隻有從編号較小的神經元才能連接配接到編号較大的神經元,沒有回報連接配接。當網絡共包含10個節點時,通用前饋神經網絡的一種連接配接方式如圖2.17所示。第n個節點對第l個輸入樣本的輸出用xn,l表示,其中1≤n≤n且1≤l≤l。如果un是輸入節點,那麼它對第l個輸入樣本的輸入為netn,l=xn,l;否則,相應的輸入為netn,l=∑kwk→nxk,l且xn,l=fn(netn,l),其中非輸入節點可以是隐含節點或輸出節點,wk→n(k

是以,根據公式(2.124)和公式(2.125),在理論上可以設計一個前饋神經網絡的通用bp算法,即算法2.4。

《深度學習導論及案例分析》一2.14通用反向傳播算法

算法2.4通用bp算法的一次疊代過程

注意,在算法2.4中,隻給出了通用bp算法的一次疊代過程,在實際應用時,還需要選擇合适的疊代次數,常常在進行多次、幾十次、幾百次,甚至成千上萬次疊代之後,才能獲得令人滿意的學習訓練效果。

如果把循環神經網絡的結構按時間展開成虛拟的前饋網絡結構,同時考慮權值和偏置在時間上共享的特點,那麼也不難得到相應的時間展開bp算法(backpropagation through time,bptt)。這在介紹循環神經網絡時還将讨論更多的細節。

繼續閱讀