欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

反向傳播BP學(xué)習(xí)算法Gradient?Descent的推導(dǎo)過(guò)程

 更新時(shí)間:2022年05月10日 14:06:27   作者:Cyril_KI  
這篇文章主要為大家介紹了反向傳播BP學(xué)習(xí)算法-Gradient?Descent的推導(dǎo)過(guò)程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

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,即:

梯度下降的具體步驟為:

圖源:李宏毅機(jī)器學(xué)習(xí)講稿

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的基本操作詳解

    GIt的基本操作詳解

    本文主要介紹了GIt的基本操作。具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧
    2017-01-01
  • 在Linux下搭建Git服務(wù)器的方法詳解

    在Linux下搭建Git服務(wù)器的方法詳解

    雖然用Git的人不多,但是git不僅僅是svn等版本控制系統(tǒng)的替換工具,它自己強(qiáng)大的功能,穩(wěn)定的性能,方便快捷等優(yōu)點(diǎn)自然不需多說(shuō),不了解的人自行去網(wǎng)上查看。本文將會(huì)詳細(xì)介紹在Linux下搭建Git服務(wù)器的方法,有需要的朋友們可以參考借鑒。
    2016-09-09
  • 微信小程序?qū)W習(xí)之初探小程序

    微信小程序?qū)W習(xí)之初探小程序

    這兩天“微信小程序”這個(gè)詞占據(jù)了朋友圈,大有一番風(fēng)起云涌之勢(shì),當(dāng)然,還不可能夸張到使原生App開(kāi)發(fā)人員失業(yè)這種程度。當(dāng)然,作為一名技術(shù)人員,時(shí)刻保持對(duì)新技術(shù)的好奇心是必須的,所以在網(wǎng)上找大神的教程,搭建了一下開(kāi)發(fā)環(huán)境,來(lái)學(xué)習(xí)一下這個(gè)新的開(kāi)發(fā)框架。
    2016-09-09
  • 詳解git使用小結(jié)(本地分支與遠(yuǎn)程分支、git命令)

    詳解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的圖文詳解

    這篇文章主要介紹了在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ò)程

    這篇文章主要為大家介紹了反向傳播BP學(xué)習(xí)算法-Gradient?Descent的推導(dǎo)過(guò)程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • vscode修改默認(rèn)瀏覽器的方法

    vscode修改默認(rèn)瀏覽器的方法

    本文給大家介紹的是如何實(shí)現(xiàn)Vscode瀏覽器打開(kāi)html頁(yè)面的方法,非常的實(shí)用,有需要的小伙伴可以查看下
    2020-02-02
  • Web 開(kāi)發(fā)中遇到的UTF-8編碼的問(wèn)題總結(jié)

    Web 開(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)

    這篇文章主要介紹了使用VSCode如何從github拉取項(xiàng)目的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • 使用git checkout到歷史某個(gè)版本

    使用git checkout到歷史某個(gè)版本

    這篇文章主要介紹了使用git checkout到歷史某個(gè)版本,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09

最新評(píng)論