声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2046|回复: 11

[综合讨论] 【请教】BP神经网络应用于故障诊断方面的问题

[复制链接]
发表于 2006-7-6 17:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
目标是将神经网络应用于变压器故障诊断中,对比现有的神经网络并做些改动,看哪种神经网络最终诊断的准确率最高,效率最高。
因所学有限,有些地方实在看不懂,现诚心请教各位高手,希望能给些指点,以期能对课题研究有所帮助。
我举一个用MATLAB调用BP神经网络的例子加以说明:

p=[.......................]';
t=[1 0 0;1 0 0;1 0 0;0 1 0;0 1 0;0 1 0;0 0 1;0 0 1;0 0 1]';
threshold=[0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1];  
net=newff(threshold,[31,3],{'tansig','logsig'},'trainlm');
net.trainparam.epochs=1000;
net.trainparam.goal=0.01;
lp.lr=0.1
net=train(net,p,t);
p_test=[...............]';
y=sim(net,p_test)

请问:
1.这样用MATLAB调用生成BP神经网络的方法是不是太笼统化了?就一个newff就可以了?
2.如果我想查看神经网络工具箱里面的生成BP神经网络的代码该如何查看?
3.书上常说的改进的BP算法(增加动量因子)是如何实现的,能提供一些这方面的资料吗?最好有例子。我实在是找不到。。。

先问这么多,请各位不吝赐教,谢谢!
QQ:17695665
欢迎交流,一起进步:D:D:D
回复
分享到:

使用道具 举报

发表于 2006-7-6 21:47 | 显示全部楼层
1用 工具箱写起来当然比较容易些了,也可以自己写算法
2 type newff
  那些函数估计很难读懂的
3把trainlm换成 traingdm就可以了,用工具箱很方便
不过工具箱好象掩盖了很多技术的东西
我也做故障诊断的,不过还没开始做
有机会可以交流交流
 楼主| 发表于 2006-7-7 09:54 | 显示全部楼层
首先谢谢楼上的解答,按你说的第2点,代码已经可以列出,至于读的懂读不懂就看我个人了:)
令我疑惑的是,如果都用工具箱,等于都是模仿别人的例子,没什么自己的东西
请问楼上的怎么看?
如果自己写算法,楼上的朋友又有什么建议呢?
发表于 2006-7-7 11:41 | 显示全部楼层
matlab 之所以好用 其实很大程度在与它有丰富的工具箱
我们手头如果已经有了个很好的适用的工具
为何还费心去再修造一个未必更好的工具呢?

增加动量,或利用自适应速率学习算法 可以避免传统BP网络的缺点
(陷入局部极小,速率慢等)
 楼主| 发表于 2006-7-8 10:04 | 显示全部楼层
我只所以想改,是因为我必须提出一些自己的东西,能对现有的方法做某些程度方面地改进
好的,谢谢楼上的,我去找找看
发表于 2006-7-8 16:23 | 显示全部楼层
原帖由 克拉拉 于 2006-7-7 09:54 发表
首先谢谢楼上的解答,按你说的第2点,代码已经可以列出,至于读的懂读不懂就看我个人了:)
令我疑惑的是,如果都用工具箱,等于都是模仿别人的例子,没什么自己的东西
请问楼上的怎么看?
如果自己写算法,楼 ...

我很不理解你疑惑的是什么?你把工具箱理解成你家的扳手工具箱了吧?
人人都调用,等于模仿?
发表于 2006-7-8 20:08 | 显示全部楼层
如果你想提出自己的改进算法,那么你可以自己从头编起,其实上也不难,估计编程高手的话,2天就可搞定
发表于 2006-7-9 18:50 | 显示全部楼层
就是用工具箱,还有很多地方值得研究的
初始值如果取才更有效,而不是随机取,那样很容易限入局部极小,结构参数如何设计,这些都还没有好的理论出来,另外,用并行的神经网络代替单个神经网络是不是在故障诊断的效果上要好,还可以考虑神经网络集成
 楼主| 发表于 2006-7-11 21:03 | 显示全部楼层
谢谢楼上的各位兄弟给我的建议,看来我的理解有偏颇
我会认真思考大家给我的提示,再次感谢你们
 楼主| 发表于 2006-7-12 16:57 | 显示全部楼层
初始值如果取才更有效???而不是随机取,那样很容易限入局部极小
结构参数如何设计???
用并行的神经网络代替单个神经网络???
JIMIN朋友能说的再具体点吗???
盼赐教
发表于 2006-7-13 13:54 | 显示全部楼层
初始值 一般都是随机赋值,但如果你要自己编的话(可以在原代码的基础上做改进),就可以将初值自己进行设置,可以用训练过的最终权值作为下次训练的初值,结构参数应该是指隐层神经元数吧,可以通过经验试凑确定,并行的神经网络??指级联神经网络还是组合神经网络?不清楚。
 楼主| 发表于 2006-7-13 16:04 | 显示全部楼层
1.初始值 一般都是随机赋值,但如果你要自己编的话(可以在原代码的基础上做改进)???
2.还可以用训练过的最终权值作为下次训练的初值
楼上的朋友能针对这两点举下例子说明吗???
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-25 09:33 , Processed in 0.060639 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表