https://github.com/astorfi/deep-clustering-kmeans

https://github.com/astorfi/deep-clustering-kmeans

Science Score: 23.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: arxiv.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (8.0%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Basic Info
  • Host: GitHub
  • Owner: astorfi
  • License: mit
  • Language: Python
  • Default Branch: main
  • Size: 50.8 KB
Statistics
  • Stars: 0
  • Watchers: 2
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created almost 5 years ago · Last pushed almost 5 years ago
Metadata Files
Readme License

README.md

DCN: Deep Clustering Network

A fork of(https://github.com/xuyxu/Deep-Clustering-Network)[https://github.com/xuyxu/Deep-Clustering-Network]. This repo is a re-implementation of DCN using PyTorch. Paper: (https://arxiv.org/pdf/1610.04794v1.pdf)[https://arxiv.org/pdf/1610.04794v1.pdf]

Introduction

An interesting work that jointly performs unsupervised dimension reduction and clustering using a neural network autoencoder.

How to run

Here I offer a demo on training DCN on the MNIST dataset (corresponding to Section 5.2.5 in the raw paper). To run this demo, simply type the following command:

python mnist.py

Acknowledgement

For anyone with interests, you can also refer to the implementation of Günther Eder: https://github.com/guenthereder/Deep-Clustering-Network, which has more details on the reproducibility.

Experiment

I trained the DCN model on MNIST dataset, hyper-parameters like network structure were set as values reported in the paper. The left figure presents the reconstruction error of the autoencoder during the pre-training stage, and the right figure presents changes on NMI and ARI (two metrics employed in the paper) during the training stage. The best NMI result I have got is around 0.65.

MNIST Experiment Result

Package dependency

  • scikit-lean==0.23.1
  • pytorch==1.6.0
  • torchvision==0.7.0
  • joblib==0.16.0

In my practice, this implementation also works fine on PyTorch 0.4.1. Feel free to open an issue if there were incompatibility problems.

Reference

  • Yang et al. ''Towards K-means-friendly Spaces: Simultaneous Deep Learning and Clustering'', ICML-2017 (https://arxiv.org/pdf/1610.04794.pdf)

Owner

  • Name: Sina Torfi
  • Login: astorfi
  • Kind: user
  • Location: San Jose
  • Company: Meta

PhD & Developer working on Deep Learning, Computer Vision & NLP

GitHub Events

Total
Last Year

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 7
  • Total Committers: 2
  • Avg Commits per committer: 3.5
  • Development Distribution Score (DDS): 0.143
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Amirsina Torfi a****i@g****m 6
Amirsina Torfi a****i@c****m 1
Committer Domains (Top 20 + Academic)