我的这个神经网络的预测怎么不行呢?
我这个神经网络原来预测一个正弦函数,倒是可以。但是我预测y=sinx/x这个函数时就不行了,大家帮忙看看怎么回事呢?clc
clear
close all
P1=0:0.1*pi:20*pi
T1=sin(P1)./P1
% 设置网络参数
net = newff(minmax(P1),,{'tansig' 'purelin'},'trainlm');
net.trainParam.show = 20; % 训练显示间隔
net.trainParam.lr = 0.3; % 学习步长 - traingd,traingdm
net.trainParam.mc = 0.95; % 动量项系数 - traingdm,traingdx
net.trainParam.mem_reduc = 1; % 分块计算Hessian矩阵(仅对Levenberg-Marquardt算法有效)
net.trainParam.epochs = 1000; % 最大训练次数
net.trainParam.goal = 1e-8; % 最小均方误差
net.trainParam.min_grad = 1e-20; % 最小梯度
net.trainParam.time = inf; % 最大训练时间
%---------------------------------------------------
% 训练
net = train(net,P1,T1);
% 测试
T2= sim(net,P1)
plot(P1,T1,'r',P1,T2,'b') 来顶一下楼主朋友的,哈哈!,很好不错顶一个 效果很好啊
上边的兄弟说的很对
页:
[1]