loeweX / Greedy_InfoMax

Code for the paper: Putting An End to End-to-End: Gradient-Isolated Learning of Representations
https://arxiv.org/abs/1905.11786
MIT License
284 stars 36 forks source link
deep-learning local-learning pytorch

Greedy InfoMax

We can train a neural network without end-to-end backpropagation and achieve competitive performance.

This repo provides the code for the experiments in our paper:

Sindy Löwe, Peter O'Connor, Bastiaan S. Veeling - Putting An End to End-to-End: Gradient-Isolated Learning of Representations

*equal contribution

What is Greedy InfoMax?

We simply divide existing architectures into gradient-isolated modules and optimize the mutual information between cross-patch intermediate representations.

The Greedy InfoMax Learning Approach

What we found exciting is that despite each module being trained greedily, it improves upon the representation of the previous module. This enables you to keep stacking modules until downstream performance saturates.

How to run the code

Dependencies

Additionally, for the audio experiments:

Usage

Vision Experiments

Audio Experiments

Want to learn more about Greedy InfoMax?

Check out my blog post for an intuitive explanation of Greedy InfoMax.

Additionally, you can watch my presentation at NeurIPS 2019. My slides for this talk are available here.

Cite

Please cite our paper if you use this code in your own work:

@inproceedings{lowe2019putting,
  title={Putting an End to End-to-End: Gradient-Isolated Learning of Representations},
  author={L{\"o}we, Sindy and O'Connor, Peter and Veeling, Bastiaan},
  booktitle={Advances in Neural Information Processing Systems},
  pages={3039--3051},
  year={2019}
}

References