📄 my1.m
字号:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 求逼近问题 %
% author : shanjiao (lin_HuiQiang) %
% day : 2004/11/11 %
% time : 10:30 %
% what : 作业1 %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%初始化训练矩阵u,u的范围是[-0.5 0.5],步长0.05
u=[-0.5:0.05:0.5]
x=[0:1:20]
%计算d,以便得到输出,并用这个输出,作为教导信号
j=1;
for i=-0.5:0.05:0.5
d(j)=exp(-1.9*(i+0.5))*sin(10*i);
j=j+1;
end
%建立网络,[1,10,1]
net=newff([-0.5 0.5],[10,1],{'tansig' 'purelin'});
%训练前先进行一次仿真
a1=sim(net,u);
%设置训练参数:训练次数5000,目标:误差限0.01,训练方法是bp普通算法
net.trainParam.epochs=5000;
net.trainParam.goal=0.0001;
net=train(net,u,d);
%训练完成后进行仿真
a2=sim(net,u);
%将结果绘图比较:原图像,训练前的网络仿真图,训练后的网络仿真图
axis([-0.5 0.5 0 20])
figure
plot(x,u,'o');
figure
plot(x,d,'ro');
figure
plot(x,a1,'b-');
figure
plot(x,a2,'*');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -