了解权值和偏差的变化程序

网友投稿 249 2022-11-04


了解权值和偏差的变化程序

了解权值和偏差的变化程序

%了解权值和偏差的变化程序%分类P=[-6 -6.1 -4.1 -4 4 4.1 6 6.1];T=[0.0 0.0 0.97 0.99 0.01 0.03 1 1];%wv用于存储权值wv=[];%bv用于存储偏差值bv=[];err=[];%赋权值和偏差的初值W1=-0.0511; b1=-2.4462;wv1=W1;bv1=b1;lr=0.1max_epoch=2000;for Myi=1:max_epoch A1 = logsig(W1*P+b1*ones(1,8)); %计算输出 E = T-A1; %求误差 D1 = A1.*(1-A1).*E; %矩阵对应元素相乘 dW1 = D1*P'*lr; %求权值增量 db1 = D1*ones(8,1)*lr; %求偏差增量 newWV = W1(1,1) + dW1(1,1); %新的权值 W1(1,1) = newWV; wv =[wv newWV]; newBV = b1(1) + db1(1); %新的偏差 b1(1) = newBV; bv =[bv newBV]; SSE = sumsqr(E); %求误差平方和 err=[err SSE]; if (SSE<0.2) break; endend%W值的行向量、B值的行向量Wrange=-1:0.1:1;Brange=-3:0.2:2; ES=errsurf(P,T,Wrange,Brange,'logsig'); %求单神经元的误差平面(只用在单神经元中)[C,h] =contour(Wrange,Brange,ES,6); %作等高线图,ES为高%返回等高线矩阵C,列向量h是线或对象的句柄,%一条线一个句柄,这些被用作CLABEL的输入,%每个对象包含每个等高线的高度clabel(C,h) %标上高度值colormap cool %背景的颜色coolhold on%plot(w1,b1,'r*')plot(wv1,bv1,'r+')% plot([wv1 wv],[bv1 bv],'g+') %作权值和偏差变化曲线plot(wv,bv,'g+');hold offfigure(2)plot(err)


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:matlab中figure有多个图时,设定总标题的方法
下一篇:Intellij IDEA 2020.3 配置教程详解
相关文章

 发表评论

暂时没有评论,来抢沙发吧~