vlukiyanov / pt-dec

PyTorch implementation of DEC (Deep Embedding Clustering)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

pt-dec

Build Status codecov Codacy Badge

PyTorch implementation of a version of the Deep Embedded Clustering (DEC) algorithm. Compatible with PyTorch 1.0.0 and Python 3.6 or 3.7 with or without CUDA.

This follows (or attempts to; note this implementation is unofficial) the algorithm described in "Unsupervised Deep Embedding for Clustering Analysis" of Junyuan Xie, Ross Girshick, Ali Farhadi (https://arxiv.org/abs/1511.06335).

Examples

An example using MNIST data can be found in the examples/mnist/mnist.py which achieves around 85% accuracy.

Here is an example confusion matrix, true labels on y-axis and predicted labels on the x-axis.

Alt text

Usage

This is distributed as a Python package ptdec and can be installed with python setup.py install after installing ptsdae from https://github.com/vlukiyanov/pt-sdae. The PyTorch nn.Module class representing the DEC is DEC in ptdec.dec, while the train function from ptdec.model is used to train DEC.

Other implementations of DEC

About

PyTorch implementation of DEC (Deep Embedding Clustering)

License:MIT License


Languages

Language:Python 100.0%