当前位置:文档之家› BP神经网络matlab源程序代码

BP神经网络matlab源程序代码

close all
clear
echo on
clc
% NEWFF——生成一个新的前向神经网络
% TRAIN——对 BP 神经网络进行训练
% SIM——对 BP 神经网络进行仿真
% 定义训练样本
%
% P为输入矢量
P=[ ; ; ...
; ; ...
; ; ...
; ; ...
; ; ...
; ; ...
; ; ...
)
];
% T为目标矢量
T=[ ...
];
% Ptest为测试输入矢量
Ptest=[ ; ; ...
];
% Ttest为测试目标矢量

Ttest=[ ];
% 创建一个新的前向神经网络
net=newff(minmax(P'),[12,1],{'logsig','purelin'},'traingdm'); % 设置训练参数
= 50;
= ;
= ;
= 5000;
}
= ;
% 调用TRAINGDM算法训练 BP 网络
[net,tr]=train(net,P',T);
% 对BP网络进行仿真
A=sim(net,P');
figure;
plot((1993:2007),T,'-*',(1993:2007),A,'-o');
title('网络的实际输出和仿真输出结果,*为真实值,o为预测值'); ?
xlabel('年份');
ylabel('客运量');
% 对BP网络进行测试
A1=sim(net,Ptest');
figure;
plot((2008:2010),Ttest','-*',(2008:2010),A1,'-o');
title('测试后网络的实际输出和仿真输出结果,*为真实值,o为预测值'); xlabel('年份');
!
ylabel('客运量');
% 计算仿真误差error
E = T - A;
MSE=mse(E);
figure;
plot(1:length(E),E,'-.');
title('误差变化图')。

相关主题