资讯

错误率是什么?分类错的样本占总数的比例

2026-11-053 分钟阅读百科
TL;DR错误率(Error Rate)是分类错误的样本数占样本总数的比例,等于 1 减去准确率,是最直观的分类评价指标;训练集上的错误率称训练误差,新数据上的称泛化误差;在类别不平衡或不同错误代价不同时,错误率会掩盖问题,需结合精确率、召回率、代价敏感错误率等指标。

错误率(Error Rate)是评价分类模型最基本、最直观的指标:在所有的样本中,被模型分类错误的样本所占的比例。比如在 100 个测试样本中,模型分错了 8 个,错误率就是 8%。与之相对的是准确率,也叫精度,它是分类正确的样本所占的比例。两者之和等于 1,所以错误率为 8% 时,准确率就是 92%。

训练误差和泛化误差

在机器学习中,错误率可以在不同的数据上计算。模型在训练集上的错误率,叫作训练误差或经验误差;模型在新的、从未见过的数据上的错误率,叫作泛化误差。我们真正关心的是泛化误差,因为模型最终要用来处理新的数据。但泛化误差无法直接计算,通常用模型在单独留出的测试集上的错误率来估计它,这叫测试误差。如果训练误差很低而测试误差很高,说明模型出现了过拟合;如果两者都很高,则说明模型欠拟合。

错误率的局限:类别不平衡

错误率虽然直观,但在很多情况下会产生误导,其中最常见的是类别不平衡的问题。假设在一个信用卡交易的数据集中,只有 0.1% 的交易是欺诈。一个什么都不做、把所有交易都判定为“正常”的模型,错误率只有 0.1%,准确率高达 99.9%,看起来非常出色,但它实际上一笔欺诈交易也没有发现,完全没有用处。在这种情况下,错误率无法反映模型在我们真正关心的少数类别上的表现,需要使用其他的指标:查准率,也叫精确率,衡量被模型判为欺诈的交易中,有多少真的是欺诈;查全率,也叫召回率,衡量所有的欺诈交易中,有多少被模型找了出来;以及综合两者的 F1 分数、ROC 曲线下的面积等。混淆矩阵能够清楚地展示模型在每个类别上犯了哪些错误。

错误率的局限:不同错误的代价不同

错误率把所有的错误都看作同等的严重,但在实际应用中,不同类型的错误后果往往相差悬殊。比如在癌症筛查中,把一个病人误诊为健康,可能会耽误治疗,后果严重;而把一个健康的人误诊为可疑,只是需要做一次进一步的检查。如果两个模型的错误率相同,但一个主要犯前一种错误、另一个主要犯后一种错误,它们在实际中的价值是完全不同的。这时可以使用代价敏感错误率:给不同类型的错误分配不同的代价,计算加权之后的总体代价,而不是简单地数错误的个数。

其他需要注意的地方

测试集要有代表性:错误率的估计依赖于测试集,如果测试集太小,估计的结果波动会很大;如果测试集与实际的数据分布不同,估计的结果也会有偏差。常用交叉验证来获得更稳定的估计。比较时要考虑统计的显著性:两个模型的错误率相差一点点,可能只是随机的波动,并不代表一个真的比另一个好,可以通过假设检验来判断差异是否显著。在多分类的任务中,比如图像识别,除了标准的错误率之外,还常用“前五错误率”:只要正确的类别出现在模型预测的概率最高的五个类别之中,就不算错误。ImageNet 图像识别比赛长期以来就以前五错误率作为主要的评价指标。