神经网络动量因子

反向传播算法中,学习率 $\eta$ 越小,每次迭代下降的步长越小,轨迹空间越平滑,学习速度越慢,提 $\eta$ 会加快学习速度,但网络权值的变化不稳定。为此,D.E. Rumlhart提出一种,既能加快学习速度,又能保持稳定的改进方法。这种方法是在修改规则中增加一个动量项:

$$
\Delta w(n)=-\eta\frac{\partial E(w)}{\partial w(n)} + a\Delta w(n - 1),\qquad n=1,2,3,…
$$
其中第一项为常规BP算法修正量,第二项为动量项,$a$ 为动量项系数,一般取 $(0,1)$。

直观上理解就是当前梯度方向与前一步梯度方向一致则增加权值更新,如果不一致则减小更新。类似于惯性。

参考:https://blog.csdn.net/bvl10101111/article/details/54973284


  转载请注明: 石锅拌饭 神经网络动量因子

 上一篇
负数求余,Python和C++的不同 负数求余,Python和C++的不同
先上例子In [1]: -3 % 10 Out[1]: 7 root [0] -3 % 10 (int) -3 分析原因:在数学公式中,两种语言的求余数的算法都是一样的: 余数 = 被除数 - 除数 * 商 唯一的区别是,整除(即
2018-12-04
下一篇 
DataFrame小技巧 DataFrame小技巧
1. 筛选数据DataFrame.query(expr, inplace=False, **kwargs):通过字符串表达式选取列。参考问题 df.query('B > 50 and C != 900') # 等效于 df[(df[
2018-12-04
  目录