YOLO(You Only Look Once)是一种实时的目标检测方法,其主要特点是将目标检测任务转化为一个回归问题,从而实现端到端的训练和检测。在YOLO中,正负样本不均衡问题主要体现在大量的背景区域(负样本)和少量的目标区域(正样本)之间。为了解决这个问题,YOLO采取了以下策略:
-
「设计损失函数」:YOLO的损失函数考虑了类别不均衡问题。YOLO的包含目标的边框(即正样本)的损失函数包括对于边框坐标的预测,置信度和分类的损失;不包含目标的边框(即负样本)的损失函数设计主要是是置信度损失
-
但是对于不包含目标的边框的损失,YOLO给予了较小的权重。
-
「选择正样本」:对于每一个真实目标,YOLO选择预测边框和真实边框的IoU(交并比)最大的边框作为正样本,这样可以保证每一个真实目标都有一个正样本进行学习。
YOLO中的object分支用于预测每一个预测边框的目标性(objectness),即这个边框中是否包含一个目标。object分支的输出是一个介于0和1之间的实数,值越大表示这个边框中包含目标的可能性越大。在预测阶段,YOLO通常会设定一个阈值(如0.5),只有object分支的输出大于这个阈值的边框才会被保留下来。object分支的引入可以帮助YOLO更准确地定位目标,减少虚假检测。