This code represents a reference implementation for the paper "Variational Inference for Nonlinear Dynamics", accepted for the Time Series Workshop at NIPS 2017. It represents a sequential variational autoencoder that is able to infer nonlinear dynamics in the latent space. The training algorithm makes use of a novel, two-step technique for optimization based on the Fixed Point Iteration method for finding fixed points of iterative equations.
The code is writeen in Python 2.7. You will need the bleeding edge versions of the following packages:
- Theano
- Lasagne
In addition, up-to-date versions of numpy, scipy and matplotlib are expected.
In order to run the runner script, execute
$ python runner.py
This should run as is, and proceed to attempt to fit the example dataset provided in the data directory. If not present, it will create a directory in your local machine to store the results. To fit any other dataset, you may change the relevant options inside the runner file, as well as a host of others that may have an impact on the quality of the fit.