BP神经网络设计步骤(zz)

BP神经网络设计步骤

B P网络的设计主要包括输入层,隐层,输出层及各层之间的传输函数几个方面。
1 网络层数
大多数通用的神经网络都预先预定了网络的层数,而BP网络可以包含不同的隐层。对多层BP神经网络,隐层层数至少为1层或1层以上,每个隐层的神经元个数至少为1个或1个以上,否则与多层网络的命题矛盾而不成立。
2 输入层的节点数
网络的输入个数应等于应用问题的输入数,MATLAB的BP网络的建立是通过函数newff或newcf实现的.
3 网络数据的预处理
预处理方法有归一化处理、标准化处理和主成分分析。常采用的是归一化处理,即将输入、输出数据映射到[-1,1]范围内,训练结束后再反映射到原数据范围。
4 输出层的节点数
输出层节点数取决于两个方面,输出数据类型和表示该类型所需要的数据大小。
5 隐层的节点数
1)根据经验,可以参考以下公式进行设计:
n=sqrp(ni+n0)+a或者n=sqrt(nl)
式中:n为隐层节点数;ni为输入节点数;n0为输出节点数;a为1~10之间的常数。
2)改变n,用同一样本集训练,从中确定网络误差最小时对应的隐层节点数。
6 传输函数
BP网络中传输函数常采用S(sigmoid)型函数.在某些特定情况下,还可能采用纯线性(Pureline)
函数.
7 训练方法及其参数选择
net.trainParam.show=.. ;    %显示训练结果的间隔步数
net.trainParam.epochs= .. ; %最大训练步数
net.trainParam.goal=.. ; %训练目标误差
net.trainParam.mu=.. ;     %学习系数的初始值,Marquardt调整参数
net.trainParam.mu_dec= ..; %学习系数的下降因子
net.trainParam.mu_inc=.. ;     %学习系数的上升因子
net.trainParam.mu_max= ..;%学习系数的最大值
net.trainParam.min_grad=.. ; %训练中最小允许梯度值
8 初始权值的设计
通常使用如下两种方法:
(1)取足够小的初始权值
(2)使初始值为+1和-1的权值数相等。
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值