代码如下:直接运行就是了。
P=P=[-1, -2, 3, 1; -1, 1, 5, -3; -2, 3, 4, 6; 1, 2, 3, 4 ];%初始训练值
% 创建一个新的前向神经网络
net=newff(minmax(P),[8,1],{'tansig','purelin'},'traingdm')
% 当前输入层权值和阈值
inputWeights=net.IW{1,1}
inputbias=net.b{1}
% 当前网络层权值和阈值
layerWeights=net.LW{2,1}
layerbias=net.b{2}
% 设置训练参数
net.trainParam.show = 50;
net.trainParam.lr = 0.05;
net.trainParam.mc = 0.9;
net.trainParam.epochs = 1000;
net.trainParam.goal = 1e-3;
% 调用 TRAINGDM 算法训练 BP 网络
[net,tr]=train(net,P,T);
% 对 BP 网络进行仿真
A = sim(net,P) %最后结果
% 计算仿真误差
E = T - A
MSE=mse(E)