最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python深度學習人工智能BackPropagation鏈式法則

 更新時間:2021年11月12日 09:39:43   作者:Swayzzu  
這篇文章主要為大家介紹了python深度學習人工智能BackPropagation鏈式法則的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助

1.鏈式法則

根據(jù)以前的知識,如果我們需要尋找到目標參數(shù)的值的話,我們需要先給定一個初值,然后通過梯度下降,不斷對其更新,直到最終的損失值最小即可。而其中最關鍵的一環(huán),就是梯度下降的時候,需要的梯度,也就是需要求最終的損失函數(shù)對參數(shù)的導數(shù)。

如下圖,假設有一個神經(jīng)元,是輸入層,有2個數(shù)據(jù),參數(shù)分別是w1和w2,偏置項為b,那么我們需要把這些參數(shù)組合成一個函數(shù)z,然后將其輸入到sigmoid函數(shù)中,便可得到該神經(jīng)元的輸出結果。過程中,z對w求導十分好算,就是x1和x2。根據(jù)鏈式法則,如下圖左下角所示,我們整體的計算過程就是,通過前向傳播求出z對w的偏導,再通過反向傳播找到損失函數(shù)C對z的偏導。

2.前向傳播

計算z對w的偏導:前向傳播相當簡單,對參數(shù)的偏導結果就是參數(shù)對應的輸入數(shù)據(jù),如下圖所示。輸入數(shù)據(jù)對于輸入層來說就是原始數(shù)據(jù)1和-1,對于其他層,輸入數(shù)據(jù)就是通過sigmoid轉換后的輸出結果。

3.后向傳播

計算C對z的偏導:

設每一個神經(jīng)元中,sigmoid函數(shù)最終的輸出為a,則C對z的偏導,根據(jù)鏈式法則,就可以寫作a對z的偏導,乘上C對a的偏導。

a對z的偏導,只是一個sigmoid函數(shù),該函數(shù)偏導可以計算。

C對a的偏導,由于a輸入進了下一層的多個神經(jīng)元,假設有2個,因此,C對a的偏導,等于分別對這兩個神經(jīng)元求偏導并求和。比如第一個神經(jīng)元z' = 輸入a*權重w3+...,那么C對這個神經(jīng)元求偏導,就是C對z'求偏導,乘上z'對a求偏導,后一項十分簡單,就是w3;對于z''來說,對a求偏導就是w4

那么問題又變成了,C對z', z''求偏導的結果是什么?

假!如! 損失函數(shù)C對z'和z''的偏導已知了:

以上C對z求偏導的計算過程,可以寫作以下的式子,括號外就是a對z求偏導,括號內就是C對a求偏導:

這個式子可以看做一個反向傳播的神經(jīng)元,如下圖所示:

這個神經(jīng)元中,損失函數(shù)C對sigmoid轉化前的z' 和z''求導的結果,就是輸入,權重w3,w4是輸入對應的權重,將這兩個輸入乘上參數(shù)后相加,再和sigmoid函數(shù)對z的導數(shù)相乘,最終得到C對z的偏導。而sigmoid對z的導數(shù),這個是常數(shù),并且已經(jīng)是確定了的,因為我們通過前向傳播計算,就已經(jīng)能夠將其確定。

有了第一個反向傳播的輸出結果,那么就可以有隱藏層的其他神經(jīng)元所需要的結果,以此類推,對于所有神經(jīng)元,我們均可算出損失函數(shù)對其z的偏導。有了這個,那么我們結合z對w的偏導,就可以計算出每一個參數(shù)w的梯度。從而進行梯度下降。

4.計算方式整理

假設我們計算的是輸出層,那么我們通過前向傳播后,已經(jīng)得到了一個輸出了,于是就已經(jīng)有損失函數(shù)C了,同時前向傳播也讓我們得到了z'和z'',那么所有需要的數(shù)據(jù)已就緒,可以直接計算出來C對z'和z''的偏導。

假如我們計算的是中間層,在計算C對z'的偏導的時候,還需要下一層通過反向傳播給到的C對兩個其他z的結果,那么我們就繼續(xù)往下計算,繼續(xù)尋找下一層計算的時候,需要的下下一層的信息,一直到輸出層后,我們得到一個,再往回推,以此遞歸計算前面待定的所有項。

5.總結

既然我們需要輸出層的內容作為反向傳播的輸入,我們在進行完前向傳播之后,就別考慮前面需要什么求導了,干脆直接從結尾開始算起,得到每一層的損失函數(shù)C對每一個z的偏導即可。

至此,我們得到了每一個神經(jīng)元前向傳播的z對w的偏導(其實就是sigmoid轉化后的輸出a),以及每一個神經(jīng)元反向傳播后的C對z的偏導,二者相乘,就得到了我們需要的結果,也就是每一個參數(shù)的梯度。

以上就是python深度學習人工智能BackPropagation鏈式法則的詳細內容,更多關于python人工智能BackPropagation鏈式法則的資料請關注腳本之家其它相關文章!

相關文章

  • Python連接和操作PostgreSQL數(shù)據(jù)庫的流程步驟

    Python連接和操作PostgreSQL數(shù)據(jù)庫的流程步驟

    PostgreSQL 是一種開源的對象關系型數(shù)據(jù)庫管理系統(tǒng)(ORDBMS),以其強大的功能和穩(wěn)定性而廣受歡迎,本文將詳細介紹如何使用 Python 連接和操作 PostgreSQL 數(shù)據(jù)庫,需要的朋友可以參考下
    2024-10-10
  • python requests更換代理適用于IP頻率限制的方法

    python requests更換代理適用于IP頻率限制的方法

    今天小編就為大家分享一篇python requests更換代理適用于IP頻率限制的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • python boto和boto3操作bucket的示例

    python boto和boto3操作bucket的示例

    這篇文章主要介紹了python boto和boto3操作bucket的示例,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-10-10
  • Python實現(xiàn)感知機(PLA)算法

    Python實現(xiàn)感知機(PLA)算法

    這篇文章主要為大家詳細介紹了Python實現(xiàn)感知機(PLA)算法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • Python切割圖片成九宮格的示例代碼

    Python切割圖片成九宮格的示例代碼

    這篇文章主要介紹了Python切割圖片成九宮格的相關知識,本文通過截圖實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • python獲取指定目錄下所有文件名列表的方法

    python獲取指定目錄下所有文件名列表的方法

    這篇文章主要介紹了python獲取指定目錄下所有文件名列表的方法,涉及Python目錄及文件操作的相關技巧,需要的朋友可以參考下
    2015-05-05
  • Python使用cx_Oracle庫連接Oracle數(shù)據(jù)庫指南

    Python使用cx_Oracle庫連接Oracle數(shù)據(jù)庫指南

    這篇文章主要為大家介紹了Python使用cx_Oracle庫連接Oracle數(shù)據(jù)庫指南,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-12-12
  • Python利用多線程同步鎖實現(xiàn)多窗口訂票系統(tǒng)(推薦)

    Python利用多線程同步鎖實現(xiàn)多窗口訂票系統(tǒng)(推薦)

    這篇文章主要介紹了Python利用多線程同步鎖實現(xiàn)多窗口訂票系統(tǒng),主要是利用threading.lock()通過實例代碼相結合給大家講解的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-12-12
  • Python與機器學習庫LightGBM使用詳解

    Python與機器學習庫LightGBM使用詳解

    LightGBM是一種高效的梯度提升決策樹框架,以其快速訓練和高預測性能聞名,它通過直方圖算法和基于葉子生長策略優(yōu)化技術,能夠在大規(guī)模數(shù)據(jù)集上提供卓越性能,本文詳細介紹了如何使用LightGBM進行分類和回歸任務,包括模型構建、參數(shù)調整
    2025-01-01
  • 詳解在OpenCV中實現(xiàn)的圖像標注技術

    詳解在OpenCV中實現(xiàn)的圖像標注技術

    圖像標注在計算機視覺中很重要,計算機視覺是一種技術,它允許計算機從數(shù)字圖像或視頻中獲得高水平的理解力,并以人類的方式觀察和解釋視覺信息,本文將重點討論在OpenCV的幫助下創(chuàng)建這些注釋,感興趣的朋友一起看看吧
    2022-06-06

最新評論

洪泽县| 沽源县| 六枝特区| 舒城县| 太仆寺旗| 德保县| 眉山市| 涿州市| 托克逊县| 文成县| 都江堰市| 米易县| 焦作市| 桐乡市| 花莲县| 容城县| 柯坪县| 堆龙德庆县| 昌吉市| 读书| 崇礼县| 曲松县| 淮阳县| 大连市| 屏东县| 永兴县| 长岭县| 岳普湖县| 龙川县| 宁河县| 襄汾县| 孝感市| 彭泽县| 雷山县| 井研县| 台前县| 南郑县| 双辽市| 陕西省| 通州区| 江北区|