Code for reproducing the experiments in the paper:
G. Papamakarios, T. Pavlakou, I. Murray, Masked Autoregressive Flow for Density Estimation, NeurIPS 2017.
[arXiv] [bibtex]
To run all experiments for a particular dataset, run:
python run_experiments.py <dataset>
This will train and save all models associated with that dataset.
To evaluate all trained models and collect the results in a text file, run:
python collect_results.py <dataset>
In the above commands, <dataset>
can be any of the following:
power
gas
hepmass
miniboone
bsds300
mnist
cifar10
You can use the commands with more than one datasets as arguments separated by a space, for example:
python run_experiments.py mnist cifar10
python collect_results.py mnist cifar10
UPDATE (July 2024): Due to API changes in pandas, this repository no longer works with the GAS and HEPMASS datasets. Instead, you can use the fork in francois-rozet/uci-datasets, kindly provided by @francois-rozet. See this issue for more details.
- Downdload the datasets from: https://zenodo.org/record/1161203#.Wmtf_XVl8eN
- Unpack the downloaded file, and place it in the same folder as the code.
- Make sure the code reads from the location the datasets are saved at.
- Run the code as described above.
All datasets used in the experiments are preprocessed versions of public datasets. None of them belongs to us. The original datasets are:
-
POWER:
http://archive.ics.uci.edu/ml/datasets/Individual+household+electric+power+consumption -
GAS
http://archive.ics.uci.edu/ml/datasets/Gas+sensor+array+under+dynamic+gas+mixtures -
MINIBOONE
http://archive.ics.uci.edu/ml/datasets/MiniBooNE+particle+identification -
BSDS300
https://www2.eecs.berkeley.edu/Research/Projects/CS/vision/bsds/