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.8.tar.gz
(15.3 kB
view hashes)
Built Distribution
Close
Hashes for spectralnet-0.0.8-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d9a400edca59841abce135b9cf44fbd8cac36549910ca3f2d2a6aea04d6a6a0b |
|
MD5 | 055effb9c6f04617875a1295faaaab10 |
|
BLAKE2b-256 | ebfd54f01b05aaeba16bcc76b2e8c3699457e625df0e9ed8083c9c1e6867b1ee |