In the repository, the following UDC methods were implemented with pytorch
- DEC: Unsupervised Deep Embedding for Clustering Analysis - ICML2015
- DCEC: Deep Clustering with Convolutional Autoencoders - ICONIP2017
Method | MNIST | |
---|---|---|
reproduced | paper | |
DEC | 88.27 | 84.08 |
DCEC | 87.41 | 88.97 |
- DEC
python main.py --model DEC --dataset MNIST --n_clusters 10 --alpha 0.1 --batch_size 1024 --epochs 200 --pretrain --denoising
python main.py --model DEC --dataset MNIST --n_clusters 10 --alpha 0.1 --batch_size 1024 --epochs 500 --denoising
The AE was pretrained firstly and then finetuned with clustering together, alpha is the KL-divergence loss weight.
- DCEC
python main_conv.py --model DCEC --dataset MNIST --n_clusters 10 --alpha 0.1 --batch_size 1024 --epochs 200 --pretrain --denoising
python main_conv.py --model DCEC --dataset MNIST --n_clusters 10 --alpha 0.1 --batch_size 1024 --epochs 500 --denoising
The DCEC's network slightly differes from the one of the original paper.
- DCE-Pytorch: https://github.com/Deepayan137/DeepClustering
- DCEC-Keras: https://github.com/XifengGuo/DCEC