homogeneity_score#
- sklearn.metrics.homogeneity_score(labels_true, labels_pred)[Quelle]#
Homogenitätsmetrik einer Cluster-Beschriftung gegeben eine Grundwahrheit.
Ein Clustering-Ergebnis erfüllt Homogenität, wenn alle seine Cluster nur Datenpunkte enthalten, die zu einer einzigen Klasse gehören.
Diese Metrik ist unabhängig von den absoluten Werten der Labels: eine Permutation der Klassen- oder Cluster-Labelwerte ändert den Score-Wert in keiner Weise.
Diese Metrik ist nicht symmetrisch: Wenn Sie
label_truemitlabel_predvertauschen, erhalten Sie diecompleteness_score, die im Allgemeinen unterschiedlich sein wird.Lesen Sie mehr im Benutzerhandbuch.
- Parameter:
- labels_truearray-like von Form (n_samples,)
Wahre Klassenlabels als Referenz.
- labels_predarray-like von Form (n_samples,)
Zu bewertende Clusterlabels.
- Gibt zurück:
- homogeneityfloat
Score zwischen 0,0 und 1,0. 1,0 steht für eine perfekt homogene Beschriftung.
Siehe auch
completeness_scoreVollständigkeitsmetrik der Cluster-Beschriftung.
v_measure_scoreV-Maß (NMI mit arithmetischem Mittelwert-Option).
Referenzen
Beispiele
Perfekte Beschriftungen sind homogen
>>> from sklearn.metrics.cluster import homogeneity_score >>> homogeneity_score([0, 0, 1, 1], [1, 1, 0, 0]) 1.0
Nicht perfekte Beschriftungen, die Klassen weiter in mehr Cluster aufteilen, können perfekt homogen sein
>>> print("%.6f" % homogeneity_score([0, 0, 1, 1], [0, 0, 1, 2])) 1.000000 >>> print("%.6f" % homogeneity_score([0, 0, 1, 1], [0, 1, 2, 3])) 1.000000
Cluster, die Stichproben aus verschiedenen Klassen enthalten, führen nicht zu einer homogenen Beschriftung
>>> print("%.6f" % homogeneity_score([0, 0, 1, 1], [0, 1, 0, 1])) 0.0... >>> print("%.6f" % homogeneity_score([0, 0, 1, 1], [0, 0, 0, 0])) 0.0...
Galeriebeispiele#
Demo des Affinity Propagation Clustering Algorithmus
Eine Demo des K-Means Clusterings auf den handschriftlichen Zifferndaten