深度学习(28)随机梯度下降六: 多输出感知机梯度
生活随笔
收集整理的這篇文章主要介紹了
深度学习(28)随机梯度下降六: 多输出感知机梯度
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
深度學習(28)隨機梯度下降六: 多輸出感知機梯度
- 1. Multi-output Perceptron
- 2. Derivative
- 3. 代碼
Perceptron
單輸出感知機梯度
?E?wj0=(O01?t)O0(1?O0)xj0\frac{?E}{?w_{j0}}=(O_0^1-t)O_0 (1-O_0)x_j^0?wj0??E?=(O01??t)O0?(1?O0?)xj0?
1. Multi-output Perceptron
如上圖所示,共有n×mn×mn×m個連接(即權重);
2. Derivative
- 損失函數losslossloss為:
E=12(O0i?ti)2E=\frac{1}{2} (O_0^i-t_i)^2E=21?(O0i??ti?)2 - 對wjkw_{jk}wjk?求偏導數:
?E?wjk=(Ok?tk)?Ok?wjk\frac{?E}{?w_{jk}}=(O_k-t_k)\frac{?O_k}{?w_{jk}} ?wjk??E?=(Ok??tk?)?wjk??Ok?? - Ok=σ(xk)O_k=σ(x_k)Ok?=σ(xk?):
?E?wjk=(Ok?tk)?σ(xk)?wjk\frac{?E}{?w_{jk}}=(O_k-t_k)\frac{?σ(x_k)}{?w_{jk}} ?wjk??E?=(Ok??tk?)?wjk??σ(xk?)? - ?σ(xk)?wjk=?σ(xk)?xk??xk?wjk\frac{?σ(x_k)}{?w_{jk}}=\frac{?σ(x_k)}{?x_k }\cdot\frac{?x_k}{?w_{jk}}?wjk??σ(xk?)?=?xk??σ(xk?)???wjk??xk??,其中?σ(xk)?xk=σ(xk)(1?σ(xk))\frac{?σ(x_k)}{?x_k }=σ(x_k)(1-σ(x_k))?xk??σ(xk?)?=σ(xk?)(1?σ(xk?)):
?E?wjk=(Ok?tk)σ(xk)(1?σ(xk))?xk1?wjk\frac{?E}{?w_{jk}}=(O_k-t_k)σ(x_k)(1-σ(x_k))\frac{?x_k^1}{?w_{jk}} ?wjk??E?=(Ok??tk?)σ(xk?)(1?σ(xk?))?wjk??xk1?? - Ok=σ(xk)O_k=σ(x_k)Ok?=σ(xk?):
?E?wjk=(Ok?tk)Ok(1?Ok)?xk1?wjk\frac{?E}{?w_{jk}}=(O_k-t_k)O_k (1-O_k)\frac{?x_k^1}{?w_{jk}} ?wjk??E?=(Ok??tk?)Ok?(1?Ok?)?wjk??xk1?? - 因為xk1=x00w0k1+x10w1k1+x20w2k1+?+xj0wjk1+?+xn0wnk1x_k^1=x_0^0 w_{0k}^1+x_1^0 w_{1k}^1+x_2^0 w_{2k}^1+?+x_j^0 w_{jk}^1+?+x_n^0 w_{nk}^1xk1?=x00?w0k1?+x10?w1k1?+x20?w2k1?+?+xj0?wjk1?+?+xn0?wnk1?,所以:
?E?wjk=(Ok?tk)Ok(1?Ok)?xk1?wjk=(Ok?tk)Ok(1?Ok)xj0\frac{?E}{?w_{jk}}=(O_k-t_k)O_k (1-O_k)\frac{?x_k^1}{?w_{jk}} =(O_k-t_k)O_k (1-O_k)x_j^0?wjk??E?=(Ok??tk?)Ok?(1?Ok?)?wjk??xk1??=(Ok??tk?)Ok?(1?Ok?)xj0?
綜上所述,單輸出感知機梯度為:
?E?wjk=(Ok?tk)Ok(1?Ok)xj0\frac{?E}{?w_{jk}}=(O_k-t_k)O_k (1-O_k)x_j^0?wjk??E?=(Ok??tk?)Ok?(1?Ok?)xj0?
3. 代碼
參考文獻:
[1] 龍良曲:《深度學習與TensorFlow2入門實戰》
總結
以上是生活随笔為你收集整理的深度学习(28)随机梯度下降六: 多输出感知机梯度的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 神奇9转指标怎么看
- 下一篇: 深度学习(30)随机梯度下降七: 多层感