AdaGrad does: divides learning rate by sqrt of sum of squared gradients

How do we avoid overshooting in learning?

Image: National Oceanic and Atmospheric Administration, Public domain, via Wikimedia Commons

AdaGrad does: divides learning rate by sqrt of sum of squared gradients

How do we avoid overshooting in learning?

Imagine you're learning to ride a bike. If you push too hard, you might fall over. You need to find the right balance in your movements.

Think of adjusting your speed as you ride. You don't want to go too fast and lose control, but you also don't want to go too slow to get nowhere. AdaGrad helps by adjusting your speed based on how much you're pushing and falling over.

Example

If you push too hard (large gradients) and fall (large loss), AdaGrad reduces your speed (learning rate) more for those big pushes.

Remember this

AdaGrad adjusts your learning speed based on past mistakes, helping you find the right balance without falling over.

Related concepts

Swipe through 100 ML concepts daily

Open Pocket Polymath