梯度反向传播求解示例
生活随笔
收集整理的這篇文章主要介紹了
梯度反向传播求解示例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
深度學習中進行網絡的訓練的時候,常常采用梯度反向傳遞的方式對網絡中的參數進行調整,那么具體是怎么實現的呢?我用一個簡單的例子進行推導求解。
如下圖,這里采用的是兩層網絡,損失函數采用的是平方差損失函數,激勵函數采用的是sigmoid函數,sigmoid函數的導數在我的上篇文章中有寫,這里直接用,不再贅述。
? ? ? ? 通過上面的一系列推導就可以看出,反向傳播網絡的工作過程是首先進行信息的前饋,計算出各個節點的輸入輸出值,網絡最終的輸出,并把各個節點的輸入輸出值進行存儲,利用損失函數求出最終的損失,然后進行損失的反向傳播,在損失反向傳播的過程中實際上是對各個節點的輸出進行求梯度,那么在這個過程中我們發現用到的值都是之前前饋過程中的輸入輸出值,只要推導出計算公式,就可以直接利用存儲的中間變量實現反向傳播的梯度求解,然后是對各個權值進行更新,在更新的過程中會用到先前求解的對于各個節點輸出梯度。
可能整個的推導過程看著有點暈,但是只有踏踏實實推導一遍,對于反向傳播網絡才會有一個更加清晰的認識與了解~
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的梯度反向传播求解示例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关于激励函数的一些思考
- 下一篇: idea新建springboot后端到前