/Deconstructing-MINE

Official implementation of the paper "Combating the Instability of Mutual Information-based Losses via Regularization" (UAI 2022)

Primary LanguageJupyter NotebookMIT LicenseMIT

Combating the Instability of Mutual Information-based Losses via Regularization

presentation

Environment

  • Python 3.7.4
  • pip-20.1.1
  • Additional packages can be located in requirements.txt and benchmark.requirements.txt (Only for the experiments_self_contrastive.py and experiments_classification.py.

How to reproduce experiments

One-hot experiments

  • comparing_onehot.ipynb, observing_imine_different_target.ipynb

Gaussian benchmark

Contrastive learning benchmark (CLB)

  • CIFAR-100: Run with python3 experiments_self_contrastive.py --dataset cifar100 --loss {LOSS} --batch_size 100 --model resnet18 --epochs 150 --remove_fc --seed {SEED} --device 0
  • CIFAR-10: Run with python3 experiments_self_contrastive.py --dataset cifar10 --loss {LOSS} --batch_size 10 --model resnet18 --epochs 100 --remove_fc --seed {SEED} --device 0

Supervised learning benchmark (CLB)

  • CIFAR-100: Run with python3 experiments_classification.py --dataset cifar100 --loss {LOSS} --batch_size 100 --model resnet18 --epochs 100 --seed {SEED} --device 0
  • CIFAR-10: Run with python3 experiments_classification.py --dataset cifar10 --loss {LOSS} --batch_size 10 --model resnet18 --epochs 40 --seed {SEED} --device 0