Weight Normalization: A Simple Reparameterization to Accelerate Training of Deep Neural Networks

Tim Salimans, Diederik P. Kingma
2/25/2016
cs.LGcs.AIcs.NE

Official code: TimSalimans/weight_norm (88 stars, last commit 2016-04-03).

Abstract

We present weight normalization: a reparameterization of the weight vectors in a neural network that decouples the length of those weight vectors from their direction. By reparameterizing the weights in this way we improve the conditioning of the optimization problem and we speed up convergence of stochastic gradient descent. Our reparameterization is inspired by batch normalization but does not introduce any dependencies between the examples in a minibatch. This means that our method can also be applied successfully to recurrent models such as LSTMs and to noise-sensitive applications such as deep reinforcement learning or generative models, for which batch normalization is less well suited. Although our method is much simpler, it still provides much of the speed-up of full batch normalization. In addition, the computational overhead of our method is lower, permitting more optimization steps to be taken in the same amount of time. We demonstrate the usefulness of our method on applications in supervised image recognition, generative modelling, and deep reinforcement learning.

View on arXivView PDF

Code Implementations(1)

Lasagne code for weight normalization

8812PythonApr 3, 201610 years ago

Cite this paper

@article{salimans2016weight,
  title  = {Weight Normalization: A Simple Reparameterization to Accelerate Training of Deep Neural Networks},
  author = {Tim Salimans and Diederik P. Kingma},
  year   = {2016},
  eprint = {1602.07868},
  archivePrefix = {arXiv},
  url    = {https://arxiv.org/abs/1602.07868}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/1602.07868.svg)](https://codeofpaper.com/paper/1602.07868)

Discussion