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

交并比(IoU)应当用作评估指标还是损失函数?

IoU使用场景说明

IoU同时支持评估指标和损失函数两种用法,两种场景的差异如下:

仅作为评估指标(最常见的基础用法)

这是IoU的原生使用场景,计算预测边界框/分割掩码和真实标注的交并比,取值范围0~1,数值越高代表预测结果和真实值重合度越高,对应目标检测、实例分割等任务的模型效果越好。
这种场景下IoU只会在模型验证、测试阶段计算,仅用来监控模型性能,不会参与训练过程的梯度计算,对反向传播没有任何影响。

作为损失函数参与反向传播

原生IoU本身不可微分:当预测框和真实框完全无重叠时,IoU恒为0,梯度也为0,反向传播无法推动参数更新,因此不能直接作为损失函数使用。
学界和工业界已经推出了多款可微分的IoU变体,改造后可以直接加入损失函数参与训练:

  • GIoU(通用IoU):解决无重叠时梯度消失的问题
  • DIoU(距离IoU):在GIoU基础上新增了预测框与真实框的中心距离惩罚
  • CIoU(完整IoU):在DIoU基础上额外加入宽高比一致性惩罚
    这些可微分IoU变体作为损失项加入训练时,数值会直接参与梯度计算,反向传播时会根据损失值更新模型参数,相比传统的L1/L2边界框回归损失,通常能带来更快的收敛速度和更高的定位精度。

简单判断方法:如果代码中IoU仅用来打印日志、记录指标,就是评估用途;如果计算后加入了总损失的求和计算,就是作为损失函数参与训练的用法。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 14:54:01