pair_confusion_matrix#

sklearn.metrics.cluster.pair_confusion_matrix(labels_true, labels_pred)[Quelle]#

Paarweise Konfusionsmatrix aus zwei Clusterings.

Die Paar-Konfusionsmatrix \(C\) berechnet eine 2x2-Ähnlichkeitsmatrix zwischen zwei Clustern, indem alle Paare von Stichproben betrachtet und die Paare gezählt werden, die sowohl unter der wahren als auch unter der vorhergesagten Clusterung in dieselben oder in verschiedene Cluster eingeordnet werden [1].

Betrachtet man ein Stichprobenpaar, das zusammen in einem Cluster liegt, als positives Paar, dann sind, wie bei der binären Klassifizierung, die Anzahl der wahren Negative \(C_{00}\), der falschen Negative \(C_{10}\), der wahren Positive \(C_{11}\) und der falschen Positive \(C_{01}\).

Lesen Sie mehr im Benutzerhandbuch.

Parameter:
labels_truearray-like von der Form (n_samples,), dtype=integral

Wahre Klassenlabels als Referenz.

labels_predarray-like von der Form (n_samples,), dtype=integral

Zu bewertende Clusterlabels.

Gibt zurück:
Cndarray der Form (2, 2), dtype=np.int64

Die Kontingenzmatrix.

Siehe auch

sklearn.metrics.rand_score

Rand-Score.

sklearn.metrics.adjusted_rand_score

Angepasster Rand-Score.

sklearn.metrics.adjusted_mutual_info_score

Bereinigte gegenseitige Information.

Referenzen

Beispiele

Perfekt übereinstimmende Labelings haben alle nicht-null Einträge auf der Diagonale, unabhängig von den tatsächlichen Label-Werten

>>> from sklearn.metrics.cluster import pair_confusion_matrix
>>> pair_confusion_matrix([0, 0, 1, 1], [1, 1, 0, 0])
array([[8, 0],
       [0, 4]]...

Labelings, die alle Klassenmitglieder denselben Clustern zuweisen, sind vollständig, können aber nicht immer rein sein, daher bestraft und haben einige nicht-diagonale Einträge

>>> pair_confusion_matrix([0, 0, 1, 2], [0, 0, 1, 1])
array([[8, 2],
       [0, 2]]...

Beachten Sie, dass die Matrix nicht symmetrisch ist.