Home

Awesome

MixMatch

This is an unofficial PyTorch implementation of MixMatch: A Holistic Approach to Semi-Supervised Learning. The official Tensorflow implementation is here.

Now only experiments on CIFAR-10 are available.

This repository carefully implemented important details of the official implementation to reproduce the results.

Requirements

Usage

Train

Train the model by 250 labeled data of CIFAR-10 dataset:

python train.py --gpu <gpu_id> --n-labeled 250 --out cifar10@250

Train the model by 4000 labeled data of CIFAR-10 dataset:

python train.py --gpu <gpu_id> --n-labeled 4000 --out cifar10@4000

Monitoring training progress

tensorboard.sh --port 6006 --logdir cifar10@250

Results (Accuracy)

#Labels250500100020004000
Paper88.92 ± 0.8790.35 ± 0.9492.25 ± 0.3292.97 ± 0.1593.76 ± 0.06
This code88.7188.9690.5292.2393.52

(Results of this code were evaluated on 1 run. Results of 5 runs with different seeds will be updated later. )

References

@article{berthelot2019mixmatch,
  title={MixMatch: A Holistic Approach to Semi-Supervised Learning},
  author={Berthelot, David and Carlini, Nicholas and Goodfellow, Ian and Papernot, Nicolas and Oliver, Avital and Raffel, Colin},
  journal={arXiv preprint arXiv:1905.02249},
  year={2019}
}