图解深度学习笔记
误差反向传播算法
误差反向传播算法通过比较实际输出和期望输出得到误差信号,把误差信号从输出层逐层向前传播得到各层的误差信号,再通过调整各层的连接权重以减小误差。权重的调整主要使用梯度下降法。
本文主要为以下方面的推导
- 单层感知器
- 不含中间层的多层感知器
- 包含中间层的多层感知器
- 有多个输出函数的多层感知器
一、单层感知器
期望输出 r r r和网络的实际输出 y y y计算最小二乘误差函数 E E E
连接权重 w w w 、 η \eta η 表学习率 、 sigmoid \text{sigmoid} sigmoid函数作为激活函数 f ( u ) f(u) f(u)
单层感知器: ∂ E ∂ w i = ∂ E ∂ y ∂ y ∂ w i ( 1 ) \frac{\partial E}{\partial w_{i}}=\frac{\partial E}{\partial y} \frac{\partial y}{\partial w_{i}} \qquad(1) ∂wi∂E=∂y∂E∂wi∂y(1)设 y = f ( u ) y=f(u) y=f(u) ,求误差函数 E E E对 w i w_i wi的导数: ∂ E ∂ w i = − ( r − y ) ∂ y ∂ w i = − ( r − y ) ∂ f ( u ) ∂ w i ( 2 ) \frac{\partial E}{\partial w_{i}}=-(r-y) \frac{\partial y}{\partial w_{i}}=-(r-y) \frac{\partial f(u)}{\partial w_{i}} \qquad(2) ∂wi∂E=−(r−y)∂wi∂y=−(r−y)∂wi∂f(u)(2) f ( u ) f(u) f(u)的导数就是对复合函数求导 ∂ E ∂ w i = − ( r − y ) ∂ f ( u ) ∂ u ∂ u ∂ w i ( 3 ) \frac{\partial E}{\partial w_{i}}=-(r-y) \frac{\partial f(u)}{\partial u} \frac{\partial u}{\partial w_{i}} \qquad(3) ∂wi∂E=−(r−y)∂u∂f(u)∂wi∂u(3) u u u对 w i w_i wi求导的结果只和 x i x_i xi相关 ∂ u ∂ w i = x i ( 4 ) \frac{\partial u}{\partial w_{i}}=x_{i} \qquad(4) ∂wi∂u=xi(4)
将公式 ( 4 ) (4) (4)代入 ( 3 ) (3) (3)公式,得到下式 ∂ E ∂ w i = − ( r − y ) x i ∂ f ( u ) ∂ u ( 5 ) \frac{\partial E}{\partial w_{i}}=-(r-y) x_{i} \frac{\partial f(u)}{\partial u} \qquad(5) ∂wi∂E=−(r−y)xi∂u∂f(u)(5)对 sigmoid \text{sigmoid} sigmoid函数求导 ∂ f ( u ) ∂ u = f ( u ) ( 1 − f ( u ) ) ( 6 ) \frac{\partial f(u)}{\partial u}=f(u)(1-f(u)) \qquad(6) ∂u∂f(u)=f(u)(1−f(u))(6)将公式 ( 6 ) (6) (6)代入 ( 5 ) (5) (5)公式,得到下式 ∂ E ∂ w i = − ( r − y ) x i f ( u ) ( 1 − f ( u ) ) ( 7 ) \frac{\partial E}{\partial w_{i}}=-(r-y) x_{i} f(u)(1-f(u)) \qquad(7) ∂wi∂E=−(r−y)xif(u)(1−f(u))(7)由于 y = f ( u ) y=f(u) y=f(u),可以计算出单层感知器的权重调整值: Δ w i = − η ∂ E ∂ w i = η ( r − y ) y ( 1 − y ) x i ( 8 ) \Delta w_{i}=-\eta \frac{\partial E}{\partial w_{i}}=\eta(r-y) y(1-y) x_{i} \qquad(8) Δwi=−η∂wi∂E=η(r−y)y(1−y)xi(8)
二、不含中间层的多层感知器

不含中间层的感知器误差函数 E E E等于各输出单元的误差总和 E = 1 2 ∑ j = 1 q ( r j − y j ) 2 ( 9 ) E=\frac{1}{2} \sum_{j=1}^{q}\left(r_{j}-y_{j}\right)^{2} \qquad(9) E=21j=1∑q(rj−yj)2(9)对误差函数求导 ∂ E ∂ w i j = ∂ E ∂ y j ∂ y j ∂ w i j ( 10 ) \frac{\partial E}{\partial w_{i j}}=\frac{\partial E}{\partial y_{j}} \frac{\partial y_{j}}{\partial w_{i j}} \qquad(10) ∂wij