label_ranking_loss#
- sklearn.metrics.label_ranking_loss(y_true, y_score, *, sample_weight=None)[source]#
计算排序损失度量。
计算给定 y_score 的标签对中错误排序的平均数量,该数量按标签集大小和不在标签集中的标签数量加权。
这类似于错误集大小,但按相关和不相关标签的数量加权。当排序损失为零时,性能最佳。
在用户指南中阅读更多内容。
0.17 版新增:函数 label_ranking_loss
- 参数:
- y_true形状为 (n_samples, n_labels) 的 {类数组, 稀疏矩阵}
二进制指示器格式的真实二元标签。
- y_score形状为 (n_samples, n_labels) 的类数组
目标分数,可以是正类的概率估计、置信值或未阈值化的决策度量(由某些分类器的“decision_function”返回)。对于 decision_function 分数,大于或等于零的值应表示正类。
- sample_weight形状为 (n_samples,) 的类数组,默认为 None
样本权重。
- 返回:
- loss浮点数
给定 y_score 的标签对中错误排序的平均数量,该数量按标签集大小和不在标签集中的标签数量加权。
参考文献
[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