Spectral Clustering Using Deep Neural Networks
Project description
SpectralNet
SpectralNet is a Python package that performs spectral clustering with deep neural networks.
This package is based on the following paper - SpectralNet
Installation
You can install the latest package version via
pip install spectralnet
Usage
The basic functionality is quite intuitive and easy to use, e.g.,
from spectralnet import SpectralNet
spectralnet = SpectralNet(n_clusters=10)
spectralnet.fit(X) # X is the dataset and it should be a torch.Tensor
cluster_assignments = spectralnet.predict(X) # Get the final assignments to clusters
If you have labels to your dataset and you want to measure ACC and NMI you can do the following:
from spectralnet import SpectralNet
from spectralnet import Metrics
spectralnet = SpectralNet(n_clusters=2)
spectralnet.fit(X, y) # X is the dataset and it should be a torch.Tensor
cluster_assignments = spectralnet.predict(X) # Get the final assignments to clusters
y = y_train.detach().cpu().numpy() # In case your labels are of torch.Tensor type.
acc_score = Metrics.acc_score(cluster_assignments, y, n_clusters=2)
nmi_score = Metrics.nmi_score(cluster_assignments, y)
print(f"ACC: {np.round(acc_score, 3)}")
print(f"NMI: {np.round(nmi_score, 3)}")
You can read the code docs for more information and functionalities
Citation
@inproceedings{shaham2018,
author = {Uri Shaham and Kelly Stanton and Henri Li and Boaz Nadler and Ronen Basri and Yuval Kluger},
title = {SpectralNet: Spectral Clustering Using Deep Neural Networks},
booktitle = {Proc. ICLR 2018},
year = {2018}
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
spectralnet-0.0.7.tar.gz
(15.3 kB
view hashes)
Built Distribution
Close
Hashes for spectralnet-0.0.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3d6fbc34daddf228c563b676e916f838f2d37f86bfae281b5ec2ac4ddc6c1425 |
|
MD5 | 5eb4429c683118912e04589c506da0f2 |
|
BLAKE2b-256 | 9fac468d7ec334a6f3e2991eb105a91bd4388cb90b5cb94c4e7d7f39e39ce593 |