反向傳播BP學(xué)習(xí)算法Gradient?Descent的推導(dǎo)過程
BP算法是適用于多層神經(jīng)網(wǎng)絡(luò)的一種算法,它是建立在梯度下降法的基礎(chǔ)上的。本文著重推導(dǎo)怎樣利用梯度下降法來minimise Loss Function。
給出多層神經(jīng)網(wǎng)絡(luò)的示意圖:
1.定義Loss Function
每一個(gè)輸出都對應(yīng)一個(gè)損失函數(shù)L,將所有L加起來就是total loss。
那么每一個(gè)L該如何定義呢?這里還是采用了交叉熵,如下所示:
最終Total Loss的表達(dá)式如下:
2.Gradient Descent
L對應(yīng)了一個(gè)參數(shù),即Network parameters θ(w1,w2…b1,b2…),那么Gradient Descent就是求出參數(shù) θ∗來minimise Loss Function,即:
梯度下降的具體步驟為:
3.求偏微分
從上圖可以看出,這里難點(diǎn)主要是求偏微分,由于L是所有損失之和,因此我們只需要對其中一個(gè)損失求偏微分,最后再求和即可。
先抽取一個(gè)簡單的神經(jīng)元來解釋:
因?yàn)槲覀儾⒉恢篮竺娴降子卸嗌賹?,也不知道情況到底有多復(fù)雜,我們不妨先取一種最簡單的情況,如下所示:
4.反向傳播
l對兩個(gè)z的偏導(dǎo)我們假設(shè)是已知的,并且在這里是作為輸入,三角形結(jié)構(gòu)可以理解為一個(gè)乘法運(yùn)算電路,其放大系數(shù)為 σ′(z)。但是在實(shí)際情況中,l對兩個(gè)z的偏導(dǎo)是未知的。假設(shè)神經(jīng)網(wǎng)絡(luò)最終的結(jié)構(gòu)就是如上圖所示,那么我們的問題已經(jīng)解決了:
其中:
但是假如該神經(jīng)元不是最后一層,我們又該如何呢?比如又多了一層,如下所示:
原理跟上面類似,如下所示:
那假設(shè)我們再加一層呢?再加兩層呢?再加三層呢?。。。,情況還是一樣的,還是先求l對最后一層z的導(dǎo)數(shù),乘以權(quán)重相加后最后再乘上 σ′(z′′,z′′′,...)即可。
最后給一個(gè)實(shí)例:
它的反向傳播圖長這樣:
我們不難發(fā)現(xiàn),這種計(jì)算方式很清楚明了地體現(xiàn)了“反向傳播”四個(gè)字。好了,目標(biāo)達(dá)成??!
5.總結(jié)
以上就是反向傳播BP學(xué)習(xí)算法-Gradient Descent的推導(dǎo)過程的詳細(xì)內(nèi)容,更多關(guān)于BP反向傳播Gradient Descent推導(dǎo)的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
詳解git使用小結(jié)(本地分支與遠(yuǎn)程分支、git命令)
這篇文章主要介紹了git使用小結(jié)(本地分支與遠(yuǎn)程分支、git命令),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08在IDEA(2020.2)中配置Git及使用Git的圖文詳解
這篇文章主要介紹了在IDEA(2020.2)中配置Git及使用Git的圖文詳解,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-12-12反向傳播BP學(xué)習(xí)算法Gradient?Descent的推導(dǎo)過程
這篇文章主要為大家介紹了反向傳播BP學(xué)習(xí)算法-Gradient?Descent的推導(dǎo)過程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05Web 開發(fā)中遇到的UTF-8編碼的問題總結(jié)
一個(gè)網(wǎng)站如果需要國際化,就需要將編碼從GB2312轉(zhuǎn)成UTF-8,其中有很多的問題需要注意,如果沒有轉(zhuǎn)換徹底,將會(huì)有很多的編碼問題出現(xiàn)!2010-02-02使用VSCode如何從github拉取項(xiàng)目的實(shí)現(xiàn)
這篇文章主要介紹了使用VSCode如何從github拉取項(xiàng)目的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08