Mixed Precision Training

By Paulius Micikevicius, Sharan Narang, Jonah Alben, G. Diamos, Erich Elsen, David García, Boris Ginsburg, Michael Houston, Oleksii Kuchaiev, Ganesh Venkatesh and 1 more. 2017

2,457 citations recorded by the source corpus.

Deep neural networks have enabled progress in a wide variety of applications. Growing the size of the neural network typically results in improved accuracy. As model sizes grow, the memory and compute requirements for training these models also increases. We introduce a technique to train deep neural networks using half precision floating point numbers. In our technique, weights, activations and gradients are stored in IEEE half-precision format. Half-precision floating numbers have limited numerical range compared to single-precision numbers. We propose two techniques to handle this loss of information. Firstly, we recommend maintaining a single-precision copy of the weights that accumulates the gradients after each optimizer step. This single-precision copy is rounded to half-precision format during training. Secondly, we propose scaling the loss appropriately to handle the loss of information with half-precision gradients. We demonstrate that this approach works for a wide variety of models including convolution neural networks, recurrent neural networks and generative adversarial networks. This technique works for large scale models with more than 100 million parameters trained on large datasets. Using this approach, we can reduce the memory consumption of deep learning models by nearly 2x. In future processors, we can also expect a significant computation speedup using half-precision hardware units.

Subfields: Computational Theory and Mathematics, Computer Vision and Pattern Recognition, Statistical and Nonlinear Physics, Optimization & Training

How researchers see this paper

The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.

In Computational Theory and Mathematics

  1. Peter Richtárik
  2. Luke S. Zettlemoyer
  3. Boris Ginsburg
  4. Bryan Catanzaro
  5. Christopher R'e
  6. Martin Jaggi
  7. Jason Aaron Edward Weston
  8. Michael W. Mahoney

In Computer Vision and Pattern Recognition

  1. Luc Van Gool
  2. Dacheng Tao
  3. Trevor Darrell
  4. Xiaogang Wang
  5. Ming-Hsuan Yang
  6. Jitendra Malik
  7. Alan L. Yuille
  8. Andrew Zisserman

In Statistical and Nonlinear Physics

  1. Luke S. Zettlemoyer
  2. Michael W. Mahoney
  3. Boris Ginsburg
  4. Bryan Catanzaro
  5. Kurt Keutzer
  6. A. Gholami
  7. Tim Dettmers
  8. Jan Kautz

In Optimization & Training

  1. Quoc V. Le
  2. Martin Jaggi
  3. Peter Richtárik
  4. Sebastian U. Stich
  5. Yoshua Bengio
  6. Torsten Hoefler
  7. Simon Lacoste-Julien
  8. Tal Ben-Nun

Citations in the corpus