Name | finch-clust JSON |
Version |
0.2.2
JSON |
| download |
home_page | None |
Summary | FINCH - First Integer Neighbor Clustering Hierarchy: A parameter-free fast clustering algorithm. |
upload_time | 2025-10-21 20:50:37 |
maintainer | None |
docs_url | None |
author | Saquib Sarfraz |
requires_python | >=3.8 |
license | None |
keywords |
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# First Integer Neighbor Clustering Hierarchy (FINCH) Algorithm

FINCH is a parameter-free fast and scalable clustering algorithm. it stands out for its speed and clustering quality.
The algorithm is described in our paper **Efficient Parameter-free Clustering Using First Neighbor Relations** published in CVPR 2019 . [Read Paper](http://openaccess.thecvf.com/content_CVPR_2019/papers/Sarfraz_Efficient_Parameter-Free_Clustering_Using_First_Neighbor_Relations_CVPR_2019_paper.pdf).
## Installation
The project is available in PyPI. To install run:
`pip install finch-clust`
**Optional**. Install [PyNNDescent](https://github.com/lmcinnes/pynndescent) to get first neighbours for large data
To install finch with pynndescent run:
`pip install "finch-clust[ann]"`
## Usage:
typically you would run:
```
from finch import FINCH
c, num_clust, req_c = FINCH(data)
```
You can set options e.g., required number of cluster or distance etc,
```
c, num_clust, req_c = FINCH(data, initial_rank=None, req_clust=None, distance='cosine', verbose=True)
```
For more details on meaning of input arguments check README in [finch directory](finch/README.md).
**Matlab usage**
A minimal correponding Matlab implementation is provided in the [matlab directory](https://github.com/ssarfraz/FINCH-Clustering/tree/master/matlab/README.md).
## Demos
The following demo notebooks are available to see the usage in clustering a dataset.
1. [Basic usage on 2D toy data](https://github.com/ssarfraz/FINCH-Clustering/blob/master/notebooks/Basic_usage.ipynb)
2. [Clustering STL-10 dataset with FINCH](https://github.com/ssarfraz/FINCH-Clustering/blob/master/notebooks/Clustering_with_FINCH.ipynb)
## Relevant tools built on FINCH
- [h-nne](https://github.com/koulakis/h-nne): See also our [h-nne](https://github.com/koulakis/h-nne) method which uses FINCH for fast dimenionality reduction and visualization applications.
- [TW-FINCH](https://github.com/ssarfraz/FINCH-Clustering/tree/master/TW-FINCH): Also see our [TW-FINCH](https://github.com/ssarfraz/FINCH-Clustering/tree/master/TW-FINCH) variant which is useful for video segmentation.
## Citation
```
@inproceedings{finch,
author = {M. Saquib Sarfraz and Vivek Sharma and Rainer Stiefelhagen},
title = {Efficient Parameter-free Clustering Using First Neighbor Relations},
booktitle = {Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
pages = {8934--8943}
year = {2019}
}
```
Raw data
{
"_id": null,
"home_page": null,
"name": "finch-clust",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": null,
"author": "Saquib Sarfraz",
"author_email": "saquibsarfraz@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/2e/92/980a63be52fdbca0fdf719ec52b47f2ec47960900fda92c78ce6f3b6e6b9/finch_clust-0.2.2.tar.gz",
"platform": null,
"description": "# First Integer Neighbor Clustering Hierarchy (FINCH) Algorithm\n\n\nFINCH is a parameter-free fast and scalable clustering algorithm. it stands out for its speed and clustering quality.\n The algorithm is described in our paper **Efficient Parameter-free Clustering Using First Neighbor Relations** published in CVPR 2019 . [Read Paper](http://openaccess.thecvf.com/content_CVPR_2019/papers/Sarfraz_Efficient_Parameter-Free_Clustering_Using_First_Neighbor_Relations_CVPR_2019_paper.pdf).\n\n\n## Installation\nThe project is available in PyPI. To install run:\n\n`pip install finch-clust` \n\n**Optional**. Install [PyNNDescent](https://github.com/lmcinnes/pynndescent) to get first neighbours for large data\n\nTo install finch with pynndescent run:\n\n`pip install \"finch-clust[ann]\"` \n\n\n## Usage:\n\ntypically you would run: \n``` \nfrom finch import FINCH\nc, num_clust, req_c = FINCH(data)\n\n```\nYou can set options e.g., required number of cluster or distance etc,\n\n```\nc, num_clust, req_c = FINCH(data, initial_rank=None, req_clust=None, distance='cosine', verbose=True)\n```\n\nFor more details on meaning of input arguments check README in [finch directory](finch/README.md). \n\n**Matlab usage**\n\nA minimal correponding Matlab implementation is provided in the [matlab directory](https://github.com/ssarfraz/FINCH-Clustering/tree/master/matlab/README.md).\n\n## Demos\n\nThe following demo notebooks are available to see the usage in clustering a dataset.\n\n1. [Basic usage on 2D toy data](https://github.com/ssarfraz/FINCH-Clustering/blob/master/notebooks/Basic_usage.ipynb)\n2. [Clustering STL-10 dataset with FINCH](https://github.com/ssarfraz/FINCH-Clustering/blob/master/notebooks/Clustering_with_FINCH.ipynb)\n\n\n## Relevant tools built on FINCH\n- [h-nne](https://github.com/koulakis/h-nne): See also our [h-nne](https://github.com/koulakis/h-nne) method which uses FINCH for fast dimenionality reduction and visualization applications.\n\n- [TW-FINCH](https://github.com/ssarfraz/FINCH-Clustering/tree/master/TW-FINCH): Also see our [TW-FINCH](https://github.com/ssarfraz/FINCH-Clustering/tree/master/TW-FINCH) variant which is useful for video segmentation.\n## Citation \n```\n@inproceedings{finch,\n author = {M. Saquib Sarfraz and Vivek Sharma and Rainer Stiefelhagen}, \n title = {Efficient Parameter-free Clustering Using First Neighbor Relations}, \n booktitle = {Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},\n pages = {8934--8943}\n year = {2019}\n}\n\n```\n\n\n",
"bugtrack_url": null,
"license": null,
"summary": "FINCH - First Integer Neighbor Clustering Hierarchy: A parameter-free fast clustering algorithm.",
"version": "0.2.2",
"project_urls": {
"Publication": "https://openaccess.thecvf.com/content_CVPR_2019/html/Sarfraz_Efficient_Parameter-Free_Clustering_Using_First_Neighbor_Relations_CVPR_2019_paper.html",
"Repository": "https://github.com/ssarfraz/FINCH-Clustering"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "40f9f44283919b18cd662ae4f1d7cffd128b8c2d826d5062339a53f8d17febe8",
"md5": "26ebf0f288fe545f12be68ffaac0819e",
"sha256": "87e8e249430b98f3b0877acc9aa160011d6cf2d8ae1b69652e2631009cae87db"
},
"downloads": -1,
"filename": "finch_clust-0.2.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "26ebf0f288fe545f12be68ffaac0819e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 11385,
"upload_time": "2025-10-21T20:50:36",
"upload_time_iso_8601": "2025-10-21T20:50:36.078829Z",
"url": "https://files.pythonhosted.org/packages/40/f9/f44283919b18cd662ae4f1d7cffd128b8c2d826d5062339a53f8d17febe8/finch_clust-0.2.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "2e92980a63be52fdbca0fdf719ec52b47f2ec47960900fda92c78ce6f3b6e6b9",
"md5": "885b9892c8d923e51581e5218470f504",
"sha256": "64edccc91cae9b3c398c8bad2aade0c790e61e49815ebcac3ae1c9fac598be76"
},
"downloads": -1,
"filename": "finch_clust-0.2.2.tar.gz",
"has_sig": false,
"md5_digest": "885b9892c8d923e51581e5218470f504",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 12039,
"upload_time": "2025-10-21T20:50:37",
"upload_time_iso_8601": "2025-10-21T20:50:37.076311Z",
"url": "https://files.pythonhosted.org/packages/2e/92/980a63be52fdbca0fdf719ec52b47f2ec47960900fda92c78ce6f3b6e6b9/finch_clust-0.2.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-10-21 20:50:37",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ssarfraz",
"github_project": "FINCH-Clustering",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "finch-clust"
}