Md. Asif Uddin
    I.7.X01

    More momentum is not monotonically better

    numeric▲▲△

    On the quadratic of I.7.B01 — H=diag(20,0.2)\mat{H} = \mathrm{diag}(20, 0.2), κ=100\kappa = 100 — compare plain descent with momentum at β∈{0.6694,0.9,0.99}\beta \in \{0.6694, 0.9, 0.99\}. Predict the ordering before looking, then explain the one that surprises you.

    Hint

    By I.7.X03 the buffer settles at g/(1−β)g/(1-\beta) for a steady gradient. What does that do to the effective step size, and what does an effective step size that is too large do?

    Solution

    The measurements. Steps to reach an error norm of 10−310^{-3}:

    methodη\etaβ\betasteps
    plain descent0.0990100.09901000363363
    momentum, tuned0.1652890.1652890.66940.669458\mathbf{58}
    momentum, default0.1652890.1652890.90000.9000132132
    momentum, default η\eta0.0990100.0990100.90000.9000127127
    momentum, β=0.99\beta = 0.990.1652890.1652890.99000.99001 214\mathbf{1\,214}

    The tuned case behaves as advertised. 5858 steps against 363363, a factor of 6.36.3, against the asymptotic prediction κ=10\sqrt{\kappa} = 10. The shortfall is the transient: momentum needs several steps before its average carries information, and 58 steps is not many multiples of that.

    The surprise is the last row. At β=0.99\beta = 0.99 momentum takes 1 2141\,214 steps — 3.3 times worse than using no momentum at all. More memory made it worse, decisively.

    Why. By I.7.X03 a steady gradient drives the buffer to g/(1−β)g/(1-\beta), so the effective step is η/(1−β)\eta/(1-\beta). At β=0.99\beta = 0.99 that is a hundredfold amplification: an η\eta of 0.1650.165 behaves like 16.516.5, far past the stability threshold of 0.10.1. The iteration does not diverge only because the oscillation it induces is itself damped by the averaging — so instead of blowing up, it lurches around the valley, and the lurching is slower than walking.

    The optimum is not near the default. For κ=100\kappa = 100 the tuned β\beta is 0.66940.6694, well below the 0.90.9 everyone writes. The default is optimal for κ≈361\kappa \approx 361, and the further a problem is from that, the worse it serves — in both directions.

    What to take from this. β\beta and η\eta are not independent knobs, and raising β\beta is a learning-rate increase wearing a different name. A configuration search that varies them separately is searching a space where the interesting direction is diagonal. It also explains a common experience: adding momentum to a run tuned without it makes things worse, and the fix is to lower η\eta at the same time rather than to conclude that momentum does not help.

    Draws on