一、考虑以下多层前馈网络,进行前馈传播和误差逆传播相应的计算

(1) 输入在神经网络上进行一次前馈传播, 请计算隐层和输出层中每个神经元的输入和输出;
依题意:根据17363006,则输入为
A=x1=20.17+0.06=0.115
B=x2=20.36+0.06=0.210
然后进行前馈传播,首先是第一层隐层的神经元的输入和输出如下:
C(in)=0.1∗A+0.8∗B=0.1795
C(out)=sigmoid(C(in))=1+e−0.17951=0.5448
D(in)=0.4∗A+0.6∗B=0.1720
D(out)=sigmoid(C(in))=1+e−0.17201=0.5429
E(in)=0.3∗A+0.5∗B=0.1395
E(out)=sigmoid(E(in))=1+e−0.13951=0.5348
下面是第二层隐层的神经元的输入和输出:
F(in)=0.9∗C(out)+0.2∗D(out)+0.7∗E(out)=0.9733
F(out)=sigmoid(F(in))=1+e−0.97331=0.7258
G(in)=0.6∗C(out)+0.3∗D(out)+0.7∗E(out)=0.8641
G(out)=sigmoid(G(in))=1+e−0.86411=0.7035
H(in)=0.1∗C(out)+0.8∗D(out)+0.5∗E(out)=0.7562
H(out)=sigmoid(H(in))=1+e−0.75621=0.6805
最后是输出层神经元的输入输出:
M(in)=0.4∗F(out)+0.3∗G(out)+0.5∗H(out)=0.8416
M(out)=sigmoid(M(in))=1+e−0.84161=0.6988
N(in)=0.6∗F(out)+0.2∗G(out)+0.8∗H(out)=1.1206
N(out)=sigmoid(N(in))=1+e−1.12061=0.7541
(2) 进行一次误差逆传播, 请计算隐层和输出层每个神经元的误差,并更新每个权重参数。
依题意,目标值为
y=(y1,y2)=(20.30+0.06,0.06)T=(0.18,0.06)T
网络输出值
y=(y1,y2)=(M(out),N(out))T=(0.6988,0.7541)T
网络输出层总误差:
E=21∗j=1∑2(yj−yj)2=21∗[(0.6988−0.18)2+(0.7541−0.06)2]=0.3755
ps:每个神经元误差 error 记为 δ 且计为负, sigmoid函数求导的性质:f′(x)=f(x)(1−f(x))
输出层每个神经元的 error :(链式法则)
δM=−∂M(in)∂E=∂M(out)∂E⋅∂M(in)∂M(out)=(y1−M(out))⋅M(out)⋅(1−M(out))=−0.1092
δN=−∂N(in)∂E=∂N(out)∂E⋅∂N(in)∂N(out)=(y2−N(out))⋅N(out)⋅(1−N(out))=−0.1287
第二层隐层神经元的 error:
δF=−∂F(in)∂E=−(∂M(in)∂E⋅∂F(out)∂M(in)⋅∂F(in)∂F(out)+∂N(in)∂E⋅∂F(out)∂N(in)⋅∂F(in)∂F(out))=−0.0241
δG=−∂G(in)∂E=−(∂M(in)∂E⋅∂G(out)∂M(in)⋅∂G(in)∂G(out)+∂N(in)∂E⋅∂G(out)∂N(in)⋅∂G(in)∂G(out))=−0.0122
δH=−∂H(in)∂E=−(∂M(in)∂E⋅∂H(out)∂M(in)⋅∂H(in)∂H(out) +∂N(in)∂E⋅∂H(out)∂N(in)⋅∂H(in)∂H(out))=−0.0343
第一层隐层神经元的 error:
δC=−∂C(in)∂E=−(∂F(in)∂E⋅∂C(out)∂F(in)⋅∂C(in)∂C(out)+∂G(in)∂E⋅∂C(out)∂G(in)⋅∂C(in)∂C(out)+∂H(in)∂E⋅∂C(out)∂H(in)⋅∂C(in)∂C(out))=−0.0080
δD=−∂D(in)∂E=−(∂F(in)∂E⋅∂D(out)∂F(in)⋅∂D(in)∂D(out)+∂G(in)∂E⋅∂D(out)∂G(in)⋅∂D(in)∂D(out)+∂H(in)∂E⋅∂D(out)∂H(in)⋅∂D(in)∂D(out))=−0.0089
δE=−∂E(in)∂E=−(∂F(in)∂E⋅∂E(out)∂F(in)⋅∂E(in)∂E(out)+∂G(in)∂E⋅∂E(out)∂G(in)⋅∂E(in)∂E(out)+∂H(in)∂E⋅∂E(out)∂H(in)⋅∂E(in)∂E(out))=−0.0106
下面计算各神经元之间的权重参数,设权重参数 wij 为节点 i 到节点 j 的权重
第二层隐层与输出层之间的权重参数:
ΔwFM=−η∂wFM∂E=−η∂M(in)∂E⋅∂wFM∂M(in)=−0.0713
ΔwGM=−η∂wGM∂E=−η∂M(in)∂E⋅∂wGM∂M(in)=−0.0691
ΔwHM=−η∂wHM∂E=−η∂M(in)∂E⋅∂wHM∂M(in)=−0.0669
ΔwFN=−η∂wFN∂E=−η∂N(in)∂E⋅∂wFN∂N(in)=−0.0841
ΔwGN=−η∂wGN∂E=−η∂N(in)∂E⋅∂wGN∂N(in)=−0.0815
ΔwHN=−η∂wHN∂E=−η∂N(in)∂E⋅∂wHN∂N(in)=−0.0788
第一层隐层与第二层隐层之间的权重参数:
ΔwCF=−η∂wCF∂E=−η∂F(in)∂E⋅∂wCF∂F(in)=−0.0118
ΔwDF=−η∂wDF∂E=−η∂F(in)∂E⋅∂wDF∂F(in)=−0.0118
ΔwEF=−η∂wEF∂E=−η∂F(in)∂E⋅∂wEF∂F(in)=−0.0116
ΔwCG=−η∂wCG∂E=−η∂G(in)∂E⋅∂wCG∂G(in)=−0.0060
ΔwDG=−η∂wDG∂E=−η∂G(in)∂E⋅∂wDG∂G(in)=−0.0060
ΔwEG=−η∂wEG∂E=−η∂G(in)∂E⋅∂wEG∂G(in)=−0.0059
ΔwCH=−η∂wCH∂E=−η∂H(in)∂E⋅∂wCH∂H(in)=−0.0168
ΔwDH=−η∂wDH∂E=−η∂H(in)∂E⋅∂wDH∂H(in)=−0.0168
ΔwEH=−η∂wEH∂E=−η∂H(in)∂E⋅∂wEH∂H(in)=−0.0165
输入层与第一层隐层之间的权重参数:
ΔwAC=−η∂wAC∂E=−η∂C(in)∂E⋅∂wAC∂C(in)=−0.0008
ΔwBC=−η∂wBC∂E=−η∂C(in)∂E⋅∂wBC∂C(in)=−0.0015
ΔwAD=−η∂wAD∂E=−η∂D(in)∂E⋅∂wAD∂D(in)=−0.0009
ΔwBD=−η∂wBD∂E=−η∂D(in)∂E⋅∂wBD∂D(in)=−0.0017
ΔwAE=−η∂wAE∂E=−η∂E(in)∂E⋅∂wAE∂E(in)=−0.0011
ΔwBE=−η∂wBE∂E=−η∂E(in)∂E⋅∂wBE∂E(in)=−0.0020
权重更新函数:wij=wij+Δwij 下面对权重参数进行更新,重新得到前馈神经网络的参数图
代入具体值求得下面结果:
wAC=0.1−0.0008=0.0992 wAD=0.4−0.0009=0.3991 wAE=0.3−0.0011=0.2989wBC=0.8−0.0015=0.7985 wBD=0.6−0.0017=0.5983 wBE=0.5−0.0020=0.4980wCF=0.9−0.0118=0.8882 wCG=0.6−0.0060=0.5940 wCH=0.1−0.0168=0.0832wDF=0.2−0.0118=0.1882 wDG=0.3−0.0060=0.2940 wDH=0.8−0.0168=0.7832wEF=0.7−0.0116=0.6884 wEG=0.7−0.0059=0.6941 wEH=0.5−0.0165=0.4835wFM=0.4−0.0713=0.3287 wFN=0.6−0.0841=0.5159 wGM=0.2−0.0815=0.2309wGN=0.2−0.0815=0.1185 wHM=0.5−0.0669=0.4331 wHN=0.8−0.0788=0.7212
下面对权重参数进行更新,重新得到前馈神经网络的参数图
