Matlab 神经网络, newff, train trainrp叫弹性梯度下降法 , 的原理解释

多层神经网络的隐层大多采用sigmoid型传递函数,这类函数又称为“挤压”函数。因为它们将没有边界限制的输入信号压缩到有限的输出范围内,当输入量很大或很小时,输出函数的斜率接近于0。那么当应用梯度下降法训练多层网络时,其梯度数量级会很小,从而使得权值和阈值的调整范围很小,也就是说即使没有达到最优值,也会形成训练停止的结果。
弹性梯度下降法就能够消除这种影响。应用弹性梯度下降法训练BP网络时,权值修正取决于表现函数导数的正负号,而导数的数量级对权值修正并没有影响。其原理是:权值变化的大小由不同的修正值决定。当前两次训练时导数的正负号没有改变,权值和阈值的修正值随着参数delt_inc增加;当前两次训练时导数的正负号有改变,权值和阈值的修正值随着参数delt_dec减小;如果导数为0,则修正值不变。这样调整的结果是,权值的变化呈振荡趋势,不过权值变化量逐步减小了。如果权值变化连续几次都在同一个方向,则增加权值变化的量级。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值