v_measure_score#
- sklearn.metrics.v_measure_score(labels_true, labels_pred, *, beta=1.0)[source]#
- 给定真实标签的V-measure聚类标签。 - 此分数与 - normalized_mutual_info_score使用平均值的- 'arithmetic'选项相同。- V-measure是同质性和完整性的调和平均数。 - v = (1 + beta) * homogeneity * completeness / (beta * homogeneity + completeness) - 此度量独立于标签的绝对值:类或聚类标签值的排列不会以任何方式改变分数值。 - 此外,此度量是对称的:交换 - label_true和- label_pred将返回相同的分数值。当不知道真实的真实情况时,这对于测量两种独立的标签分配策略在同一数据集上的 agreement 非常有用。- 在用户指南中了解更多信息。 - 参数:
- labels_true形状为 (n_samples,) 的类数组
- 用作参考的真实类标签。 
- labels_pred形状为 (n_samples,) 的类数组
- 要评估的聚类标签。 
- beta浮点数,默认为 1.0
- 分配给 - homogeneity与- completeness的权重比率。如果- beta大于 1,则在计算中- completeness的权重更大。如果- beta小于 1,则- homogeneity的权重更大。
 
- 返回:
- v_measure浮点数
- 0.0 到 1.0 之间的分数。1.0 代表完全完整的标签。 
 
 - 另请参见 - homogeneity_score
- 聚类标签的同质性度量。 
- completeness_score
- 聚类标签的完整性度量。 
- normalized_mutual_info_score
- 归一化互信息。 
 - 参考文献 - 示例 - 完美的标签既同质又完整,因此得分 1.0。 - >>> from sklearn.metrics.cluster import v_measure_score >>> v_measure_score([0, 0, 1, 1], [0, 0, 1, 1]) np.float64(1.0) >>> v_measure_score([0, 0, 1, 1], [1, 1, 0, 0]) np.float64(1.0) - 将所有类成员分配给相同聚类的标签是完整的,但不是同质的,因此会受到惩罚。 - >>> print("%.6f" % v_measure_score([0, 0, 1, 2], [0, 0, 1, 1])) 0.8... >>> print("%.6f" % v_measure_score([0, 1, 2, 3], [0, 0, 1, 1])) 0.66... - 具有来自相同类的成员的纯聚类的标签是同质的,但不需要的分割会损害完整性,因此也会惩罚 V-measure。 - >>> print("%.6f" % v_measure_score([0, 0, 1, 1], [0, 0, 1, 2])) 0.8... >>> print("%.6f" % v_measure_score([0, 0, 1, 1], [0, 1, 2, 3])) 0.66... - 如果类成员完全分散在不同的聚类中,则分配完全不完整,因此 V-Measure 为零。 - >>> print("%.6f" % v_measure_score([0, 0, 0, 0], [0, 1, 2, 3])) 0.0... - 包含来自完全不同类的样本的聚类会完全破坏标签的同质性,因此 - >>> print("%.6f" % v_measure_score([0, 0, 1, 1], [0, 0, 0, 0])) 0.0... 
 
     
 
 
 
 
 
