estimate_bandwidth#
- sklearn.cluster.estimate_bandwidth(X, *, quantile=0.3, n_samples=None, random_state=0, n_jobs=None)[Quelle]#
Schätzt die Bandbreite für die Verwendung mit dem Mean-Shift-Algorithmus.
Diese Funktion benötigt mindestens quadratische Zeit in Bezug auf
n_samples. Für große Datensätze ist es ratsam, durch Setzen vonn_samplesStichproben zu ziehen. Alternativ kann der Parameterbandwidthauf einen kleinen Wert gesetzt werden, ohne ihn zu schätzen.- Parameter:
- Xarray-like der Form (n_samples, n_features)
Eingabepunkte.
- quantilefloat, default=0.3
Sollte zwischen [0, 1] liegen. 0.5 bedeutet, dass der Median aller paarweisen Abstände verwendet wird.
- n_samplesint, default=None
Die Anzahl der zu verwendenden Stichproben. Wenn nicht angegeben, werden alle Stichproben verwendet.
- random_stateint, RandomState instance, default=None
Der Generator, der zum zufälligen Auswählen der Stichproben aus den Eingabepunkten für die Bandbreitenschätzung verwendet wird. Verwenden Sie eine Ganzzahl, um die Zufälligkeit deterministisch zu machen. Siehe Glossar.
- n_jobsint, default=None
Die Anzahl der parallelen Jobs für die Nachbarsuche.
Nonebedeutet 1, es sei denn, es befindet sich in einemjoblib.parallel_backendKontext.-1bedeutet, alle Prozessoren zu verwenden. Siehe Glossar für weitere Details.
- Gibt zurück:
- bandwidthfloat
Der Bandbreitenparameter.
Beispiele
>>> import numpy as np >>> from sklearn.cluster import estimate_bandwidth >>> X = np.array([[1, 1], [2, 1], [1, 0], ... [4, 7], [3, 5], [3, 6]]) >>> estimate_bandwidth(X, quantile=0.5) np.float64(1.61)
Galeriebeispiele#
Vergleich verschiedener Clustering-Algorithmen auf Toy-Datensätzen