Skip to content
/ HINT Public

Code for the research paper "HINT: Hierarchical Invertible Neural Transport for Density Estimation and Bayesian Inference".

License

Notifications You must be signed in to change notification settings

vislearn/HINT

Repository files navigation

HINT

Code for the research paper "HINT: Hierarchical Invertible Neural Transport for Density Estimation and Bayesian Inference".

Dense triangular Jacobian via recursive coupling Structure of our recursive coupling block Approximating a 2D shape with Fourier curve parameterization

A pre-print is available at arXiv, for now please cite as:

@misc{kruse2019hint,
    title = {HINT: Hierarchical Invertible Neural Transport for Density Estimation and Bayesian Inference},
    author = {Jakob Kruse and Gianluca Detommaso and Robert Scheichl and Ullrich K\"othe},
    year = {2019},
    eprint = {1905.10687},
    archivePrefix = {arXiv}
}

Requirements

In order to run the code, you will need the following:

  • PyTorch (>= v1.0.0)
  • Python (>= v3.7)
    • Packages numpy, scipy, pandas, shapely & visdom
  • FrEIA

Structure

There is one script for training unconditional models and one for training conditional models. These scripts expect a running visdom server for visualization and the import of a config file specifying the model and hyperparameters. Config files for all models used in the paper are supplied in the directory configs.

The recursive affine coupling block is implemented as a FrEIA-compatible module in hint.py and will be officially added to the framework in the future.

Data sets for training and evaluation are managed with an additional script, but note that we maintain another repository with the latest versions of all our toy data sets. The script also provides data loaders for three common UCI density estimation benchmarks, with download instructions. Code for the plots used in our paper is found in plot_data.py.

The last script file deals with the rejection sampling baseline and systematic comparisons between the trained models. The first run of this script will take some time as the baseline is very inefficient, but results are stored and subsequent runs go much faster.

About

Code for the research paper "HINT: Hierarchical Invertible Neural Transport for Density Estimation and Bayesian Inference".

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages