Automatic Gradient Descent: Deep Learning without Hyperparameters

Jeremy Bernstein, Chris Mingard, Kevin Huang, Navid Azizan, Yisong Yue
4/11/2023
cs.LGcs.AIcs.NE

Official code: jxbz/agd (217 stars, last commit 2023-06-26).

Abstract

The architecture of a deep neural network is defined explicitly in terms of the number of layers, the width of each layer and the general network topology. Existing optimisation frameworks neglect this information in favour of implicit architectural information (e.g. second-order methods) or architecture-agnostic distance functions (e.g. mirror descent). Meanwhile, the most popular optimiser in practice, Adam, is based on heuristics. This paper builds a new framework for deriving optimisation algorithms that explicitly leverage neural architecture. The theory extends mirror descent to non-convex composite objective functions: the idea is to transform a Bregman divergence to account for the non-linear structure of neural architecture. Working through the details for deep fully-connected networks yields automatic gradient descent: a first-order optimiser without any hyperparameters. Automatic gradient descent trains both fully-connected and convolutional networks out-of-the-box and at ImageNet scale. A PyTorch implementation is available at https://github.com/jxbz/agd and also in Appendix B. Overall, the paper supplies a rigorous theoretical foundation for a next-generation of architecture-dependent optimisers that work automatically and without hyperparameters.

View on arXivView PDF

Code Implementations(1)

jxbz/agdOfficial100%

Automatic gradient descent

21713TeX, ShellApr 12, 20233 years ago

Similar Papers

Cite this paper

@article{bernstein2023automatic,
  title  = {Automatic Gradient Descent: Deep Learning without Hyperparameters},
  author = {Jeremy Bernstein and Chris Mingard and Kevin Huang and Navid Azizan and Yisong Yue},
  year   = {2023},
  eprint = {2304.05187},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2304.05187v1}
}

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/2304.05187.svg)](https://codeofpaper.com/paper/2304.05187)

Discussion