Skip to content
Keras implementation for Deep Embedding Clustering (DEC)
Branch: master
Clone or download
Latest commit d40914f Aug 25, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
data fix #2 Feb 26, 2018
results/exp1 update fashion-mnist result Jan 2, 2018
.gitignore add results.csv Dec 6, 2017
DEC.py fix #5 Aug 25, 2018
README.md update fashion-mnist result Jan 2, 2018
autoencoders.png add model picture Dec 6, 2017
datasets.py to py3 Nov 30, 2017
metrics.py new results Dec 6, 2017
run_exp.py new results Dec 6, 2017

README.md

Deep Embedding Clustering (DEC)

Keras implementation for ICML-2016 paper:

  • Junyuan Xie, Ross Girshick, and Ali Farhadi. Unsupervised deep embedding for clustering analysis. ICML 2016.

Usage

  1. Install Keras>=2.0.9, scikit-learn
pip install keras scikit-learn   
  1. Clone the code to local.
git clone https://github.com/XifengGuo/DEC-keras.git DEC
cd DEC
  1. Prepare datasets.

Download STL:

cd data/stl
bash get_data.sh
cd ../..

MNIST and Fashion-MNIST (FMNIST) can be downloaded automatically when you run the code.

Reuters and USPS: If you cannot find these datasets yourself, you can download them from:
https://pan.baidu.com/s/1hsMQ8Tm (password: 4ss4) for Reuters, and
https://pan.baidu.com/s/1skRg9Dr (password: sc58) for USPS

  1. Run experiment on MNIST.
    python DEC.py --dataset mnist
    or (if there's pretrained autoencoder weights)
    The DEC model will be saved to "results/DEC_model_final.h5".

  2. Other usages.

Use python DEC.py -h for help.

Results

python run_exp.py

Table 1. Mean performance over 10 trials. See results.csv for detailed results for each trial.

kmeans AE+kmeans DEC paper
mnist acc 53 88 91 84
nmi 50 81 87 --
fmnist acc 47 61 62 --
nmi 51 64 65 --
usps acc 67 71 76 --
nmi 63 68 79 --
stl acc 70 79 86 --
nmi 71 72 82 --
reuters acc 52 76 78 72
nmi 31 52 57 --

Autoencoder model

Other implementations

Original code (Caffe): https://github.com/piiswrong/dec
MXNet implementation: https://github.com/dmlc/mxnet/blob/master/example/dec/dec.py
Keras implementation without pretraining code: https://github.com/fferroni/DEC-Keras

You can’t perform that action at this time.