BP神经网络的几个简单问题

关于BP神经网络编程的一点小问题:本人初学要求用JAVA作所以有些问题请教1.例如matlab一个这样的网络net=newff([i1,x1;i2,x2;i3,x3],[... 关于BP神经网络编程的一点小问题:
本人初学 要求用JAVA作 所以有些问题请教
1.例如matlab 一个这样的网络
net=newff([i1,x1;i2,x2;i3,x3],[3,3,1],{'tansig' 'tansig' 'tansig'} ,'trainlm');
参数我都知道 这应该是一个三层网络 分别为 3 3 1个神经元
那么传递函数的问题 输入层的输入和输出之间也是用tansig函数传递么?
我的意思是 一般三层网络 不都是输入层的输入=输出 然后隐层的输入=输入层输出的加权和(加阈值)
再之后用传递函数得出隐层输出=f(隐层的输入) (f=tansig)
那么上述网络是否是输入层的输出=f(输入层的输入)呢? (f=tansig)
2.由于课题要求用java编程,那么我想知道训练函数trainlm怎么用呢?看了一些书,都是matlab的,直接用了,所以不清楚啊
3.关于阈值和权值的修正部分,请问是不是必须要用到传递函数的导数函数啊?有什么简便算法呢?
4.如果要求对一个普通的bp网络,将其改造成一个能够边校准模型、边使用模型的程序。也就是说:每个3至5组数据就使用一组数据来和以前的数据一起在训练一次这个模型,然后用中间的数据来仿真,那么这是什么意思,需要在哪里修改呢?
顺便问一下 常用的
logsig() tansig() purelin() trainlm()
的函数体 和导数函数体分别是什么啊
展开
 我来答
Paula_neo
2009-05-24
知道答主
回答量:4
采纳率:0%
帮助的人:0
展开全部
1.一般你可以自己尝试下,我最近也在尝试,隐层用tansig是比较理想的,输出层要自己尝试的,如用purlin是输出任意值,logsig很多书也是推崇的,将输出值限定在【0,1】中,我一般都用tansig.
2.trainlm是一种训练方法,使用的话收敛很快很快,相比的话traingd收敛很慢很慢。优势traingd要训练1000epochs,而trainlm只要训练5epochs就够了
欧阳欣雪
2009-05-25
知道答主
回答量:31
采纳率:0%
帮助的人:0
展开全部
神经
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式