SSD系列3——损失计算

文章详细介绍了SSD(SingleShotMultiBoxDetector)在目标检测中的损失计算过程,包括如何确定正负样本标签,基于IoU的阈值策略,定位损失的计算采用smoothL1损失函数,以及难样本挖掘策略,确保训练过程中样本的平衡。同时,文章提到了类别损失是通过交叉熵损失函数来计算的,正负样本均参与其中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SSD系列:
SSD系列1——网络结构
SSD系列2——PriorBox
SSD系列3——损失计算

一、确定正、负样本标签

  损失计算的第一步是对所有的PriorBox赋予正、负样本的标签,并确定对应的真实物体标签。

  在SSD的PriorBox生成过程中,一共生成了8732个PriorBox坐标以及对应的类别、位置预测值,接下来就要为每一个PriorBox贴标签,筛选出符合条件的正样本和负样本,依据是通过预测值与真值之间的IoU值来判断:

  • 在判断正、负样本时,IoU阈值设置为0.5,即一个PriorBox与所有真实框的最大IoU小于0.5时,判断该框为负样本。
  • 判断对应关系时,将PriorBox与其拥有最大IoU的真实框作为其位置坐标。
  • 与真实框有最大IoU的PriorBox,即使该IoU不是此PriorBox与所有真实框IoU中最大的IoU,也要将该Box对应到真实框上,这是为了保证真实框的Recall。
  • 在预测边框位置时,SSD与Faster RCNN相同,都是预测相对于预测框的偏移量,因此在求得对应关系后,还需要进行偏移量的计算,公式参考Faster RCNN系列2——RPN的真值与预测值概述

二、定位损失的计算

  第一步完成后,就有了正、负样本及每一个样本对应的真实框,此时可以进行定位损失计算,SSD使用 s m o o t h L 1 0 smooth_{L1}0 smoothL10函数作为定位损失函数,并且只对正样本计算,公式参考:Faster RCNN系列3——RPN的真值详解与损失值计算

三、难样本挖掘

  在完成第一步后,由于一张图像中物体的数量不会太多,因此会存在大量的负样本,如果此时进行损失计算,则正样本起到的作用微乎其微。

  SSD通过保证正、负样本的比例来实现样本均衡,具体做法为计算出所有负样本的损失后进行排序,选取损失值较大的一部分进行反向传播,舍弃剩下的负样本,负样本的数量为正样本的3倍。

四、类别损失计算

  SSD使用交叉熵损失进行类别损失计算,且正、负样本全部参与计算,公式参考Faster RCNN系列3——RPN的真值详解与损失值计算

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

晓shuo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值