gusucode.com > 《MATLAB神经网络超级学习手册》随书光盘源码程序 > code/6/N6_11.m

    clear all
clc
%%%%%%%%%定义输入向量和目标向量%%%%%%%%%%%%%
time=0.1:0.1:20;          %时间变量
y=(rand(1,200)-0.6)*5;      %定义随机输入信号
P=con2seq(y);             
delays=[1 2];             %神经元输入延迟量
T=P;                      %神经元的目标向量
%%%%%%%%%创建线性神经网络%%%%%%%%%%%%%%%%%%%
net=newlin(minmax(y),1,delays,0.0005);
%%%%%%%%%线性神经网络的自适应训练%%%%%%%%%%%%
net.adaptParam.passes=70;
[net,a,output]=adapt(net,P,T)
%%%%%%%%%绘制波形%%%%%%%%%%%%%%%%%%%%%%%%%%%
hold on
subplot(3,1,1)
plot(time,y)                %随机输入信号波形
xlabel('T','position',[20,-2]);
ylabel('随机输入信号s(t)')
axis([0 20 -3 3])
subplot(3,1,2);
output=seq2con(output);  
plot(time,output{1});       %预测输出信号波形        
xlabel('T','position',[20,-2]);
ylabel('预测输出信号y(t)')
axis([0 20 -3 3])
subplot(3,1,3);
e=output{1}-y;
plot(time,e);                %误差曲线
xlabel('time','position',[20,-2]);
ylabel('误差曲线e(t)')
axis([0 20 -0.2 0.2])
hold off