神经网络作业1-BP神经网络

神经网络作业代码 BP神经网络

使用两种语言完成该作业 请自行选择参考

Wolfram Mathematica实现:

Func[x_] = E^-x Sin[x];
xtrain = Subdivide[-5, 5, 1000];
ytrain = Func[xtrain];
p = Predict[xtrain -> ytrain];
xtest = Subdivide[-5, 5, 200];
ytest = Func[xtest];
Plot[{Func[x], p[x]}, {x, -5, 5}, PlotLabel -> "模型输出和测试数据集", 
 PlotLegends -> {"测试数据集", "模型输出"}]

运行结果:

MATLAB实现:

x=-5:0.01:5;
y=@(x) exp(-x).*sin(x);
net=newff(minmax(x),[10,1],{'tansig','purelin'},'traingdx');
x_test=-5:0.05:5;
[net,tr]=train(net,x,y(x));
y_output=@(x) sim(net,x);
subplot(121);
plot(x_test,y(x_test),'-',x_test,y_output(x_test),'-+');
legend('测试集','输出');
subplot(122);
plot(tr.perf);
legend('误差');

运行结果:

 

posted @ 2020-03-17 13:26  null147  阅读(407)  评论(0)    收藏  举报