hamming_loss#
- sklearn.metrics.hamming_loss(y_true, y_pred, *, sample_weight=None)[源代码]#
计算平均海明损失。
海明损失是被错误预测的标签的比例。
阅读更多的 User Guide .
- 参数:
- y_true1D类数组或标签指示符数组/稀疏矩阵
地面真相(正确)标签。
- y_pred1D类数组或标签指示符数组/稀疏矩阵
预测标签,由分类器返回。
- sample_weight形状类似数组(n_samples,),默认=无
样本重量。
Added in version 0.18.
- 返回:
- lossfloat或int
返回元素之间的平均海明损失
y_true
和y_pred
.
参见
accuracy_score
计算准确度分数。默认情况下,该函数将返回正确预测的分数除以预测总数。
jaccard_score
计算Jaccard相似性系数得分。
zero_one_loss
计算零一分类损失。默认情况下,该函数将返回不完全预测的子集的百分比。
注意到
在多类分类中,海明损失对应于
y_true
和y_pred
相当于子集zero_one_loss
函数,当normalize
参数设置为True。在多标签分类中,海明损失与子集一一损失不同。如果给定样本的整个标签集与真实的标签集不完全匹配,则零-1损失将认为给定样本的整个标签集不正确。海明损失更宽容,因为它只惩罚个别品牌。
海明损失由子集零一损失为上界,当
normalize
参数设置为True。它总是在0和1之间,越低越好。引用
[1]格里戈里奥斯·祖马卡斯、扬尼斯·卡塔基斯。多标签分类:概述。国际数据仓库与挖掘杂志,3(3),1-13,2007年7月至9月。
[2]Wikipedia entry on the Hamming distance <https://en.wikipedia.org/wiki/Hamming_distance>
_.示例
>>> from sklearn.metrics import hamming_loss >>> y_pred = [1, 2, 3, 4] >>> y_true = [2, 2, 3, 4] >>> hamming_loss(y_true, y_pred) 0.25
在具有二进制标签指示符的多标签情况下:
>>> import numpy as np >>> hamming_loss(np.array([[0, 1], [1, 1]]), np.zeros((2, 2))) 0.75