← all repositories
scikit-learn-contrib/hdbscan

DBSCAN grew up and stopped asking for epsilon

It finds clusters of varying densities without making you guess the magic epsilon value that plain DBSCAN demands.

3.1k stars Jupyter Notebook ML Frameworks
hdbscan
Not currently ranked — collecting fresh signals.
star history

What it does

HDBSCAN is a density-based clustering algorithm that runs DBSCAN across many distance scales and keeps the result that proves most stable. Unlike plain DBSCAN, it handles clusters of different densities and asks almost nothing of you at setup time—just a minimum cluster size. It inherits the scikit-learn API, so it slots into existing pipelines without ceremony.

The interesting bit

The implementation is aggressively optimized: the authors claim it beats the reference Java implementation by orders of magnitude and outperforms highly optimized C and C++ single-linkage code. It also bundles soft clustering, outlier detection via GLOSH, and a branch-detection post-processor for spotting non-obvious shapes like flare structures inside clusters.

Key highlights

  • Finds clusters of varying densities without manual epsilon tuning
  • Exposes cluster hierarchies, persistence scores, and reachability minimal spanning trees with built-in plotting
  • Optional soft clustering and GLOSH outlier scores come at no extra compute cost after fitting
  • Includes a high-performance single-linkage implementation and a BranchDetector for branching sub-structures
  • Caches intermediate results with joblib, making re-clustering with new parameters nearly free

Verdict

Data scientists and researchers who need density-based clustering without babysitting epsilon should keep this in their scikit-learn toolkit. If your clusters are all globular and cleanly separated, simpler algorithms will still do the job with less conceptual overhead.

Frequently asked

What is scikit-learn-contrib/hdbscan?
It finds clusters of varying densities without making you guess the magic epsilon value that plain DBSCAN demands.
Is hdbscan open source?
Yes — scikit-learn-contrib/hdbscan is open source, released under the BSD-3-Clause license.
What language is hdbscan written in?
scikit-learn-contrib/hdbscan is primarily written in Jupyter Notebook.
How popular is hdbscan?
scikit-learn-contrib/hdbscan has 3.1k stars on GitHub.
Where can I find hdbscan?
scikit-learn-contrib/hdbscan is on GitHub at https://github.com/scikit-learn-contrib/hdbscan.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.