pair_confusion_matrix#

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

来自两个聚类的对混淆矩阵。

对混淆矩阵 \(C\) 通过考虑所有样本对,并计算在真实聚类和预测聚类下被分配到相同或不同簇的样本对数量,来计算两个聚类之间的 2x2 相似度矩阵 [1]

如果将聚集在一起的样本对视为正样本对,那么正如在二分类中所定义的那样,真负例数量为 \(C_{00}\),假负例为 \(C_{10}\),真正例为 \(C_{11}\),假正例为 \(C_{01}\)

用户指南 中阅读更多内容。

参数:
labels_true形状为 (n_samples,) 的类数组

用作参考的真实类别标签。

labels_pred形状为 (n_samples,) 的类数组

要评估的簇标签。

返回:
Cndarray,形状为 (2, 2),dtype=np.int64

列联矩阵。

另请参阅

sklearn.metrics.rand_score

Rand 指数。

sklearn.metrics.adjusted_rand_score

调整后的 Rand 指数。

sklearn.metrics.adjusted_mutual_info_score

调整互信息(Adjusted Mutual Information)。

References

示例

完全匹配的标签无论实际标签值如何,所有非零条目都位于对角线上

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

将所有类成员分配到相同簇的标签是完整的,但不一定是纯净的,因此会受到惩罚,并具有一些对角线外的非零条目

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

注意,该矩阵不是对称的。