Skip to content

PyTorch implementation for "HyperSPNs: Compact and Expressive Probabilistic Circuits", NeurIPS 2021

Notifications You must be signed in to change notification settings

ermongroup/HyperSPN

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HyperSPN

This repository contains code for the paper:

HyperSPNs: Compact and Expressive Probabilistic Circuits

"HyperSPNs: Compact and Expressive Probabilistic Circuits"
Andy Shih, Dorsa Sadigh, Stefano Ermon
In Proceedings of the 35th Conference on Neural Information Processing Systems (NeurIPS), 2021

@inproceedings{ShihSEneurips21,
  author    = {Andy Shih and Dorsa Sadigh and Stefano Ermon},
  title     = {HyperSPNs: Compact and Expressive Probabilistic Circuits},
  booktitle = {Advances in Neural Information Processing Systems 34 (NeurIPS)},
  month     = {december},
  year      = {2021},
  keywords  = {conference}
}

Installation

conda env create -f environment.yml

Optionally, for EinsumNetworks:

cd EinsumNetworks
pip3 install -r requirements.txt

Datasets and Repos

The Twenty Datasets benchmark is from here.

The Amazon Baby Registries benchmark is from here. The dataset was converted from the set format into the binary format.

The Einsum Network repository is from here.

Commands

Experiments can be launched with the helper bash files

runid=0
bash bashfiles/run_hyperspn.bash ${runid} 5
bash bashfiles/run_hyperspn.bash ${runid} 10
bash bashfiles/run_hyperspn.bash ${runid} 20

bash bashfiles/run_spn.bash ${runid} 1e-3
bash bashfiles/run_spn.bash ${runid} 1e-4
bash bashfiles/run_spn.bash ${runid} 1e-5
cd EinsumNetworks/src/
python train_svhn_mixture.py --run=0
python train_svhn_mixture.py --nn --run=0

About

PyTorch implementation for "HyperSPNs: Compact and Expressive Probabilistic Circuits", NeurIPS 2021

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published