In plain words
Supervised learning needs every example to come with its answer, like photos tagged "cat" or "dog". Those tags are usually added by people, which is slow and expensive. Raw, untagged data, on the other hand, is often plentiful.
Semi-supervised learning uses both: a small pile of labelled data and a big pile without labels. The labelled examples teach the basic idea. The unlabelled ones show the model what real data looks like: where examples bunch together and where the gaps are.
A common trick is self-training. Train on the labelled examples, let the model guess labels for the rest, keep only the guesses it is very confident about, add them to the training pile and train again. The labels gradually spread outwards from the few that people provided.
Everyday example
Naming faces in an old photo box
Your grandmother names the people in twenty old photos. Five hundred more are unlabelled. You start with the faces you are sure of, using her twenty as a guide, and write names on those. Each new name gives you more faces to match against, so the harder photos get easier. That is semi-supervised learning: a few given labels, spread carefully to the rest.
Where the example breaks: When unsure, you can ask your grandmother. A model cannot, so a confident wrong guess gets copied and reinforced in later rounds. It also only helps if the unlabelled photos are of the same family.
How it actually works
Semi-supervised methods rely on assumptions about how data is shaped, and they help most when labels are costly but unlabelled data is plentiful.
The assumptions that make it work
Examples close together should share a label (smoothness). Examples in the same cluster tend to share a class. So the boundary between classes should run through empty gaps, not through crowded regions. Unlabelled data reveals where those gaps are.
Self-training and pseudo-labels
A model trained on labelled data predicts labels for unlabelled examples. Predictions above a confidence threshold become pseudo-labels and join the training set. Repeat until the model stops improving.
Label propagation
Build a graph that links each example to its most similar neighbours, then let known labels spread along the links, like dye through connected pipes, until every example has one.
Consistency with augmentation
Modern image methods such as FixMatch (2020) take an unlabelled photo, make a lightly altered copy and a heavily altered copy using data augmentation, and train the model to give the heavy copy the same confident answer it gave the light one.
- Sits between
- Supervised (all labelled) and unsupervised (no labels) learning
- Example result
- FixMatch reached 94.93% accuracy on the CIFAR-10 image set with only 250 labelled images, and 88.61% with 40
- Best when
- Labels are expensive to obtain but unlabelled examples are plentiful
- Main risk
- Wrong pseudo-labels reinforcing themselves
Questions people ask
What is the difference between semi-supervised and self-supervised learning?
Semi-supervised learning uses some human labels plus unlabelled data. Self-supervised learning uses no human labels at all: it makes its own practice questions from the raw data, such as hiding a word and guessing it. Some sources group self-supervised methods under semi-supervised.
What is pseudo-labelling?
Letting a model label unlabelled examples itself and treating its most confident guesses as if they were real labels in the next round of training. It is the core step of self-training.
When should you use semi-supervised learning?
When labelling is slow or costly but unlabelled examples are easy to get, and those examples come from the same kind of data. If you already have plenty of labels, ordinary supervised learning is simpler.
What is an example of semi-supervised learning?
Sorting thousands of support emails by topic when only a few hundred have been tagged by staff. A model learns from the tagged ones, labels the emails it is confident about, retrains, and gradually covers the rest.
Was this clear?
1 is confusing, 5 is crystal clear. One tap, no account needed.
Spotted something wrong, or know a better example? Suggest a change