All Projects → siit-vtt → Semi Supervised Learning Pytorch

siit-vtt / Semi Supervised Learning Pytorch

Licence: mit
Several SSL methods (Pi model, Mean Teacher) are implemented in pytorch

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Semi Supervised Learning Pytorch

Fixmatch Pytorch
Unofficial PyTorch implementation of "FixMatch: Simplifying Semi-Supervised Learning with Consistency and Confidence"
Stars: ✭ 259 (+428.57%)
Mutual labels:  semi-supervised-learning
Ssgan Tensorflow
A Tensorflow implementation of Semi-supervised Learning Generative Adversarial Networks (NIPS 2016: Improved Techniques for Training GANs).
Stars: ✭ 496 (+912.24%)
Mutual labels:  semi-supervised-learning
Awesome Federated Learning
Federated Learning Library: https://fedml.ai
Stars: ✭ 624 (+1173.47%)
Mutual labels:  semi-supervised-learning
Tape
Tasks Assessing Protein Embeddings (TAPE), a set of five biologically relevant semi-supervised learning tasks spread across different domains of protein biology.
Stars: ✭ 295 (+502.04%)
Mutual labels:  semi-supervised-learning
Advsemiseg
Adversarial Learning for Semi-supervised Semantic Segmentation, BMVC 2018
Stars: ✭ 382 (+679.59%)
Mutual labels:  semi-supervised-learning
See
Code for the AAAI 2018 publication "SEE: Towards Semi-Supervised End-to-End Scene Text Recognition"
Stars: ✭ 545 (+1012.24%)
Mutual labels:  semi-supervised-learning
HyperGBM
A full pipeline AutoML tool for tabular data
Stars: ✭ 172 (+251.02%)
Mutual labels:  semi-supervised-learning
Susi
SuSi: Python package for unsupervised, supervised and semi-supervised self-organizing maps (SOM)
Stars: ✭ 42 (-14.29%)
Mutual labels:  semi-supervised-learning
Stn Ocr
Code for the paper STN-OCR: A single Neural Network for Text Detection and Text Recognition
Stars: ✭ 473 (+865.31%)
Mutual labels:  semi-supervised-learning
Semi Supervised Pytorch
Implementations of various VAE-based semi-supervised and generative models in PyTorch
Stars: ✭ 619 (+1163.27%)
Mutual labels:  semi-supervised-learning
Ssl4mis
Semi Supervised Learning for Medical Image Segmentation, a collection of literature reviews and code implementations.
Stars: ✭ 336 (+585.71%)
Mutual labels:  semi-supervised-learning
Mixmatch Pytorch
Code for "MixMatch - A Holistic Approach to Semi-Supervised Learning"
Stars: ✭ 378 (+671.43%)
Mutual labels:  semi-supervised-learning
Ganomaly
GANomaly: Semi-Supervised Anomaly Detection via Adversarial Training
Stars: ✭ 563 (+1048.98%)
Mutual labels:  semi-supervised-learning
Fewshot gan Unet3d
Tensorflow implementation of our paper: Few-shot 3D Multi-modal Medical Image Segmentation using Generative Adversarial Learning
Stars: ✭ 272 (+455.1%)
Mutual labels:  semi-supervised-learning
Gans In Action
Companion repository to GANs in Action: Deep learning with Generative Adversarial Networks
Stars: ✭ 748 (+1426.53%)
Mutual labels:  semi-supervised-learning
L2c
Learning to Cluster. A deep clustering strategy.
Stars: ✭ 262 (+434.69%)
Mutual labels:  semi-supervised-learning
Awesome Semi Supervised Learning
📜 An up-to-date & curated list of awesome semi-supervised learning papers, methods & resources.
Stars: ✭ 538 (+997.96%)
Mutual labels:  semi-supervised-learning
Social Media Depression Detector
😔 😞 😣 😖 😩 Detect depression on social media using the ssToT method introduced in our ASONAM 2017 paper titled "Semi-Supervised Approach to Monitoring Clinical Depressive Symptoms in Social Media"
Stars: ✭ 45 (-8.16%)
Mutual labels:  semi-supervised-learning
Ladder
Implementation of Ladder Network in PyTorch.
Stars: ✭ 37 (-24.49%)
Mutual labels:  semi-supervised-learning
Alibi Detect
Algorithms for outlier and adversarial instance detection, concept drift and metrics.
Stars: ✭ 604 (+1132.65%)
Mutual labels:  semi-supervised-learning

ssl (semi-supervised learning)

This repository contains code to reproduce "Realistic Evaluation of Deep Semi-Supervised Learning Algorithms" in pytorch. Currently, only supervised baseline, PI-model[2] and Mean-Teacher[3] are implemented. We attempted to follow the description in the paper, but there are several differences made intentionally. There may be other differences made accidentally from experiments in the paper.

  • The training code is under modification.

Prerequisites

Tested on

  • python 2.7
  • pytorch 0.4.0

Download ZCA preprocessed CIFAR-10 dataset

  • As described in the paper, global contrast normalize (GCN) and ZCA are important steps for the performance. We preprocess CIFAR-10 dataset using the code implemented in Mean-Teacher repository. The code is in tensorflow/dataset folder. Place the preprocessed file (e.g. cifar10_gcn_zca_v2.npz) into a subfolder (e.g. cifar10_zca).

Experiment detail

To Run

For basline

python train.py -a=wideresnet -m=baseline -o=adam -b=225 --dataset=cifar10_zca --gpu=0,1 --lr=0.003 --boundary=0

For Pi model

python train.py -a=wideresnet -m=pi -o=adam -b=225 --dataset=cifar10_zca --gpu=0,1 --lr=0.0003 --boundary=0

For Mean Teacher

python train.py -a=wideresnet -m=mt -o=adam -b=225 --dataset=cifar10_zca --gpu=0,1 --lr=0.0004 --boundary=0
  • boundary option is for different label/unlabel division [0, 9].

You can check the average error rates for n runs using check_result.py. For example, you trained baseline model on 10 different boundary,

python check_result.py --fdir ckpt_cifar10_zca_wideresnet_baseline_adam_e1200/ --fname wideresnet --nckpt 10 

Result (CIFAR-10)

Method WideResnet28x2 [1] WideResnet28x3 w/ dropout (ours)
Supervised 20.26 (0.38)
PI Model 16.37 (0.63)
Mean Teacher 15.87 (0.28)
VAT 13.86 (0.27) -
VAT + EM 13.13 (0.39) -

References

[1] Oliver, Avital, et al. "Realistic Evaluation of Deep Semi-Supervised Learning Algorithms." arXiv preprint arXiv:1804.09170 (2018).

[2] Laine, Samuli, and Timo Aila. "Temporal ensembling for semi-supervised learning." arXiv preprint arXiv:1610.02242 (2016).

[3] Tarvainen, Antti, and Harri Valpola. "Mean teachers are better role models: Weight-averaged consistency targets improve semi-supervised deep learning results." Advances in neural information processing systems. 2017.

[4] https://github.com/CuriousAI/mean-teacher

[5] https://github.com/facebookresearch/odin

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].