Discovering physical concepts with neural networks

Code for: R. Iten, T. Metger, H.Wilming, L. del Rio, and R. Renner. "Discovering physical concepts with neural networks", arXiv:1807.10300 (2018).

This repository contains the trained Tensorflow models used in the paper as well as code to load, train and analyze them.

Requires:

Branches:

To use the code:

  1. Clone the repository.
  2. Add the cloned directory nn_physical_concepts to your python path. See here for instructions for doing this in a virtual environment. Without a virtual environment, see here.
  3. Import from scinet import *. This includes the shortcuts nn to the model.py code and dl to the data_loader.py code.
  4. Import additional files (e.g. data generation scripts) using import scinet.my_data_generator as my_data_gen_name.

Generated data files are stored in the data directory. Saved models are stored in the tf_save directory. Tensorboard logs are stored in the tf_log directory.

Some documentation is available in the code. For further questions, please contact us directly.

[1] Higgins, I. et al. beta-VAE: "Learning Basic Visual Concepts with a Constrained Variational Framework", ICLR (2017).