chen-hao-chao / ebflow

[NeurIPS 2023] Training Energy-Based Normalizing Flow with Score-Matching Objectives

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Training Energy-Based Normalizing Flow with Score-Matching Objectives

arXiv

This repository contains the code implementation of the experiments presented in the paper Training Energy-Based Normalizing Flow with Score-Matching Objectives.

ebflow ebflow

Directory Structure

  • Use the code in ebflow/toy_examples to reproduce the results presented in Sections 5.1 and A5.
  • Use the code in ebflow/real_world to reproduce the results presented in Sections 5.2, 5.3, and 5.4.

Dependencies

(Optional) Launch a Docker Container

# assume the current directory is the root of this repository
docker run --rm -it --gpus all --ipc=host -v$(pwd):/app nvcr.io/nvidia/pytorch:20.12-py3
# inside the docker container, run:
cd /app

Install Dependencies

Setup the conda environment with conda_environment.yml:

conda env create -f conda_environment.yml

Launch ebflow conda environment:

source activate
conda activate ebflow

References

This code implementation is developed based on the following repositories:

Citing EBFlow

If you find this code useful, please consider citing our paper.

@inproceedings{chao2023ebflow,
      title={{Training Energy-Based Normalizing Flow with Score-Matching Objectives}}, 
      author={Chen-Hao Chao and Wei-Fang Sun and Yen-Chang Hsu and Zsolt Kira and Chun-Yi Lee},
      year={2023},
      booktitle={Proceedings of International Conference on Neural Information Processing Systems (NeurIPS)}
}

About

[NeurIPS 2023] Training Energy-Based Normalizing Flow with Score-Matching Objectives


Languages

Language:Python 100.0%