# Automatic Differentiation of Algorithms for Machine Learning

arXiv: https://arxiv.org/abs/1404.7456 · HTML: https://mlsanity.com/paper/1404.7456/

## Key facts

- Cited by 7 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 28 Apr 2014.

## Built on by (most cited first, 7 of 7)

- [Investigating Bi-Level Optimization for Learning and Vision from a Unified Perspective: A Survey and Beyond](https://mlsanity.com/paper/2101.11517/) (2021)
- [DDG-DA: Data Distribution Generation for Predictable Concept Drift Adaptation](https://mlsanity.com/paper/2201.04038/) (2022)
- [Learning to Generate Synthetic Training Data using Gradient Matching and Implicit Differentiation](https://mlsanity.com/paper/2203.08559/) (2022)
- [Optimizing Canaries for Privacy Auditing with Metagradient Descent](https://mlsanity.com/paper/2507.15836/) (2025)
- [Meta-Learning with Adjoint Methods](https://mlsanity.com/paper/2110.08432/) (2021)
- [Dual Meta-Learning with Longitudinally Generalized Regularization for One-Shot Brain Tissue Segmentation Across the Human Lifespan](https://mlsanity.com/paper/2308.06774/) (2023)
- [Recent Trends in Modelling the Continuous Time Series using Deep Learning: A Survey](https://mlsanity.com/paper/2409.09106/) (2024)

## Abstract (arXiv)

Automatic differentiation---the mechanical transformation of numeric computer programs to calculate derivatives efficiently and accurately---dates to the origin of the computer age. Reverse mode automatic differentiation both antedates and generalizes the method of backwards propagation of errors used in machine learning. Despite this, practitioners in a variety of fields, including machine learning, have been little influenced by automatic differentiation, and make scant use of available tools. Here we review the technique of automatic differentiation, describe its two main modes, and explain how it can benefit machine learning practitioners. To reach the widest possible audience our treatment assumes only elementary differential calculus, and does not assume any knowledge of linear algebra.
