In plain words: Each layer states a goal, and its output is whatever best solves an optimization puzzle, instead of following a fixed step-by-step recipe. Gradients still flow backward through the answer, so it trains normally and covers everything standard layers do, on images and point clouds.
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 same network. We also provide numerous insights and illustrative examples of declarative nodes and demonstrate their application for image and point cloud classification tasks.
Stephen Gould, Richard Hartley, Dylan Campbell
arXiv:1909.04866 · cs.LG, cs.AI, cs.CV · submitted Sep 11, 2019 · updated Feb 27, 2020
abstract · pdf · html