sklearn.metrics.homogeneity_score¶
sklearn.metrics.homogeneity_score(labels_true, labels_pred)
给定真实值的聚类标签的同质性度量。
如果聚类结果的所有聚类仅包含属于单个类的成员的数据点,则聚类结果满足同质性。
此指标独立于标签的绝对值:类别或簇标签值的排列不会以任何方式改变得分值。
此度量不是对称的:将label_true与label_pred切换将返回completeness_score
,该分数通常会有所不同。
在用户指南中阅读更多内容。
参数 | 说明 |
---|---|
labels_true | int array, shape = [n_samples] 真实类标签用作参考 |
labels_pred | array-like of shape (n_samples,) 聚类标签以进行评估 |
返回值 | 说明 |
---|---|
homogeneity | float 分数介于0.0和1.0之间。 1.0代表完全的均质贴标 |
另见:
参考
示例
完全标签是同质的:
>>> from sklearn.metrics.cluster import homogeneity_score
>>> homogeneity_score([0, 0, 1, 1], [1, 1, 0, 0])
1.0
可以将类进一步划分为更多类的非完全标签可以是完全同质的:
>>> 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
包含来自不同类别的样本的聚类无法进行均质标记:
>>> 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...