Invertible Residual Networks
Jens Behrmann, Will Grathwohl, Ricky T. Q. Chen, David Duvenaud,, J\"orn-Henrik Jacobsen

TL;DR
This paper demonstrates that standard ResNet architectures can be made invertible with a simple normalization step, enabling their use for classification, density estimation, and generation without architectural restrictions.
Contribution
The authors introduce a method to make ResNets invertible using a normalization step, allowing a single model to perform multiple tasks including generative modeling.
Findings
Invertible ResNets perform competitively with state-of-the-art classifiers.
They can be used for density estimation and generation.
The approach requires only a simple normalization during training.
Abstract
We show that standard ResNet architectures can be made invertible, allowing the same model to be used for classification, density estimation, and generation. Typically, enforcing invertibility requires partitioning dimensions or restricting network architectures. In contrast, our approach only requires adding a simple normalization step during training, already available in standard frameworks. Invertible ResNets define a generative model which can be trained by maximum likelihood on unlabeled data. To compute likelihoods, we introduce a tractable approximation to the Jacobian log-determinant of a residual block. Our empirical evaluation shows that invertible ResNets perform competitively with both state-of-the-art image classifiers and flow-based generative models, something that has not been previously achieved with a single architecture.
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.
Taxonomy
TopicsGenerative Adversarial Networks and Image Synthesis · Neural Networks and Applications · Topic Modeling
MethodsAverage Pooling · *Communicated@Fast*How Do I Communicate to Expedia? · 1x1 Convolution · Batch Normalization · Bottleneck Residual Block · Global Average Pooling · Residual Block · Kaiming Initialization · Max Pooling · Residual Connection
