Ad

Unsupervised-Classification: Image Clustering with SCAN

SCAN learns to classify images without labels by decoupling feature learning and clustering. Our method achieves state-of-the-art results on several benchmark datasets, offering improved performance and a novel two-step approach.
Screenshot of wvangansbeke/Unsupervised-Classification homepage

SCAN is a Pytorch implementation of a novel approach to unsupervised image classification. We learn to classify images without labels by decoupling the feature learning and clustering tasks, unlike many prior works. Our method achieves state-of-the-art results, particularly on ImageNet, and demonstrates improvements on CIFAR10, CIFAR100-20, and STL10. The core problem addressed is the challenge of grouping images into semantically meaningful clusters when ground truth is unavailable.

SCAN is notable for its two-step approach, separating feature learning from clustering for improved performance. It achieves SOTA results on multiple benchmarks, exceeding the performance of existing methods. The code provides a clear and reproducible implementation with a focus on reproducibility and detailed instructions. The inclusion of tutorials and explanations of prior work enhances the user experience.

  • Feature Learning: Utilizes a contrastive learning approach for robust feature extraction.
  • Clustering: Employs a novel clustering algorithm to group similar images.
  • Scalability: Designed for efficient processing of large image datasets.
  • Reproducibility: Provides detailed instructions and configuration files for repeatable experiments.
  • Extensibility: Allows for easy adaptation to different datasets and models.
  • User Experience: Includes a tutorial and clear documentation.
  • Performance: Achieves state-of-the-art results on multiple benchmarks.

The project is actively maintained and has a solid foundation with a clear implementation. Recent updates include a detailed tutorial and a Prior Work section. The presence of consistent benchmarks and a well-documented codebase suggests a mature and reliable project.

This project benefits researchers and practitioners working on unsupervised image classification and clustering. It is valuable for those seeking state-of-the-art performance on benchmark datasets or implementing robust unsupervised learning pipelines. SCAN offers a practical alternative to supervised and semi-supervised methods when labeled data is scarce or unavailable.

Languages:
Summarize:
Share:
Stars
1,458
Forks
271
Issues
20
Created
6 years ago
Commit
2 years ago
License
OTHER
Archived
No
Updated 14 days ago

Similar Repositories