常用的优化器:
假定:W指的是权值、偏执这些参数
(1)SGD
(2)Momentum
当前权值的改变Vt会受到上一次权值改变Vt-1的影响,当Vt-1越来越大时,Vt(存了上一次梯度)也越来越大,梯度W下降地越来越快。类似于小球向下滚动时带上了惯性,加快小球的向下滚动的速度。
(3)NAG
把第一式子中Vt代入代入第二个式子,看出W=W-...-...,跟W-...很像,所以可以用那个表是小球下一个位置大概(大概很重要)在哪里,从而提前计算下一个位置的梯度,用到当前位置。
(4)Adagrad
第一次抽到一张狗的图片,会保留计算的梯度,第二次,第三次,第四次继续抽到狗的图片,那么W更新的那个分母会越来越小。如果抽到大象,分母会改变成大象这一类的梯度之和。
(5)RMSprop
跟Adagrad很像,但是不会出现学习率越来越低的问题,因为RMSprop只用到了前t-1次梯度,还是取平均,不会一直减小接近于0或者说减小的速度远远低于Adagrad,而Adagrad直接求和。同时可以自动调节学习率。
(6)Adadelta
RMS[得尔塔W]t-1表示对 前t次 得尔塔W求均方根,RMS[g]t表示对前t次梯度求均方根,我也不知道这东西有什么提出的意义...
(7)Adam
注意:通常SGD收敛速度最慢,而且容易陷入鞍点问题(局部极小值)跳不出来,但是准确率高啊。网络模型不能仅仅考虑收敛速度。