Ad

noisystudent: Self-Training for Robust Learning

Noisy Student Training implements a self-training framework achieving state-of-the-art results on ImageNet with improved robustness. It leverages a student-teacher paradigm for semi-supervised learning.
Screenshot of google-research/noisystudent homepage

Noisy Student Training introduces a novel semi-supervised learning approach that significantly enhances model robustness and performance. It operates on a self-training principle, iteratively improving a model by leveraging both labeled and unlabeled data. The core problem addressed is efficient knowledge transfer from labeled to unlabeled datasets, allowing models to benefit from vast amounts of readily available data.

The project's key strength is its simple yet effective iterative training process, requiring minimal modifications to existing models. It demonstrates substantial performance gains on ImageNet and SVHN benchmarks with a relatively small added complexity. The provided scripts facilitate experimentation and replication of the published results.

  • SVHN Implementation: Includes a working implementation and scripts for training and evaluation on the SVHN dataset.
  • ImageNet Scripts: Offers scripts for training, evaluation, and data manipulation on the ImageNet dataset using EfficientNet models.
  • Parallel Processing: Scripts support parallel execution for faster data processing and model training.
  • Pseudo-Labeling: Implements methods for generating and utilizing pseudo-labels from unlabeled data.
  • Colab Integration: Provides a Colab notebook for easy experimentation with the method using free GPU resources.
  • Reproducibility: Scripts are designed to be reproducible based on the provided instructions and configurations.
  • Clear Instructions: Includes detailed instructions on data preprocessing, training, and evaluation.

The repository contains functional scripts and clear instructions for replicating the Noisy Student Training method. It builds upon a published research paper and provides a practical implementation for experimentation. While not a production-ready system, it represents a well-documented and functional codebase for research and development.

This project is valuable for researchers and practitioners interested in semi-supervised learning and improving model robustness. It provides a readily usable implementation of the Noisy Student Training method, enabling users to experiment with self-training techniques and achieve better performance on limited labeled data scenarios. It offers a valuable alternative to traditional supervised learning approaches when labeled data is scarce.

Summarize:
Share:
Stars
765
Forks
102
Issues
8
Created
6 years ago
Commit
5 years ago
License
APACHE-2.0
Archived
Yes
Updated 6 days ago

Similar Repositories