MATLAB BP神经网络训练
P=[392,584,776,2713,3236,2783,2163;718,1043,1368,4318,5054,4483,3769];T=[1.4404,1.472...
P=[392,584,776,2713,3236,2783,2163;718,1043,1368,4318,5054,4483,3769];
T=[1.4404,1.4722,1.4753,1.497,1.7663,1.6807,1.7426];
net=newff(minmax(P),[3,1],{'tansig','purelin'},'traingdm');
net.trainParam.show = 50;
net.trainParam.lr = 0.05;
net.trainParam.mc = 0.9;
net.trainParam.epochs = 1000;
net.trainParam.goal = 1e-3;
[net,tr]=train(net,P,T);
A = sim(net,P)
得到A的结果全是一样的,是程序问题,还是数据问题? 展开
T=[1.4404,1.4722,1.4753,1.497,1.7663,1.6807,1.7426];
net=newff(minmax(P),[3,1],{'tansig','purelin'},'traingdm');
net.trainParam.show = 50;
net.trainParam.lr = 0.05;
net.trainParam.mc = 0.9;
net.trainParam.epochs = 1000;
net.trainParam.goal = 1e-3;
[net,tr]=train(net,P,T);
A = sim(net,P)
得到A的结果全是一样的,是程序问题,还是数据问题? 展开
北京千智道科技
2023-07-19 广告
2023-07-19 广告
一、千智道介绍千智道成立于2013年,专注于无人驾驶、人工餐能领域的科研、实训、科普展示综合解决方案,基于沉浸式、沙盘式、室外道路等多种实验场景之上构建智慧路网系统,实现智能网联车无人驾驶、V2X运行实验、配套网联信号机、RSU路测设备、智...
点击进入详情页
本回答由北京千智道科技提供
展开全部
这是啥玩意?什么编程语言?
www.xxjsh.com
www.xxjsh.com
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看了下程序没问题啊,单隐层的BP网络,应该是数据问题吧。。。
追问
好像数据归一化就可以,请问
P=[392,584,776,2713,3236,2783,2163;
718,1043,1368,4318,5054,4483,3769];
每行归一化,代码怎么写呢,谢谢~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.初始权值不一样,如果一样,每次训练结果是相同的
2.是
3.在train之前修改权值,iw,lw,b,使之相同
4.取多次实验的均值
一点浅见,仅供参考
训练误差是否降到一定范围内,比如1e-3,
将训练样本回代结果如何,
训练样本进行了预处理,比如归一化,而测试样本未进行同样的处理
这样的归一化似有问题,我也认为“测试数据的归一化也用训练数据归一化时得出的min和max值”,
请参考这个帖子
http://www.ilovematlab.cn/thread-27021-1-1.html
测试数据带入训练好的神经网络误差当然不会达到1e-5,这是预测啊。
但将训练数据带入误差必然是1e-5,算法终止就是因为达到这个误差才终止,这个误差是由训练数据的输入、输出以及神经网络的权值、激活函数共同决定的,神经网络训练完后,权值、激活函数定了,同样的数据再代入神经网络,误差会不等于1e-5?
第二个问题:不可能每个值都达到1e-5,1e-5是mse(mean
square
error),它们的平方和除以总数再开方,mse(e)必为1e-5
另外,lm算法虽然训练最快,但是预测精度一般不好,不如gdm,gdx
2.是
3.在train之前修改权值,iw,lw,b,使之相同
4.取多次实验的均值
一点浅见,仅供参考
训练误差是否降到一定范围内,比如1e-3,
将训练样本回代结果如何,
训练样本进行了预处理,比如归一化,而测试样本未进行同样的处理
这样的归一化似有问题,我也认为“测试数据的归一化也用训练数据归一化时得出的min和max值”,
请参考这个帖子
http://www.ilovematlab.cn/thread-27021-1-1.html
测试数据带入训练好的神经网络误差当然不会达到1e-5,这是预测啊。
但将训练数据带入误差必然是1e-5,算法终止就是因为达到这个误差才终止,这个误差是由训练数据的输入、输出以及神经网络的权值、激活函数共同决定的,神经网络训练完后,权值、激活函数定了,同样的数据再代入神经网络,误差会不等于1e-5?
第二个问题:不可能每个值都达到1e-5,1e-5是mse(mean
square
error),它们的平方和除以总数再开方,mse(e)必为1e-5
另外,lm算法虽然训练最快,但是预测精度一般不好,不如gdm,gdx
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询