# Synthetic discrete probabilistic modeling tasks. (Min OT)

In this task, we training EB-GFN with minimizing the path regularization via OT (Min OT) for seven synthetic discrete probabilistic modeling tasks.

## Requirements
- The experiments were conducted with Python 3.9.12 and PyTorch 1.11.0 (CUDA 11.3) 
The setup for environment is as follows:
1. Run `pip install torch==1.11.0+cu113 torchvision==0.12.0+cu113 torchaudio==0.11.0+cu113 -f https://download.pytorch.org/whl/cu113/torch_stable.html`
2. Run `pip install -r requirements.txt` in this directory to install the remaining packages.

## Running Instructions
There are 7 seven synthetic discrete probabilistic modeling tasks. Chosing --data in 
["2spirals", "8gaussians", "pinwheel", "circles", "moons", "swissroll", "checkerboard"]

```
python -m train --data moons --reg_coef 0.001 --seed 2 --save_dir EB-GFN/MinOT/moons --lr 1e-3 --type tblb --hid_layer 2 --hid 512 --eval_every 1000 --glr 1e-3 --zlr 1 --rand_coef 0 --back_ratio 0.5 --lin_k 1 --warmup_k 1e5 --with_mh 1
```
