Twenty SSL methods and one ruler to measure them all
MMSelfSup corrals two dozen self-supervised vision algorithms into a single PyTorch toolbox so researchers can compare them under identical settings and plug the resulting backbones into downstream OpenMMLab tasks.

What it does MMSelfSup is a PyTorch-based toolbox for self-supervised representation learning in computer vision. It implements two dozen algorithms—from classic contrastive methods like MoCo and SimCLR to masked-image models like MAE and BEiT—under a single modular framework. The project also standardizes evaluation pipelines, including linear probing, semi-supervised classification, and downstream detection and segmentation, so pre-trained backbones can be compared on equal footing.
The interesting bit The real value is the standardization. Most papers report numbers using their own hidden hyperparameters and hardware; MMSelfSup forces everyone into the same gymnasium, making it possible to see which self-supervised method actually generalizes. It also inherits the OpenMMLab plugin architecture, so a backbone trained here drops directly into object-detection or segmentation pipelines without rewriting boilerplate.
Key highlights
- Implements two dozen algorithms including MoCo, SimCLR, BYOL, SwAV, MAE, BEiT, EVA, and PixMIM.
- Standardizes benchmarks: linear classification, low-shot SVM, semi-supervised learning, and downstream detection/segmentation.
- Modular design shared with other OpenMMLab projects (
MMCV,MMEngine,MMClassification). - Provides a model zoo with pre-trained weights and benchmark results.
- Version 1.0.0 (April 2023) added DINO support and refactored file I/O interfaces.
Caveats
- The README prominently flags
MMPreTrainas the “newly upgraded” visual pre-training framework in the OpenMMLab family, so the long-term maintenance split between MMSelfSup andMMPreTrainis unclear. - Migration is required between 0.x and 1.x branches.
Verdict Researchers and engineers who need to benchmark or reproduce self-supervised vision results should look here; casual users who just want a quick pre-trained backbone might find the OpenMMLab dependency stack heavier than necessary.
Frequently asked
- What is open-mmlab/mmselfsup?
- MMSelfSup corrals two dozen self-supervised vision algorithms into a single PyTorch toolbox so researchers can compare them under identical settings and plug the resulting backbones into downstream OpenMMLab tasks.
- Is mmselfsup open source?
- Yes — open-mmlab/mmselfsup is open source, released under the Apache-2.0 license.
- What language is mmselfsup written in?
- open-mmlab/mmselfsup is primarily written in Python.
- How popular is mmselfsup?
- open-mmlab/mmselfsup has 3.3k stars on GitHub.
- Where can I find mmselfsup?
- open-mmlab/mmselfsup is on GitHub at https://github.com/open-mmlab/mmselfsup.