Recognition: unknown
Don't Unroll Adjoint: Differentiating SSA-Form Programs
read the original abstract
This paper presents reverse-mode algorithmic differentiation (AD) based on source code transformation, in particular of the Static Single Assignment (SSA) form used by modern compilers. The approach can support control flow, nesting, mutation, recursion, data structures, higher-order functions, and other language constructs, and the output is given to an existing compiler to produce highly efficient differentiated code. Our implementation is a new AD tool for the Julia language, called Zygote, which presents high-level dynamic semantics while transparently compiling adjoint code under the hood. We discuss the benefits of this approach to both the usability and performance of AD tools.
This paper has not been read by Pith yet.
Forward citations
Cited by 5 Pith papers
-
A Riemannian quasi-Newton algorithm for optimization with Euclidean bounds
A Riemannian L-BFGS method with adapted Cauchy-point bound handling outperforms classical interior-point and L-BFGS-B solvers on mixed manifold-plus-bounds problems by orders of magnitude.
-
Engineering molecular potential energy surfaces using magnetic cavity quantum electrodynamics
Magnetic cavity coupling renders H2 ground states metastable, inverts singlet-triplet gaps, and stabilizes exotic antiaromatic states in rings like H4 and C4H4 by preventing Jahn-Teller distortions.
-
Efficient optimisation of multi-parameter quantum control protocols for strongly-coupled systems
Gradient-based optimization of SUPER and FTPE pulse protocols via auto-differentiation and uniTEMPO yields higher preparation fidelities than resonant pi-pulses or standard two-photon excitation, with the advantage in...
-
Distributionally Robust PAC-Bayesian Control
A distributionally robust PAC-Bayesian approach derives sub-Gaussian loss proxies and performance bounds tied to closed-loop operator norms via system level synthesis, enabling optimization-based safety certificates f...
-
Interpretable Machine Learning for Science with PySR and SymbolicRegression.jl
PySR delivers a distributed evolutionary symbolic regression tool with a new EmpiricalBench for recovering historical scientific equations from data.
discussion (0)
Sign in with ORCID, Apple, or X to comment. Anyone can read and Pith papers without signing in.