图

符号
xij:第j行数据,第i个神经元输入
wlij:第l层的第i个神经元的到第l+1层的第j个神经元的权重
bl:第l层的偏置bias
zli:第l层第i个神经元的的输入
ali:第I层第i个神经元的输出
σ():**函数
δli:第I层第i个神经元的的误差
推导
向前传播
第一层
a(1)1=x1j
a(1)2=x2j
第二层
z(2)1=a(1)1w(1)1+a(1)2w(1)3+b1=x1jw(1)1+x2jw(1)3+b1
z(2)2=a(1)1w(1)2+a(1)2w(1)4+b1=x1jw(1)2+x2jw(1)4+b1
a(2)1=σ(z(2)1)=σ(x1jw(1)1+x2jw(1)3+b1)
a(2)2=σ(z(2)2)=σ(x1jw(1)2+x2jw(1)4+b1)
第三层
z(3)1=a(2)1w(2)1+a(2)2w(2)3+b2=σ(x1jw(1)1+x2jw(1)3+b1)w(2)1+σ(x1jw(1)2+x2jw(1)4+b1)w(2)3+b2
z(3)2=a(2)1w(2)2+a(2)2w(2)4+b2=σ(x1jw(1)1+x2jw(1)3+b1)w(2)2+σ(x1jw(1)2+x2jw(1)4+b1)w(2)4+b2
a(3)1=σ(z(3)1)=σ(σ(x1jw(1)1+x2jw(1)3+b1)w(2)1+σ(x1jw(1)2+x2jw(1)4+b1)w(2)3+b2)
a(3)2=σ(z(3)2)=σ(σ(x1jw(1)1+x2jw(1)3+b1)w(2)2+σ(x1jw(1)2+x2jw(1)4+b1)w(2)4+b2)
反向传播
对每一层的残差求导,求梯度,更新权重。
w=w-\alpha {{\partial E}\over \partial w}
对第三层-第二层权重更新
Etoatal=E(3)1+E(3)2=12(y−a(3)1)2+12(y−a(3)2)2=12(y−[σ(z31)]])2+12(y−[σ(z(3)2)])2
对w21取值更新,也就是先对w21求导,通过链式法则得到
∂Etotal∂w(2)1=∂[12(y−a(3)1)2+12(y−a(3)2)2]∂a(3)1∗∂[σ(z(3)1)]∂z(3)1∗∂(a(2)1w(2)1+a(2)2w(2)3+b2)∂w(2)1
=(a(3)1−y)∗σ(z(3)1)′∗a(2)1
对第二层-第一层权重更新
∂Etotal∂w(1)1=∂Etotal∂a(2)1∗∂σ(z(2)1)∂z(2)1∗∂(a(1)1w(1)1+a(1)2w(1)3+b1)∂w(1)1
∂Etotal∂a(2)1=E(3)1∂a(2)1+E(3)1∂a(2)1=∂[12(y−a(3)1)2]∂a(3)1∗∂[σ(z(3)1)]∂z(3)1∗∂(a(2)1w(2)1+a(2)2w(2)3+b2)∂a(2)1+∂[12(y−a(3)2)2]∂a(3)2∗∂[σ(z(3)2)]∂z(3)2∗∂(a(2)1w(2)2+a(2)2w(2)4+b2)∂a(2)1
=(a(3)1−y)∗σ(z(3)1)′∗w(2)1+(a(3)2−y)∗σ(z(3)2)′∗w(2)2
∂Etotal∂w(1)1=∂Etotal∂a(2)1∗∂σ(z(2)1)∂z(2)1∗∂(a(1)1w(1)1+a(1)2w(1)3+b1)∂w(1)1
=[(a(3)1−y)∗σ(z(3)1)′∗w(2)1+(a(3)2−y)∗σ(z(3)2)′∗w(2)2]∗σ(z(2)1)′a(1)1