Golden
Adam (support vector machine)

Adam (support vector machine)

A gradient-based machine learning optimization algorithm that computes individual adaptive learning rates for each parameter, combining the advantages of Adagrad and RMSprop.

Adam (name derived from Adaptive Moment Estimation) is a machine learning algorithm for first-order gradient-based optimization that computes adaptive learning rates for each parameter.

Background

Adam combines the advantages of two other gradient-based algorithms that maintain per-parameter learning rates, Adagrad and RMSprop with Momentum.



Adagrad works well for sparse gradients by scaling the learning rate for each parameter according to the history of gradients from previous iterations.



In RMSprop, the learning rate is adapted using the moving average of the squared gradient for each weight, making it useful for mini-batch learning in on-line settings.



There are a few small but important differences between Adam and the algorithms it is based on.

Adam and RMSprop with Momentum

Adam differs from RMSprop with momentum in 2 ways:

  • RMSprop with momentum generates its parameter updates using a momentum on the rescaled gradient, whereas Adam updates parameters with direct estimates using a running average of first and second moment of the gradient.
  • Adam has a bias-correction term and RMSprop does not.

Adam and Adagrad

In Adagrad, the abstract function that scales learning rate for parameters is the sum of all past and current gradients. In Adam, this abstract function is the moving averages of past squared gradients. 

How Adam Works

Theberkeleyview summarized how Adam works in 5 steps:

  1. Compute the gradient and its element-wise square using the current parameters.
  2. Update the exponential moving average of the 1st-order moment and the 2nd-order moment.
  3. Compute an unbiased average of the 1st-order moment and 2nd-order moment.
  4. Compute weight update: 1st-order moment unbiased average divided by the square root of 2nd-order moment unbiased average (and scale by learning rate).
  5. Apply update to the weights.







Timeline

People

Name
Role
Related Golden topics

Diederik Kingma

Creator

OpenAI

Jimmy Ba

Creator



Further reading

Title
Author
Link
Type
Date

Adam -- latest trends in deep learning optimization.

Vitaly Bushaev

Web



Adam: A Method for Stochastic Optimization

Diederik P. Kingma, Jimmy Ba

PDF



ADAM: A Method for Stochastic Optimization

UC Berkeley Computer Vision Review Letters

Web



An overview of gradient descent optimization algorithms

Sebastian Ruder

Web



Documentaries, videos and podcasts

Title
Date
Link





Companies

Company
CEO
Location
Products/Services









References