Ultralytics YOLO27: 加入候补名单。
获取 YOLO 许可
指南

机器学习中的准确率、精确率与召回率对比

了解机器学习中的准确率、精确率和召回率如何运作、它们与混淆矩阵和 F1 分数有何关系,以及何时应使用各项指标。

Abirami VinaAbirami Vina8 分钟阅读
机器学习中的准确率、精确率和召回率

机器学习 (ML) 是人工智能 (AI) 的一个分支,专注于创建能够从数据中学习的系统。它在许多其他 AI 领域中发挥着核心作用,包括计算机视觉(机器借此解读图像)以及自然语言处理(机器借此理解和生成自然语言)。

这类 AI 模型通常使用深度学习技术从数据中作出预测。虽然这类系统可能非常有效,但它们并不总能给出正确的预测。有些输出可能准确,有些则可能偏离目标。

了解这些错误如何产生,是评估模型表现的重要环节。要衡量模型表现,我们可以使用模型评估指标。

常见评估指标包括准确率(整体正确程度)、精确率(正向预测的可靠程度)和召回率(模型识别实际正例的能力)。乍看之下,它们似乎相似,但每个指标关注模型行为的不同方面。

本文将深入介绍这些 AI 模型性能指标,并探讨它们之间的关系,以及如何为你的用例选择合适的指标。

模型评估指标对机器学习至关重要#

机器学习模型乍看之下可能表现不错。但如果没有合适的评估指标,就很难了解模型结果的准确程度。这些指标为模型评估提供了结构化依据,并帮助回答一个关键问题:模型的预测对于特定任务是否有用且可靠?

准确率、精确率和召回率等指标,为 AI 开发者提供了清晰的方法来衡量模型的表现。例如,在比较不同模型时,这些指标可以帮助判断哪个模型在特定任务上表现最佳。它们有助于评估性能,并指导你选择最符合 AI 项目目标的模型。

模型训练和评估工作流

图 1. 模型训练和评估工作流(来源)

这些指标还能让性能比较更加客观。它们不依赖猜测或不完整的观察,而是提供可量化的信息,帮助了解模型在不同情况下的表现。这样一来,它们就能揭示在每种情境下哪些性能方面最重要。

例如,指标的选择通常取决于应用场景。在 AI 医疗保健应用中,召回率很重要,因为目标是尽可能识别更多正例,即使有些负例可能被误判为正例。相反,电子邮件垃圾邮件过滤器可能会优先考虑精确率,以避免将正常邮件误标为垃圾邮件。

混淆矩阵:分类指标的基础#

对于二分类,混淆矩阵是一个 2×2 表格,是评估 AI 模型的基础工具。它通过比较实际结果与预测结果(即模型给出的答案),将预测归入四个类别。

这种比较能够详细展示模型的表现。它是精确率和召回率等关键评估指标的基础,这些指标直接根据矩阵中的数值计算得出。

表格的行代表实际类别,列代表预测类别。每个单元格都显示对应类别的结果数量。简单来说,它展示了有多少预测是正确的,以及模型犯了哪些类型的错误。

当数据不平衡,也就是某些类别的样本远多于其他类别时,混淆矩阵尤其有用。当不同类型的错误会带来不同代价时,它也很有帮助。

例如,在欺诈检测中,发现欺诈活动至关重要,但将真实交易误标为欺诈也会造成问题。混淆矩阵可以清楚地显示每种错误发生的频率。

混淆矩阵的组成部分#

以下是混淆矩阵中不同组成部分的概览:

  • 真正例(TP):当模型正确预测某个实例为正例时,该实例记为真正例。例如,计算机视觉模型正确识别出图像中的一辆车。
  • 真负例(TN):当模型正确识别某个实例为负例时,就会出现真负例。例如,电子邮件分类器将一封普通邮件标记为非垃圾邮件。
  • 假阳性(FP): 当模型错误地将实际为负的样本预测为正时,就会产生假阳性。这也称为第一类错误,例如欺诈检测系统将一笔有效交易标记为欺诈交易。
  • 假阴性(FN): 当模型未能检测到正例,错误地将其预测为负时,就会记录为假阴性。这也称为第二类错误,例如诊断工具未能发现患者身上的疾病,而患者实际上确实患病。

混淆矩阵的组成部分

图 2. 混淆矩阵的组成部分(来源)

混淆矩阵的可视化表示与解读#

混淆矩阵以网格形式呈现。纵轴表示实际类别,横轴表示预测类别。正确预测显示在对角线上,代表真正例和真负例。

错误位于对角线之外,包括假正例和假负例。这种结构让人能够轻松发现模型的优势和不足。

什么是机器学习中的准确率?#

准确率是评估机器学习模型表现最常用的指标之一。它衡量所有类别中的预测有多少是正确的。换句话说,它回答了一个简单的问题:AI 模型作出的所有预测中,有多少是正确的?

准确率的计算公式是:正确预测的数量(包括真正例和真负例)除以预测总数。准确率计算直接、易于理解,因此常被用作模型评估的起点。

通常,在处理平衡数据集时,准确率是可靠的。但在某个类别占主导地位的不平衡数据集中,准确率往往会产生误导。即使模型总是预测为多数类,仍可能取得很高的准确率,却无法识别其他少数类。

例如,在只有少数图像包含行人的图像数据集中,如果模型对每张图像都预测“没有行人”,仍可能取得很高的准确率,却完全无法检测出实际存在的行人。

这是因为准确率本身无法体现模型会犯哪些类型的错误,也无法显示这些错误发生的频率。因此,还需要关注精确率和召回率等指标,才能全面了解 AI 模型的表现。

深入了解精确率:减少误报#

精确率是一项关键评估指标,用于衡量模型正向预测的准确程度。它回答的问题是:所有被预测为正例的实例中,有多少是正确的?

精确率的计算公式是:真正例数量除以真正例与假正例数量之和。当正向预测一旦出错就会造成高昂代价时,精确率尤其重要。

准确率与精确率对比

图 3. 准确率与精确率对比。(来源)

例如,在欺诈检测中,精确率较低的模型可能会将许多有效交易标记为欺诈,给用户和支持团队都带来不必要的麻烦。精确率较高的模型可以降低这种风险,确保被标记的交易更有可能确实属于欺诈。

虽然高精确率是好事,但过于注重精确率的模型可能会变得非常挑剔,漏掉实际正例。因此,人们通常会同时查看精确率和召回率,以保持性能均衡。

什么是召回率?#

召回率是一项用于衡量模型识别实际正例能力的指标。它也称为敏感度或真正例率,回答的问题是:所有实际正例中,模型正确检测出了多少?

召回率的计算公式是:真正例数量除以真正例与假负例数量之和。较高的召回率得分表明,模型捕捉到了数据中大多数真实正例。

召回率在医疗保健等行业至关重要,因为漏掉某种病症可能会延误治疗,使患者面临风险。即使有些负例被错误标记,识别出所有真实病例仍是首要任务。

不过,只关注召回率的模型可能会标记过多假阳性,从而降低精确率,损害模型的整体效率。要让 AI 模型可靠地运行,平衡召回率和精确率至关重要。

平衡之道:精确率与召回率的权衡#

精确率和召回率往往此消彼长。一个指标提高时,另一个可能下降。这种权衡是机器学习任务中的常见挑战。

高精确率模型只有在有把握时才会预测为正例。这样可以减少误报,但可能漏掉真实正例,从而降低召回率。试图捕捉所有正例的模型能提高召回率,但也可能造成更多误报,进而降低精确率。

调整模型的决策阈值后,这种权衡会更加明显。阈值是系统用来将分数或概率转化为操作或标签的界限。降低阈值会让系统更频繁地作出正向判断,这可能提高召回率,但也可能降低精确率。提高阈值则会产生相反效果:模型预测的正例更少,精确率提高,但召回率通常会下降。

假设你正在开发垃圾邮件检测系统。模型必须在让垃圾邮件进入收件箱的风险与拦截正常邮件的风险之间取得平衡。严格的过滤器可能会误拦合法邮件,而宽松的过滤器则可能放过一些垃圾邮件。合适的平衡取决于具体用例以及每种错误带来的成本。

精确率-召回率曲线的重要性#

精确率-召回率曲线(PR 曲线)展示了模型决策阈值变化时,精确率和召回率如何变化。曲线上的每个点都代表两者之间的一种不同权衡。对于某个类别出现频率远低于其他类别的不平衡数据集,PR 曲线尤其有用。

对于不平衡数据,它通常比受试者工作特征(ROC)曲线更能提供有意义的洞察;ROC 曲线同样展示模型在不同决策阈值下区分正例和负例的能力。精确率和召回率都很高的模型,其精确率-召回率曲线会保持在右上角附近,这通常是理想的表现。

F1 分数简介:用于平衡的综合指标#

F1 分数用单个数值体现精确率和召回率之间的平衡。F1 分数的计算方法是:精确率与召回率的乘积乘以二,再除以精确率与召回率之和。当假正例和假负例都很重要时,F1 分数很有用;在处理不平衡数据集,或需要全面评估模型性能时,它也很有帮助。

使用精确率和召回率计算 F1 分数

图 4. 使用精确率和召回率计算 F1 分数(来源)

准确率、精确率和召回率之外#

准确率、精确率和召回率固然重要,但其他指标也能根据模型类型和数据集特征提供更多见解。

以下是一些常用指标,可帮助评估性能的不同方面:

  • 特异度:衡量模型识别实际负例的能力。当避免假阳性很重要时,这项指标很有用。
  • AUC: AUC,即曲线下面积,用一个分数表示模型区分不同类别的能力。
  • 对数损失:对数损失用于衡量模型预测时的置信程度,并会对高置信度的错误预测施加更大的惩罚。这里的置信度指模型对其预测结果的确信程度。
  • 多标签评估:在多标签任务中,会对各标签的指标取平均,以反映模型的整体性能。

在计算机视觉中应用准确率、精确率和召回率#

现在,我们对准确率、精确率和召回率有了更清晰的认识,接下来看看这些指标如何应用于计算机视觉。

像 Ultralytics YOLO11 这样的计算机视觉模型支持目标检测等任务:模型会识别图像中有哪些物体,并使用边界框定位这些物体。每个预测结果都包含物体标签和位置,因此评估过程比单纯检查标签是否正确更复杂。

Ultralytics YOLO11 在购物车中检测并计数香蕉、樱桃、橙子、牛油果和哈密瓜

图 5. 使用 Ultralytics YOLO11 进行目标检测的示例。(来源)

设想一个零售应用:摄像头用于自动追踪货架上的商品。目标检测模型可以识别麦片盒、汽水罐或水瓶等商品,并标记它们的位置。

在这种情况下,精确率告诉我们检测到的商品中有多少是正确的。精确率高意味着系统能避免假阳性,例如不会把阴影或背景物体误标为商品。召回率则显示模型成功检测到了货架上多少实际商品。召回率高意味着漏掉的商品更少,这对准确盘点至关重要。

准确率仍能提供总体正确性的衡量方式,但在这种场景下,即使漏掉少数商品或检测到并不存在的商品,也可能对库存管理造成重大影响。因此,开发者会综合考察精确率、召回率和准确率,确保系统可靠且适用于实际场景。

准确率、精确率和召回率:要点总结#

准确率、精确率和召回率分别体现了机器学习模型性能的不同方面。只依赖一个指标可能会产生误导。

混淆矩阵、精确率-召回率曲线和 F1 分数等工具与指标有助于揭示权衡关系,并指导如何改进 ML 模型。为特定 AI 解决方案选择合适的指标组合,可以确保模型在实际应用中准确、可靠且有效。

加入不断壮大的社区!查看我们的 GitHub 代码仓库,了解更多 AI 相关信息。准备好开始计算机视觉项目了吗?看看我们的许可选项。访问我们的解决方案页面,了解农业 AI和机器人视觉 AI!

作者

Abirami Vina
Abirami Vina

内容创作者 · Ultralytics

Abirami Vina 职业生涯始于计算机视觉工程师,由此在视觉 AI 和机器学习领域打下了坚实基础。她是 Ultralytics 的内容创作者,也是 Scribe of AI 的创始人兼首席撰稿人,为专注 AI 的公司撰写高质量技术内容。她热衷于让 AI 更易理解、更具吸引力,通过自己的作品连接前沿技术与现实影响。

评论

提出问题、分享你的结果,或帮助其他人。

探索解决方案

体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

使用 Ultralytics YOLO 将无人机和航空影像转化为农业、水产养殖、保护工作和地理空间分析的实时洞察。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 将计算机视觉应用于航空航天领域,包括飞机检查、跑道 FOD 检测、机场地面作业和复合材料缺陷检测。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情

让我们携手构建 AI 的未来!

开启你的旅程,迎接机器学习的未来