Efficient and Modular Implicit Differentiation
Mathieu Blondel, Quentin Berthet, Marco Cuturi, Roy Frostig, Stephan, Hoyer, Felipe Llinares-L\'opez, Fabian Pedregosa, Jean-Philippe Vert

TL;DR
This paper introduces an automatic, efficient, and modular method for implicit differentiation of optimization problems, simplifying implementation and broadening applicability in machine learning and scientific computing.
Contribution
It presents a Python-based framework that leverages autodiff and the implicit function theorem for automatic implicit differentiation, unifying and extending existing methods.
Findings
Eases formulation of bi-level optimization problems
Enables automatic differentiation of optimality conditions
Applied successfully to molecular dynamics sensitivity analysis
Abstract
Automatic differentiation (autodiff) has revolutionized machine learning. It allows to express complex computations by composing elementary ones in creative ways and removes the burden of computing their derivatives by hand. More recently, differentiation of optimization problem solutions has attracted widespread attention with applications such as optimization layers, and in bi-level problems such as hyper-parameter optimization and meta-learning. However, so far, implicit differentiation remained difficult to use for practitioners, as it often required case-by-case tedious mathematical derivations and implementations. In this paper, we propose automatic implicit differentiation, an efficient and modular approach for implicit differentiation of optimization problems. In our approach, the user defines directly in Python a function capturing the optimality conditions of the problem…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
Taxonomy
TopicsAdvanced Optimization Algorithms Research · Model Reduction and Neural Networks · Advanced Control Systems Optimization
