标签排序平均精确率评分#
- sklearn.metrics.label_ranking_average_precision_score(y_true, y_score, *, sample_weight=None)[source]#
计算基于排名的平均精确率。
标签排序平均精确率 (LRAP) 是对分配给每个样本的每个真实标签的平均值,它是得分较低的真实标签与总标签之比。
此指标用于多标签排序问题,其目标是为与每个样本关联的标签赋予更好的排名。
所得分数始终严格大于 0,最佳值为 1。
在 用户指南 中了解更多信息。
- 参数:
- y_true形状为 (n_samples, n_labels) 的 {array-like, sparse matrix}
采用二元指示符格式的真实二元标签。
- y_score形状为 (n_samples, n_labels) 的 array-like
目标分数,可以是正类的概率估计、置信值或决策的非阈值度量(某些分类器上的“decision_function”返回)。
- sample_weight形状为 (n_samples,) 的 array-like,默认为 None
样本权重。
在 0.20 版本中添加。
- 返回值:
- score浮点数
基于排名的平均精确率得分。
示例
>>> import numpy as np >>> from sklearn.metrics import label_ranking_average_precision_score >>> y_true = np.array([[1, 0, 0], [0, 0, 1]]) >>> y_score = np.array([[0.75, 0.5, 1], [1, 0.2, 0.1]]) >>> label_ranking_average_precision_score(y_true, y_score) np.float64(0.416...)