Giter Club home page Giter Club logo

sm-expfam-lfi's Introduction

SM-ExpFam-LFI

Code for the paper: Score Matched Neural Exponential Families for Likelihood-Free Inference, which can be found here.

Instructions

All experiments and plots from the paper can be reproduced using the code provided here. Notice however that some scripts are computationally intensive and may need to be run on a parallel cluster (specifically those performing ABC, SL and RE inference).

The content of this repository is as follows:

  • src contains source code for performing NN training and inference
  • scripts contains Python scripts to run the different experiments
  • plot_scripts contains Python scripts to reproduce the figures starting from results
  • tests contains some tests for our source code; see below

Reproducing the experiments

We provide bash scripts calling the Python scripts with the options we used in the paper and in the right order.

For instance, in order to run the experiments on the beta model, it suffices to do:

chmod +x run_beta_experiments.sh  # to make it runnable 
./run_beta_experiments.sh

However, it may be wiser to take the different Python commands and run them independently one by one; in fact, some of them have very different computational complexities, specifically some may require a large number of MPI tasks to run efficiently. Alternatively, you can also use GPUs to train the neural networks.

Requirements

Listed in the requirements.txt file. Please install with:

pip install -r requirements.txt

Tests

We test some source code we introduce. To run them, do:

python -m unittest tests

Citation

Please use the following .bib entry:

@article{pacchiardi2020score,
    author  = {Lorenzo Pacchiardi and Ritabrata Dutta},
    title   = {Score Matched Neural Exponential Families for Likelihood-Free Inference},
    journal = {Journal of Machine Learning Research},
    year    = {2022},
    volume  = {23},
    number  = {38},
    pages   = {1-71},
    url     = {http://jmlr.org/papers/v23/21-0061.html}
}

sm-expfam-lfi's People

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.