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