zero_one_loss#
- sklearn.metrics.zero_one_loss(y_true, y_pred, *, normalize=True, sample_weight=None)[source]#
零一分类损失。
如果 normalize 为
True
,则返回错误分类的比例(浮点数),否则返回错误分类的数量(整数)。最佳性能为 0。更多信息请参阅用户指南。
- 参数:
- y_true一维类数组对象,或标签指示器数组/稀疏矩阵
真实(正确)标签。
- y_pred一维类数组对象,或标签指示器数组/稀疏矩阵
预测标签,由分类器返回。
- normalize布尔型,默认为 True
如果为
False
,则返回错误分类的数量。否则,返回错误分类的比例。- sample_weight形如 (n_samples,) 的类数组对象,默认为 None
样本权重。
- 返回:
- loss浮点型或整数型,
如果
normalize == True
,则返回错误分类的比例(浮点数),否则返回错误分类的数量(整数)。
另请参阅
accuracy_score
计算准确率分数。默认情况下,该函数将返回正确预测的比例除以总预测数。
hamming_loss
计算两组样本之间的平均汉明损失或汉明距离。
jaccard_score
计算 Jaccard 相似系数分数。
备注
在多标签分类中,zero_one_loss 函数对应于子集零一损失:对于每个样本,整个标签集必须被正确预测,否则该样本的损失等于一。
示例
>>> from sklearn.metrics import zero_one_loss >>> y_pred = [1, 2, 3, 4] >>> y_true = [2, 2, 3, 4] >>> zero_one_loss(y_true, y_pred) 0.25 >>> zero_one_loss(y_true, y_pred, normalize=False) 1.0
在带有二元标签指示符的多标签情况下
>>> import numpy as np >>> zero_one_loss(np.array([[0, 1], [1, 1]]), np.ones((2, 2))) 0.5