All Projects → Yunfan-Li → Contrastive Clustering

Yunfan-Li / Contrastive Clustering

Licence: mit
Code for the paper "Contrastive Clustering" (AAAI 2021)

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Contrastive Clustering

Flexible Clustering
Clustering for arbitrary data and dissimilarity function
Stars: ✭ 37 (-44.78%)
Mutual labels:  clustering
Timeseriesclustering.jl
Julia implementation of unsupervised learning methods for time series datasets. It provides functionality for clustering and aggregating, detecting motifs, and quantifying similarity between time series datasets.
Stars: ✭ 49 (-26.87%)
Mutual labels:  clustering
Multilingual Latent Dirichlet Allocation Lda
A Multilingual Latent Dirichlet Allocation (LDA) Pipeline with Stop Words Removal, n-gram features, and Inverse Stemming, in Python.
Stars: ✭ 64 (-4.48%)
Mutual labels:  clustering
Fuzzy C Means
A simple python implementation of Fuzzy C-means algorithm.
Stars: ✭ 40 (-40.3%)
Mutual labels:  clustering
Kdd2019 k Multiple Means
Implementation for the paper "K-Multiple-Means: A Multiple-Means Clustering Method with Specified K Clusters,", which has been accepted by KDD'2019 as an ORAL paper, in the Research Track.
Stars: ✭ 45 (-32.84%)
Mutual labels:  clustering
Spyking Circus
Fast and scalable spike sorting in python
Stars: ✭ 55 (-17.91%)
Mutual labels:  clustering
Satellite imagery analysis
Implementation of different techniques to find insights from the satellite data using Python.
Stars: ✭ 31 (-53.73%)
Mutual labels:  clustering
Cluster
Easy Map Annotation Clustering 📍
Stars: ✭ 1,132 (+1589.55%)
Mutual labels:  clustering
Scrattch.hicat
Hierarchical, iterative clustering for analysis of transcriptomics data in R
Stars: ✭ 47 (-29.85%)
Mutual labels:  clustering
Mnesiac
Mnesia autoclustering made easy!
Stars: ✭ 62 (-7.46%)
Mutual labels:  clustering
Swarm
Easy clustering, registration, and distribution of worker processes for Erlang/Elixir
Stars: ✭ 1,004 (+1398.51%)
Mutual labels:  clustering
Moosefs
MooseFS – Open Source, Petabyte, Fault-Tolerant, Highly Performing, Scalable Network Distributed File System (Software-Defined Storage)
Stars: ✭ 1,025 (+1429.85%)
Mutual labels:  clustering
Dnc
Discriminative Neural Clustering for Speaker Diarisation
Stars: ✭ 60 (-10.45%)
Mutual labels:  clustering
Clusteredbigcache
golang bigcache with clustering as a library.
Stars: ✭ 37 (-44.78%)
Mutual labels:  clustering
Ekka
Autocluster and Autoheal for EMQ X Broker
Stars: ✭ 63 (-5.97%)
Mutual labels:  clustering
Mlj.jl
A Julia machine learning framework
Stars: ✭ 982 (+1365.67%)
Mutual labels:  clustering
Protoactor Dotnet
Proto Actor - Ultra fast distributed actors for Go, C# and Java/Kotlin
Stars: ✭ 1,070 (+1497.01%)
Mutual labels:  clustering
Text Analytics With Python
Learn how to process, classify, cluster, summarize, understand syntax, semantics and sentiment of text data with the power of Python! This repository contains code and datasets used in my book, "Text Analytics with Python" published by Apress/Springer.
Stars: ✭ 1,132 (+1589.55%)
Mutual labels:  clustering
Weka Jruby
Machine Learning & Data Mining with JRuby
Stars: ✭ 64 (-4.48%)
Mutual labels:  clustering
Bottleneck
Job scheduler and rate limiter, supports Clustering
Stars: ✭ 1,113 (+1561.19%)
Mutual labels:  clustering

Contrastive Clustering (CC)

This is the code for the paper "Contrastive Clustering" (AAAI 2021)

Dependency

  • python>=3.7
  • pytorch>=1.6.0
  • torchvision>=0.8.1
  • munkres>=1.1.4
  • numpy>=1.19.2
  • opencv-python>=4.4.0.46
  • pyyaml>=5.3.1
  • scikit-learn>=0.23.2

Usage

Configuration

There is a configuration file "config/config.yaml", where one can edit both the training and test options.

Training

After setting the configuration, to start training, simply run

python train.py

Since the traning strategy for STL-10 is slightly different from others (unlabeled data is used on ICH only while training and test split are used on both ICH and CCH), to start training on STL-10, run

python train_STL10.py

Test

Once the training is completed, there will be a saved model in the "model_path" specified in the configuration file. To test the trained model, run

python cluster.py

We uploaded the pretrained model which achieves the performance reported in the paper to the "save" folder for reference.

Dataset

CIFAR-10, CIFAR-100, STL-10 will be automatically downloaded by Pytorch. Tiny-ImageNet can be downloaded from http://cs231n.stanford.edu/tiny-imagenet-200.zip. For ImageNet-10 and ImageNet-dogs, we provided their description in the "dataset" folder.

Citation

If you find CC useful in your research, please consider citing:

@article{li2020contrastive,
  title={Contrastive Clustering},
  author={Li, Yunfan and Hu, Peng and Liu, Zitao and Peng, Dezhong and Zhou, Joey Tianyi and Peng, Xi},
  journal={arXiv preprint arXiv:2009.09687},
  year={2020}
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].