AIDive
Back to glossary

What is AdaGrad

GlossaryMachine Learning

An adaptive optimization algorithm that adjusts the learning step separately for each model parameter.

Definition

AdaGrad reduces the step more often for parameters that have already been updated a lot, and preserves the influence of rare features. This is useful for sparse data, such as text where many words are rare. The algorithm shows how training history can influence future model updates.

Example

In a text classifier, a rare but important word can receive sufficient weight, and frequently occurring function words will not be overly dominant.

Why it matters

Understanding AdaGrad helps you understand why different data types require different optimizers and why the learning rate cannot always be set to a single constant.

How it works

The algorithm accumulates the squares of past gradients for each parameter and divides the new update by the amount of this accumulated history.

Where it is used

  • word processing
  • training on sparse data
  • experiments with optimizers

Limitations

The main disadvantage is that the training step can become too small over time, and the model almost stops learning.