SGD:

最速优化 - 图1
随机梯度下降是应对大批量数据的最优化方法之一,但是SGD存在一个较大的问题,当函数形状不均匀,呈现延伸状,得到的路径会非常低效,根本原因是梯度的方向没有指向最小值的方向。

Momentum:

momentum是动量的意思,和物理的动量意思一致,其权重更新原理是最速优化 - 图2
最速优化 - 图3 动量方法在梯度下降的基础上加入的动量这一变量,能够减轻数据不均匀带来的“之”字变动。

AdaGrad:

有一种学习率衰减的方法能够随着学习的进行,使得学习率减小,
最速优化 - 图4
变动大的参数中的元素的学习率会变小,可以按照参数的元素进行学习率衰减,让下降快的参数学习率变小。

*通过使用RMSProp 方法逐渐遗忘过去的梯度,在做运算时提高新的元素的影响

Adam :

这一算法结合了Momentum 和AdaGrad的长处,即同时按照物理规则的方式梯度下降,又为参数适当地调整更新步伐。

权重初试值:
Xavier Glorot 等人的论文中推荐了经典的权重初试值,为了使各层的激活值呈现具有相同广度的分布,如果前一层的节点数为n,则初始值使用了标准差为最速优化 - 图5
深层数据分布的可以通过tanh 函数代替sigimod函数,可以呈现较好的钟型分布。
ReLu作为激活函数时,一般推荐使用标准差为最速优化 - 图6的高斯分布因为ReLU的负值区域为0,为了更多的数据广度,需要2倍的系数。

Batch Normalization:

批量标准化:
这个标准化和Z-score 的算法不一样,是对layer之间的数据进行整形,使得最后数据能有更好的数据广度和分布。
BN和Adam都是用的比较火热的算法。