A project for scalable hierachical clustering, thanks to a Flexible, Incremental, Scalable, Hierarchical Density-Based Clustering algorithms (FISHDBC, for the friends).
This package lets you use an arbitrary dissimilarity function you write (or reuse from somebody else's work!) to cluster your data.
Please see the paper at https://arxiv.org/abs/1910.07283
python3 setup.py install
There are plenty of configuration options, inherited by HNSWs and HDBSCAN, but the only compulsory argument is a dissimilarity function between arbitrary data elements:
import flexible_clustering clusterer = flexible_clustering.FISHDBC(my_dissimilarity) for elem in my_data: clusterer.add(elem) labels, probs, stabilities, condensed_tree, slt, mst = clusterer.cluster() for elem in some_new_data: # support cheap incremental clustering clusterer.add(elem) # new clustering according to the newly available data labels, probs, stabilities, condensed_tree, slt, mst = clusterer.cluster()
Make sure to run everything from outside the source directory, to avoid confusing Python path.
As documented in the HDBSCAN source code:
Look at the fishdbc_example.py file for something more (it requires matplotlib to be run).
Send me an email at della@linux.it. I'll improve the docs as and if people use this.
Matteo Dell'Amico
BSD 3-clause; see the LICENSE file.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4