TL;DR
Deep declarative networks define data processing layers via optimization problems, enabling flexible, end-to-end learnable models that unify declarative and imperative programming within deep learning frameworks.
Contribution
This paper introduces deep declarative networks, a novel class of models where layers are defined by optimization problems, expanding the expressiveness of deep learning architectures.
Findings
Declarative nodes can be integrated into PyTorch.
Gradients can be computed via the implicit function theorem.
Applications demonstrated on image and point cloud classification.
Abstract
We explore a new class of end-to-end learnable models wherein data processing nodes (or network layers) are defined in terms of desired behavior rather than an explicit forward function. Specifically, the forward function is implicitly defined as the solution to a mathematical optimization problem. Consistent with nomenclature in the programming languages community, we name these models deep declarative networks. Importantly, we show that the class of deep declarative networks subsumes current deep learning models. Moreover, invoking the implicit function theorem, we show how gradients can be back-propagated through many declaratively defined data processing nodes thereby enabling end-to-end learning. We show how these declarative processing nodes can be implemented in the popular PyTorch deep learning software library allowing declarative and imperative nodes to co-exist within the…
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
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
