学习率与动量
训练神经网络就是下山''找最低点。但很多损失面像一条又窄又长的山谷:普通梯度下降会在两侧山壁之间来回横跳、磨磨蹭蹭才到底。给它加上动量’‘(像下坡的小球积累惯性),横跳被抵消、顺着谷底加速——这就是 Momentum、Adam 这些优化器的核心思想。看两个小球赛跑。
红球是普通梯度下降,绿球带动量。两球从同一点出发,金点是谷底(最低点)。调节学习率和动量,看谁先到、谁会震荡甚至冲出去。
普通梯度下降
带动量
谷底
第 0 步
学习率太大
步子迈太大,在陡的方向上越跳越远,直接冲出山谷——训练``发散''。
学习率太小
稳是稳,但每步挪一点点,要很多步才到底,训练很慢。
加上动量
惯性抵消了来回横跳,又在平缓方向上越滚越快,更稳更快地到达谷底。