Compiling to recurrent neurons
Joey Velez-Ginorio, Nada Amin, Konrad Kording, Steve Zdancewic

TL;DR
This paper introduces a programming language that compiles discrete iterative algorithms into differentiable recurrent neurons, enabling neural networks to incorporate discrete logic more effectively and improving learning efficiency.
Contribution
It presents a new language with iteration compiled into recurrent neurons, bridging discrete algorithms and differentiable programming for neural networks.
Findings
Recurrent neurons can represent discrete iterative algorithms.
Networks with recurrent neurons learn faster and more data-efficiently.
Discrete algorithms can be integrated into neural networks via compilation.
Abstract
Discrete structures are currently second-class in differentiable programming. Since functions over discrete structures lack overt derivatives, differentiable programs do not differentiate through them and limit where they can be used. For example, when programming a neural network, conditionals and iteration cannot be used everywhere; they can break the derivatives necessary for gradient-based learning to work. This limits the class of differentiable algorithms we can directly express, imposing restraints on how we build neural networks and differentiable programs more generally. However, these restraints are not fundamental. Recent work shows conditionals can be first-class, by compiling them into differentiable form as linear neurons. Similarly, this work shows iteration can be first-class -- by compiling to linear recurrent neurons. We present a minimal typed, higher-order and linear…
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.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsStochastic Gradient Optimization Techniques · Advanced Neural Network Applications · Advanced Graph Neural Networks
