Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 人工智能 > 深度神经网络/深度学习
深度神经网络/深度学习 A discussion board for Deep Neural Network|Deep Learning.
回复
 
主题工具 显示模式
旧 2009-05-20, 22:00   #1
流苏苏
初级会员
 
注册日期: 2009-05-08
年龄: 37
帖子: 2
声望力: 0
流苏苏 正向着好的方向发展
尴尬 急救 :毕业设计神经网络问题

我的毕业设计老师让用神经网络,但是老师自己也不知道。我也是刚学。写出来的程序很不稳定。我也不知道要怎么办。
问题有:1,对于每一组数据结果总是差很多,有的时候说Maximum MU reached,我不知道MU 是什么,有的时候说梯度达到最小,有的时候说矩阵达到奇异化(Matrix is close to singular or badly scaled.
Results may be inaccurate. RCOND = 4.122506e-017.
> In trainlm at 318
In network.train at 278)。可是我不知道要怎么改程序,不知道是什么问题。
2,我用三组数据进行训练,可是误差很大,有的组的数据MSE误差达到0.001,有的组却又12.334,差别这么大,崩溃了。
现在介绍一哈我的系统,输入为两个节点(温度和黏度),输出一个节点(液体含油量这个是固定的,别的都是我自己写的。
另外参数要怎么选择我也不是很明白,还有就是输入数据和输出数据我也不是很明白要怎么选择。因为我看的书也没有介绍要怎么选择。
源代码如下:P1=[32 32 32 26 26 8 8 16 16 22 12 20 20 30 30 30 10 10 14 14 18 28 24];
P2=[80 88 94 84 94 82 86 84 94 86 90 88 94 84 90 94 88 96 82 90 90 90 84];
T=[34.9 30.8 25.4 36.4 29.7 49.1 48.0 43.0 39.1 38.0 43.8 38.5 35.4 33.6 29.4 26.7 46.1 44.1 45.0 42.1 39.0 30.7 37.8];
PTEST1=[18 18 14 14 14 8 8 32 32 26 22 10 10 30 30 28 24 24 12 12 12 16 20];
PTEST2=[88 92 80 86 92 92 84 90 84 86 90 90 84 96 80 86 82 90 80 86 96 90 90];
TTEST=[40.0 38.0 45.5 43.6 41.5 46.6 48.6 28.0 32.2 35.0 35.4 45.4 47.0 25.9 36.0 33.9 38.7 34.0 46.8 45.1 42.1 40.6 37.4];
P=[P1;P2];
PTEST=[PTEST1;PTEST2];

plot3(P1,P2,T);
title('目标矢量与输入关系');
xlabel('黏度');
ylabel('温度');
zlabel('含油量');
net=newff([8 32;80 96],[7,1],{'tansig','purelin'},'trainlm')
[R,Q]=size(P);
[S2,Q]=size(T);
S1=5;
[w1,b1]=rands(S1,R);
[w2,b2]=rands(S2,S1);
A2=purelin(w2*tansig(w1*P,b1),b2);
figure(2);
plot3(P1,P2,A2);
title('初始网络输出图');
xlabel('黏度');
ylabel('温度');
zlabel('含油量');
net.trainParam.epochs = 1000;
net.trainParam.show = 10;
net.trainParam.lr = 0.01;
net.trainParam.goal = 0.001;
[net,tr,A,E,Pf,Af] = train(net,P,T,[],[]);
A=sim(net,P);
figure(3);
plot3(P1,P2,A);
title('训练后网络输出图');
xlabel('黏度');
ylabel('温度');
zlabel('含油量');
E=T-A
MSE=mse(E)
A=sim(net,P)



另外一组输入和输出的数据是:
P1=[8 8 8 10 10 24 24 24 26 30 32 18 18 18 26 20 16 14 12 22 22 28 28];
P2=[80 88 96 82 92 80 88 96 90 92 96 80 86 94 82 82 82 96 92 84 96 84 94];
T=[49.5 47.7 45.9 47.5 45.0 39.7 35.3 30.1 32.2 28.0 24.1 43.0 40.8 37.1 37.5 41.1 43.6 40.1 43.1 39.0 31.9 35.0 28.0];
还有就是把训练数据和检测数据调换,误差还是差别很大。崩溃了。马上就要答辩。

怎么样才能把系统弄得稳定一些,误差要在 0.02以下 谢谢
谢谢各位。我在线等。也可以加QQ :506177678
流苏苏 当前离线   回复时引用此帖
旧 2009-05-25, 13:10   #2
karl_wang
版主
 
注册日期: 2008-12-03
年龄: 41
帖子: 43
声望力: 17
karl_wang 正向着好的方向发展
默认 回复: 急救 :毕业设计神经网络问题

你好,你这个系统:输入为两个节点(温度和黏度),输出一个节点;那你就测量这两个节点的数据,再测得在这个两个数据条件下输出数据;多做得到些这样的数据,就可以训练神经网络了。
karl_wang 当前离线   回复时引用此帖
旧 2009-05-26, 15:09   #3
流苏苏
初级会员
 
注册日期: 2009-05-08
年龄: 37
帖子: 2
声望力: 0
流苏苏 正向着好的方向发展
默认 回复: 急救 :毕业设计神经网络问题

引用:
作者: karl_wang 查看帖子
你好,你这个系统:输入为两个节点(温度和黏度),输出一个节点;那你就测量这两个节点的数据,再测得在这个两个数据条件下输出数据;多做得到些这样的数据,就可以训练神经网络了。

版主,我想问一哈。两个节点到哪经验上需要多少输入数据呀 。谢谢 还有隐层节点理论上多少才是比较好的。谢谢
流苏苏 当前离线   回复时引用此帖
旧 2009-05-26, 15:46   #4
karl_wang
版主
 
注册日期: 2008-12-03
年龄: 41
帖子: 43
声望力: 17
karl_wang 正向着好的方向发展
默认 回复: 急救 :毕业设计神经网络问题

至于输入多少比较合适这个也没有看到相关的资料有;不过这个隐层的神经元个数一般至少是输入神经元个数的:2n+1个。
karl_wang 当前离线   回复时引用此帖
旧 2013-05-28, 08:51   #5
小手冰凉
初级会员
 
注册日期: 2013-05-28
年龄: 35
帖子: 7
声望力: 0
小手冰凉 正向着好的方向发展
默认 回复: 急救 :毕业设计神经网络问题

请问这个程序为什么不出图
小手冰凉 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 03:00


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.