homogeneity_completeness_v_measure#
- sklearn.metrics.homogeneity_completeness_v_measure(labels_true, labels_pred, *, beta=1.0)[source]#
同时计算同质性、完整性和 V-measure 分数。
这些指标基于聚类标签的归一化条件熵度量,用于在已知相同样本的真实类别标签的情况下进行评估。
如果一个聚类结果中的所有簇都只包含属于单个类别的数据点,则该聚类结果满足同质性(homogeneity)。
如果属于给定类别的所有数据点都位于同一个簇中,则该聚类结果满足完整性(completeness)。
这两个分数的值都在0.0到1.0之间,值越大越好。
这3个指标与标签的绝对值无关:类别或簇标签值的排列不会以任何方式改变分数。
V-Measure 此外还具有对称性:交换
labels_true和label_pred将得到相同分数。这对于同质性和完整性不成立。V-Measure 与使用算术平均方法的normalized_mutual_info_score相同。在 用户指南 中了解更多信息。
- 参数:
- labels_true形状为 (n_samples,) 的类数组
用作参考的真实类别标签。
- labels_pred形状为 (n_samples,) 的类数组
要评估的簇标签。
- betafloat, default=1.0
分配给
homogeneity与completeness的权重比例。如果beta大于1,则在计算中completeness的权重更大。如果beta小于1,则homogeneity的权重更大。
- 返回:
- homogeneityfloat
分数介于0.0和1.0之间。1.0表示完全同质的标签。
- completenessfloat
分数介于0.0和1.0之间。1.0表示完全完整的标签。
- v_measurefloat
前两者的调和平均值。
另请参阅
homogeneity_score聚类标签的同质性指标。
completeness_score聚类标记的完整性指标。
v_measure_scoreV-Measure(具有算术平均选项的 NMI)。
示例
>>> from sklearn.metrics import homogeneity_completeness_v_measure >>> y_true, y_pred = [0, 0, 1, 1, 2, 2], [0, 0, 1, 2, 2, 2] >>> homogeneity_completeness_v_measure(y_true, y_pred) (0.71, 0.771, 0.74)