You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

YOLOv4使用的完整损失函数是什么?

YOLOv4 完整损失函数说明

YOLOv4的损失函数在YOLOv3的基础上优化了定位损失分支,整体由3个独立分支的损失加权求和组成,具体如下:

1. 定位损失(边界框回归损失)

使用CIoU损失替代了原有YOLOv3的均方误差损失,同时考虑了预测框与真实框的重叠度、中心点距离、宽高比一致性三个核心维度,解决了传统IoU损失在框无重叠时梯度消失、回归方向不精准的问题:

  • 计算公式:L_ciou = 1 - IoU + ρ²(b, b_gt)/c² + αv
  • 参数说明:
    • ρ:预测框中心点b与真实框中心点b_gt的欧氏距离
    • c:可同时包裹预测框和真实框的最小外接矩形的对角线长度
    • α:权重平衡参数
    • v:预测框与真实框的宽高比一致性度量值

2. 置信度损失

使用二元交叉熵损失计算,用于判断锚框内是否存在目标,训练过程中会对负样本做难例挖掘,将正负样本比例控制在1:3左右避免样本失衡:

  • 计算公式:L_obj = -λ_obj * [y_gt * log(y_pred) + (1 - y_gt) * log(1 - y_pred)]
  • 参数说明:
    • λ_obj:置信度损失的预设权重系数
    • y_gt:真实置信度标签,锚框内有目标为1,无目标为0
    • y_pred:网络输出的置信度预测值

3. 分类损失

同样使用二元交叉熵损失计算,每个类别独立做二分类判断,无需使用softmax归一化,支持单框多标签的检测场景:

  • 计算公式:L_cls = -λ_cls * Σ [y_cls_gt * log(y_cls_pred) + (1 - y_cls_gt) * log(1 - y_cls_pred)]
  • 参数说明:
    • λ_cls:分类损失的预设权重系数
    • 求和范围覆盖所有检测类别
    • y_cls_gt:对应类别的真实标签,存在该类目标为1,否则为0
    • y_cls_pred:网络输出的对应类别预测概率

总损失

最终模型训练的整体损失为三个分支损失之和:L_total = L_ciou + L_obj + L_cls

实际训练时可根据数据集的具体场景调整三个分支损失的权重系数,官方默认配置下定位损失权重最高,其次为置信度损失,分类损失权重最低。

内容的提问来源于stack exchange,提问作者Gaurav Sharma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 22:21:02