label_ranking_loss#

sklearn.metrics.label_ranking_loss(y_true, y_score, *, sample_weight=None)[源代码]#

计算排名损失度量。

计算给定 y_score 时错误排序的标签对的平均数量,并按标签集大小和不在标签集中的标签数量进行加权。

这类似于错误集大小,但按相关和不相关标签的数量进行加权。最佳性能的排名损失为零。

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

0.17 版新增: 一个函数label_ranking_loss

参数:
y_true{array-like, 稀疏矩阵},形状 (n_samples, n_labels)

采用二元指示符格式的真实二元标签。

y_score形状为 (n_samples, n_labels) 的类数组对象

目标得分,可以是正类的概率估计、置信度值,或非阈值化的决策度量(如某些分类器返回的“decision_function”)。对于decision_function得分,大于或等于零的值应指示正类。

sample_weightshape 为 (n_samples,) 的 array-like, default=None

样本权重。

返回:
loss浮点数

给定 y_score 时错误排序的标签对的平均数量,按标签集大小和不在标签集中的标签数量进行加权。

References

[1]

Tsoumakas, G., Katakis, I., & Vlahavas, I. (2010). Mining multi-label data. In Data mining and knowledge discovery handbook (pp. 667-685). Springer US.

示例

>>> from sklearn.metrics import label_ranking_loss
>>> y_true = [[1, 0, 0], [0, 0, 1]]
>>> y_score = [[0.75, 0.5, 1], [1, 0.2, 0.1]]
>>> label_ranking_loss(y_true, y_score)
0.75