OpenViSTAI · Agents · Blockchain · Crypto
Menu
AI Models

Mean Teacher

Mean Teacher is a semi-supervised learning method for image recognition, with Python implementations in PyTorch and TensorFlow. It trains a student and teacher on separately augmented or perturbed inputs, compares their outputs with a consistency cost, and updates teacher weights as an exponential moving average of student weights.

Independent OpenViST project profile, based on linked sources.

Mean Teacher — OpenViST project profile in AI Models.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use it when investigating semi-supervised image recognition and you can work with training code, a model, and labeled and unlabeled examples.

Who it is for

  • Researchers studying semi-supervised image recognition.
  • Developers adapting a PyTorch or TensorFlow training implementation to their own model and dataset.

Documented uses

  • Explore teacher–student consistency training with labeled and unlabeled image examples.
  • Adapt an implementation to a model and dataset.
  • Compare supervised and semi-supervised image-recognition experiments.
Before you choose

Requirements & limits

The implementation is in a public GitHub repository.

  • The repository offers both PyTorch and TensorFlow implementations.
  • The README identifies EMA decay, consistency-cost weight, and the mix of labeled and unlabeled samples as tuning choices that vary with the dataset and model.
  • The suggested starting point is supervised training on labeled data before adding the Mean Teacher method.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Structure a Mean Teacher image-recognition experiment

Set up the documented student–teacher learning procedure for semi-supervised image recognition.

Before you start

  • A supervised model architecture.
  • A minibatch containing labeled and unlabeled examples.
  • Random input augmentation or noise applied separately to student and teacher inputs.
  • An optimizer for updating student weights.

Steps

  1. Copy the supervised architecture to create a student and a teacher.

  2. Feed the same minibatch to both models, applying random augmentation or noise separately to each model’s inputs.

  3. Add a consistency cost between the student and teacher outputs after softmax.

  4. Update the student weights with the optimizer, then move the teacher weights toward the student weights using an exponential moving average.

Expected outcome

A student–teacher training procedure in which teacher weights track the student through an exponential moving average.

Guide limitations

  • The guidance describes the method, not commands for running a repository implementation.
  • The EMA decay rate, consistency-cost weight and labeled/unlabeled minibatch composition depend on the dataset, model and minibatches.
  • The repository describes both TensorFlow and PyTorch implementations; it does not provide enough detail here to reproduce a complete training run.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
17 October 2026
Original website title
CuriousAI/mean-teacher · Official homepage title · retained in its source language