敬请关注 YOLO Vision 2025!
2025年9月25日
英国夏令时 10:00 - 18:00
混合活动
Yolo Vision 2024
词汇表

损失函数

探索机器学习中损失函数的作用、类型、重要性以及在 YOLO 和目标检测等实际 AI 应用中的应用。

损失函数,也称为成本函数或目标函数,是机器学习 (ML)深度学习 (DL)中的一个基本组成部分。它量化了模型预测输出与给定数据的实际真实标签之间的差异,即“损失”。损失函数计算出的值可以衡量模型的性能优劣。 模型训练过程的主要目标是最小化此值,从而提高模型的准确性和性能。

损失函数的工作原理

在每次训练迭代期间,模型处理一批训练数据并进行预测。然后,损失函数将这些预测与真实标签进行比较。较高的损失值表示较大的差异和更大的校正需求,而较低的损失值表示模型的预测更接近实际值。

此损失值至关重要,因为它提供了模型学习所需的信号。此信号由优化算法(例如随机梯度下降 (SGD))使用,以调整模型的内部参数或模型权重反向传播过程计算损失函数相对于这些权重的梯度,指示应调整权重的方向以减少损失。这种计算损失和更新权重的迭代过程使模型逐渐收敛到可以做出高度准确预测的状态。

常见损失函数类型

损失函数的选择在很大程度上取决于模型旨在解决的特定任务。不同的问题需要不同的误差测量方法。一些常见的类型包括:

  • 均方误差 (MSE): 一种常用的回归任务损失函数,其目标是预测连续数值。它计算预测值与实际值之间差异的平方的平均值。
  • 交叉熵损失: 广泛用于图像分类任务。它衡量分类模型的性能,该模型的输出是介于 0 和 1 之间的概率值。在训练模型以区分多个类别(例如对ImageNet数据集中的图像进行分类)时,它非常有效。
  • 交并比 (IoU) 损失: IoU 的变体对于 目标检测 任务至关重要。这些损失函数(例如 GIoU、DIoU 和 CIoU)衡量预测的 边界框 与真实框之间的差异。它们是训练精确目标检测器(如 Ultralytics YOLOv8)不可或缺的一部分。
  • Dice Loss: 常用于图像分割,尤其是在医学图像分析中,用于测量预测的分割掩码和实际分割掩码之间的重叠。它对于处理类别不平衡特别有用。

实际应用

损失函数是训练几乎所有深度学习模型的核心。

  1. 自动驾驶车辆:自动驾驶车辆的开发中,训练目标检测模型以识别行人、其他汽车和交通标志。在训练期间,损失函数会组合多个组成部分:一部分计算对每个对象进行分类(例如,汽车与行人)的误差,而另一部分(通常是基于 IoU 的损失)计算定位对象边界框的误差。最大限度地减少这种组合损失有助于创建强大的模型,以实现安全导航,这是汽车解决方案中的人工智能的关键组成部分。
  2. 医疗诊断:医疗保健领域AI中,像U-Net这样的模型经过训练用于语义分割,以识别医学扫描中的肿瘤。诸如Dice Loss或Cross-Entropy和Dice Loss的组合之类的损失函数用于将模型预测的肿瘤掩膜与放射科医生注释的掩膜进行比较。通过最小化医学图像数据集上的这种损失,该模型学习准确地描绘病理区域,从而有助于更快,更精确的诊断。

与其他关键概念的关系

区分损失函数与机器学习中其他相关概念非常重要。

  • 损失函数 vs. 评估指标: 这是一个至关重要的区别。损失函数用于训练期间,以指导优化过程。它们必须是可微分的,以允许基于梯度的学习。相比之下,诸如准确率(Accuracy)精确率(Precision)召回率(Recall)平均精度均值(mAP)之类的评估指标在训练之后(在验证数据测试数据上)用于评估模型的实际性能。虽然较低的损失通常与更好的指标分数相关,但它们的用途不同。您可以在我们的指南中了解更多关于性能指标的信息。
  • 损失函数 vs. 优化算法: 损失函数定义了目标——需要最小化的内容。优化算法,例如 Adam 优化器,定义了机制——如何通过基于计算出的梯度和学习率更新模型权重来最小化损失。
  • 过拟合和欠拟合: 监控训练集和验证集上的损失是诊断这些常见问题的关键。如果训练损失持续减少而验证损失开始增加,则可能发生过拟合。如果两个集合上的损失值都很高,则表明欠拟合。我们的模型训练技巧等指南中讨论了这些见解。

对于任何参与构建和训练 AI 模型的人来说,理解损失函数至关重要。Ultralytics HUB 等平台抽象化了大部分复杂性,自动处理损失函数的实现和优化,从而更容易构建高级计算机视觉 (CV)模型。

加入 Ultralytics 社区

加入人工智能的未来。与全球创新者联系、协作和共同成长

立即加入
链接已复制到剪贴板