Learn more¶
This page lists outside documentation and papers for each tool Starfold uses, and three resources on checking a clustering. Every link resolved when it was checked on 2026-09-30. Two publisher DOIs (Astronomy & Astrophysics and the ACM) answer automated requests with HTTP 403 (a bot block, not a dead link; the DOIs resolve). The RAPIDS pages have moved to docs.nvidia.com, and the links below use the final addresses. Each DOI in the papers section returned BibTeX from doi.org on the same date.
UMAP¶
UMAP builds the map (the embedding) that HDBSCAN groups.
How UMAP works: a plain route from neighbour graphs to a 2-D map, with the mathematics left out.
UMAP parameters: what
n_neighbors,min_dist,n_componentsandmetricdo, with paired figures.Basic UMAP usage: a first
fit_transformon penguins and digits, plotted.Using UMAP for clustering: why grouping a UMAP map works, and where it misleads.
UMAP FAQ: scaling, memory, cores and how UMAP can go wrong.
HDBSCAN¶
HDBSCAN finds dense groups in the map and leaves the rest as noise.
How HDBSCAN works: an illustrated five-stage walk-through.
Parameter selection: how
min_cluster_sizeandmin_sampleschange labels and noise.Basic HDBSCAN usage: a first fit and how to read
labels_.Comparing clustering algorithms: where k-means, DBSCAN and HDBSCAN each fail.
HDBSCAN FAQ: answers that start from the symptom, such as too much noise.
Soft clustering: soft membership, which helps when you read
probabilities_.
Optuna¶
Optuna proposes the settings and records each trial.
Optuna documentation: a study, a trial and an objective in a few lines.
Installation: install with pip or conda.
First optimization: a minimal objective with
suggest_float,optimizeandbest_params.Visualization: plots of the optimisation history.
Optuna FAQ: seeds, saving and resuming a study, and NaN values.
cuML (RAPIDS)¶
cuML runs UMAP and HDBSCAN on an NVIDIA GPU under Linux or WSL 2.
cuML documentation: a scikit-learn style interface on the GPU.
cuML UMAP: the parameters of the GPU version.
cuML HDBSCAN: the parameters of the GPU version.
RAPIDS install selector: a page that builds the install command for your CUDA version.
scikit-learn¶
Starfold uses scikit-learn for scaling, the adjusted Rand index and the CPU regrouping in the consensus check.
sklearn.cluster.HDBSCAN: the signature and attributes of the CPU reference.Clustering: methods side by side, with a section on performance metrics.
HDBSCAN example: a runnable example.
scikit-learn glossary: definitions of the terms the scikit-learn pages use.
Papers behind the tools¶
The DOI link opens the paper or its record.
McInnes, Healy and Melville (2018), UMAP: doi:10.48550/arXiv.1802.03426.
Campello, Moulavi and Sander (2013), the HDBSCAN algorithm: doi:10.1007/978-3-642-37456-2_14.
McInnes and Healy (2017), a fast HDBSCAN implementation: doi:10.48550/arXiv.1705.07321.
McInnes, Healy and Astels (2017), the
hdbscanpackage in the Journal of Open Source Software: doi:10.21105/joss.00205.Akiba et al. (2019), Optuna: doi:10.1145/3292500.3330701, also arXiv:1907.10902.
Neitzel et al. (2025), the astronomy study Starfold grew out of: doi:10.1051/0004-6361/202451718.
Checking a clustering¶
scikit-learn, clustering performance evaluation: the adjusted Rand index and related measures, with formulas and worked code.
von Luxburg (2010), Clustering stability: an overview: what stability can and cannot tell you about a clustering.
Hennig (2007), Cluster-wise assessment of cluster stability: the resampling design behind group recurrence and its Jaccard matching.
Hennig, fpc: Flexible Procedures for Clustering, R package: the clusterboot help page gives the 0.85 and 0.5 marks that the figures draw.
For the full reference list of Starfold’s methods, see Citing Starfold.