4.2 BP学习算法习题: 给定样本为x=[1 -1 1], y=[1, 1], 选μ=0.1, 计算如下图所示网络的权值调节过程(用BP算法)。隐单元及输出单元用筏a(x)=2/(1+e-x)-1

 4.2 BP学习算法

智能融合第四章第二题,实测正确,代码可运行,将其复制到matlab,直接运行,在执行框内可得到最后调整好的权重参数

习题: 给定样本为 x =[1 -1 1], y =[1, 1], =0.1,
算如下图所示网络的权值调节过程 ( BP 算法)。
隐单元及输出单元用 ( x )=2/(1+ e - x )-1 作为激活函
数,初始权值可选为:

最终版程序3

w = rand(15,1);

w30 = 1; w40 = 2; w50 =3;

w31 = 1; w41 = 0; w51 = 3;

w32 = 1; w42 =2; w52 = -3;

w63 = 1; w64 =-1; w65 = 1;

w73 = 0; w74 =1; w75 =1;

eta = 0.1;

for loop = 1:10000

sample = randi([1,4],1,1);

%sample = input('sample=1,2,3,4?');

if sample == 1

x1=1;x2=-1;x3=1;d6=1;d7=1;

end;

Oou0 = 2/(1 + exp(-x1))-1

Oou1 = 2/(1 + exp(-x2))-1;

Oou2 = 2/(1 + exp(-x3))-1;

v3 = w30*Oou0 + w31*Oou1 + w32*Oou2;

v4 = w40*Oou0 + w41*Oou1 + w42*Oou2;

v5 = w50*Oou0 + w51*Oou1 + w52*Oou2;

Oou3 = 2/(1 + exp(-v3))-1;

Oou4 = 2/(1 + exp(-v4))-1;

Oou5 = 2/(1 + exp(-v5))-1;

v6 = w63*Oou3 + w64*Oou4 + w65*Oou5;

v7 = w73*Oou3 + w74*Oou4 + w75*Oou5;

Oou6 = 2/(1 + exp(-v6))-1;

Oou7 = 2/(1 + exp(-v7))-1;

e6 = d6 - Oou6;

e7 = d7 - Oou7;

deltaw63 = 0.5*eta*e6*(1+Oou6)*(1-Oou6)*Oou3;

deltaw64 = 0.5*eta*e6*(1+Oou6)*(1-Oou6)*Oou4;

deltaw65 = 0.5*eta*e6*(1+Oou6)*(1-Oou6)*Oou5;

w63 = w63 + deltaw63;

w64 = w64 + deltaw64;

w65 = w65 + deltaw65;

deltaw73 = 0.5*eta*e7*(1+Oou7)*(1-Oou7)*Oou3;

deltaw74 = 0.5*eta*e7*(1+Oou7)*(1-Oou7)*Oou4;

deltaw75 = 0.5*eta*e7*(1+Oou7)*(1-Oou7)*Oou5;

w73 = w73 + deltaw73;

w74 = w74 + deltaw74;

w75 = w75 + deltaw75;

deltaw30 = 0.25*eta*(e6*(1+Oou6)*(1-Oou6)*w63+e7*(1+Oou7)*(1-Oou7)*w73)*(1+Oou3)*(1-Oou3)*Oou0;

deltaw31 = 0.25*eta*(e6*(1+Oou6)*(1-Oou6)*w63+e7*(1+Oou7)*(1-Oou7)*w73)*(1+Oou3)*(1-Oou3)*Oou1;

deltaw32 = 0.25*eta*(e6*(1+Oou6)*(1-Oou6)*w63+e7*(1+Oou7)*(1-Oou7)*w73)*(1+Oou3)*(1-Oou3)*Oou2;

deltaw40 = 0.25*eta*(e6*(1+Oou6)*(1-Oou6)*w64+e7*(1+Oou7)*(1-Oou7)*w74)*(1+Oou4)*(1-Oou4)*Oou0;

deltaw41 = 0.25*eta*(e6*(1+Oou6)*(1-Oou6)*w64+e7*(1+Oou7)*(1-Oou7)*w74)*(1+Oou4)*(1-Oou4)*Oou1;

deltaw42 = 0.25*eta*(e6*(1+Oou6)*(1-Oou6)*w64+e7*(1+Oou7)*(1-Oou7)*w74)*(1+Oou4)*(1-Oou4)*Oou2;

deltaw50 = 0.25*eta*(e6*(1+Oou6)*(1-Oou6)*w65+e7*(1+Oou7)*(1-Oou7)*w75)*(1+Oou5)*(1-Oou5)*Oou0;

deltaw51 = 0.25*eta*(e6*(1+Oou6)*(1-Oou6)*w65+e7*(1+Oou7)*(1-Oou7)*w75)*(1+Oou5)*(1-Oou5)*Oou1;

deltaw52 = 0.25*eta*(e6*(1+Oou6)*(1-Oou6)*w65+e7*(1+Oou7)*(1-Oou7)*w75)*(1+Oou5)*(1-Oou5)*Oou2;

w30 = w30 + deltaw30;

w31 = w31 + deltaw31;

w32 = w32 + deltaw32;

w40 = w40 + deltaw40;

w41 = w41 + deltaw41;

w42 = w42 + deltaw42;

w50 = w50 + deltaw50;

w51 = w51 + deltaw51;

w52 = w52 + deltaw52;

end;

w =[w63 w64 w65;w73 w74 w75;]

v = [w30 w40 w50;w31 w41 w51;w32 w42 w52;]

Oou6

Oou7

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值