Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
|
![]() |
#1 |
初级会员
注册日期: 2008-08-04
年龄: 39
帖子: 3
声望力: 0 ![]() |
![]()
【求助】有关MATLAB人工神经网络
BP模型, 本人的程序如下 a=[1 1 6 20; 1 4.5 6 20;1 10.5 6 20;1 15 6 20;1 3 3.5 20;1 3 4.5 20;1 3 5 20;1 3 6.5 20;1 3 7 20;1 3 8 20; 1 3 9 20;1 3 10 20;1 3 6 0;1 3 6 5;1 3 6 10;1 3 6 20;1 3 6 30;1 3 6 50;1 3 6 60;1 3 6 80] b=[4; 19;26;53;72;30;13;12; 5;3;4;9; 29;42;40;19; 6; 4;3;1] c=[1 7.5 6 20;1 3 6 20; 1 3 6 40; 1 3 6 70] a=a' b=b' c=c' net=newff(minmax(a),[10 1],{'tansig' 'purelin'}, 'trainlm') net.trainParam.show = 50; net.trainParam.lr = 0.001; net.trainParam.epochs = 10000; net.trainParam.goal = 1e-7; net.trainParam.min_grad = 1e-9; [net,tr]=train(net,a,b); figure y=sim(net,c) 在运算过程中总出现, Minimum gradient reached, performance goal was not met.或者是 Maximum MU reached, performance goal was not met. 请问,我改怎么改动我的程序? :lovely: |
![]() |
![]() |
![]() |
#2 |
初级会员
注册日期: 2008-11-13
年龄: 50
帖子: 7
声望力: 0 ![]() |
![]()
输出需要归一化,即把输出结果转化到0-1之间的数。
有人说输入也要归一。 对于输入,我不是很确定。 |
![]() |
![]() |
![]() |
#3 |
初级会员
注册日期: 2008-12-04
年龄: 35
帖子: 6
声望力: 0 ![]() |
![]()
这个程序输出的是0~1之间的数据,但并不是归一化的结果,而是因为隐藏层的转化函数为归一化处理,输出层的转化函数似乎为线性转化!
|
![]() |
![]() |
![]() |
#4 |
初级会员
注册日期: 2008-08-04
年龄: 42
帖子: 5
声望力: 0 ![]() |
![]()
最好还是要把输入样本归一化
|
![]() |
![]() |