论文阅读二:Giou loss

在这里插入图片描述
论文链接 arxiv.org/abs/1902.09630
论文来自美国斯坦福大学和澳大利亚阿德莱德大学

一、论文提出的问题

  论文中,作者指出,使用的 l 1 l_1 l1 l 2 l_2 l2norm,以及IoU作为位置回归的损失时的问题,并且提出了GIoU作为优化方案。
在这里插入图片描述
  上图中(从论文中得到),绿框是ground truth框,黑框是网络 predicted出来的框,位置回归损失的作用是,衡量ground truth框和predicted框之间的差距。使用 l 1 l_1 l1 l 2 l_2 l2norm作为位置回归的损失函数事,可以看到不同的情况下,居然得到的损失值是相同的,也就是,这种方法不能够正确反映regression的效果。如果使用IoU作为损失函数,因为 I o U = ∣ A ⋂ B ∣ ∣ A ⋃ B ∣ IoU = \frac{|A\bigcap B|}{|A \bigcup B|} IoU=ABAB
  那么IoU本身就有一个很大的问题,就是A和B没有交集,IoU值就是0,IoU就不正确能反映A和B的关系。

二、论文解决方案 GIoU

2.1 什么是GIoU

在这里插入图片描述
  上图的算法1中给出了GIoU的算法步骤,利用下图的才彩色框,可以有助理解,两个有重叠部分的绿色框A和红色框B,其中紫色框 D = ∣ A ⋂ B ∣ D = |A \bigcap B| D=AB ,蓝色的面积+红色的面积+紫色的面积 = ∣ A ⋃ B ∣ = |A \bigcup B| =AB ,最外围的框C是包含框A和框B的最小的框,GIoU的等式中, ∣ C \ ( A ⋃ B ) ∣ ∣ C ∣ \frac {|C \backslash (A \bigcup B)|} {|C|} CC\(AB) 的意思是,分子是最小外围框C的面积中,除去蓝色的面积+红色的面积+紫色的面积,也即是白色的面积,除以最小外围框C的面积。
在这里插入图片描述

2.2 GIoU的特点

   1、由上面的公式可以得到:GIoU(A, B) ≤ IoU(A, B),也即是,GIoU是IoU的下界,拥有和IoU同样的性质 ;
   2、如果A和B完全重合时,GIoU(A, B) = IoU(A, B);

三、GIoU在SSD中的可视化

3.1 三种位置回归损失函数

1、SmoothL1Loss
S m o o t h L 1 L o s s = l o s s ( x , y ) = 1 n ∑ i z i SmoothL1Loss = loss(x, y) = \frac{1}{n} \sum_i z_i SmoothL1Loss=loss(x,y)=n1izi
其中 z i z_i zi是这样计算的:
f ( n ) = { 0.5 ( x i − y i ) 2 , if  ∣ x i − y i ∣ < 1 ∣ x i − y i ∣ − 0.5 , if otherwise f(n)= \begin{cases} 0.5(x_i - y_i)^2, & \text {if $|x_i - yi| < 1$} \\ |x_i - y_i| - 0.5, & \text{if otherwise} \end{cases} f(n)={0.5(xiyi)2,xiyi0.5,if ∣xiyi<1if otherwise
2、IoU loss
L o s s I o U = 1 − I o U Loss_{IoU} = 1 - IoU LossIoU=1IoU
3、GIoU loss
L o s s I o U = 1 − G I o U Loss_{IoU} = 1 - GIoU LossIoU=1GIoU

3.2 损失函数可视化

本论文的主要研究点是如何设计合理的损失函数来学习在pre_box与truths_box的损失
  常用的SmoothL1Loss可能会出现不同的overlap,出现同一个loss值;IoU loss在pre_box与truths_box没有重合的时候失效(我们都知道pre_box是在anchor框的基础上偏移而来,若是偏移过多,会导致pre_box预测飞,和truths_box没有iou的重合),这个时候论文提出了GIoU loss。
在这里插入图片描述
  上图中,是将GIOU应用到SSD网络中,并且将每个位置框的loss值打印出来,红色框是truths框,黄色框是pred_box框,左上角的黄色数字是该truths_box与对应的pre_box的SmoothL1Loss值,左下角的紫色数字是对应的IoU loss,右上角的青色数字是对应的GIoU loss,下面再来几张训练过程中的损失值:
在这里插入图片描述
在这里插入图片描述

3.3 三种损失值在训练图片中的曲线图

图a 图b
  上两个图中,横坐标是被判定为正样本的框,纵坐标是每个正样本使用不同的loss函数,计算的loss值,红色曲线是smooth_l1_loss归一化之后的值,青色是iou_loss,黄色是giou_loss。整体来说,三个曲线的趋势走向是相同的,iou_loss与giou_loss由于函数形式的相似性,因此两个曲线很相近,整体看,发现iou_loss <= giou_loss,那是因为iou >= giou。smooth_l1_loss的曲线,比iou_loss和giou_loss“拉的更开些“,即高峰更高,低谷更低。

四、总结

  花了两天时间,看论文,再在ssd中复现,目前没有觉得GIoU loss 比 SmoothL1Loss有很大的改善,可能是我就使用了一个训练场景,在别的情况下,可能会凸显GIoU loss的优势,即使是有用,我觉得该论文的观点很有局限性,应该是在训练刚开始,pre_box的预测很不稳定的时候使用,会加快网络的收敛(当然这里是推测,没有实验数据),感觉在项目中效果不是很明显,有使用后,效果好的,可以分享下使用经验。
  好了,该论文我不打算再深入研究了,但是欢迎大家的指点和交流!

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 分配 GIOU_LOSS 和 FOCAL_LOSS 的比例取决于你的目标检测问题的具体情况和性质。一般来说,这两个损失函数在不同的目标检测任务中有着不同的优势,并且可以相互补充。 GIOU_LOSS 是一种对象的交并比损失函数,它可以更好地捕捉物体与边界框的相对位置关系。然而,它不能很好地处理被遮挡的物体,以及置信度分数较低的预测。 FOCAL_LOSS 是一种聚焦损失函数,它可以加强置信度分数较低的预测,使其能够更好地处理遮挡的物体。 因此,如果你的目标检测问题中存在被遮挡的物体,你可以使用较高的 FOCAL_LOSS 比例。如果你的目标检测问题中物体的相对位置关系很重要,你可以使用较高的 GIOU_LOSS 比例。 通常,在实际应用中,分配 GIOU_LOSS 和 FOCAL_LOSS 的比例需要通过实验来确定。因此,您可以先尝试不同的比例,并通过对比结果来确定最佳比例。 ### 回答2: GIOU_LOSS和FOCAL_LOSS是两种常用的目标检测算法中的损失函数。它们在目标检测任务中有着不同的作用和影响,选择合适的配比可以在一定程度上提高模型的性能和稳定性。 在分配GIOU_LOSS和FOCAL_LOSS的配比时,可以考虑以下因素: 1. 数据集和任务要求:首先要根据具体的数据集和任务要求来确定分配配比。不同的任务可能对定位精度或者分类准确度有着不同的侧重点,需要根据具体情况来进行调整。 2. 模型的收敛情况:在训练过程中,观察模型的收敛情况来确定合适的配比。如果模型收敛较慢或者存在一些问题,可以尝试调整配比以改善模型的性能。 3. 边界框的样本分布:目标检测中,边界框的大小和分布可能会有所不同。可以通过观察样本的分布情况来调整配比,使得损失函数对于不同大小和分布的边界框有更好的适应性。 4. 经验和实验:根据以往的经验和实验证明,可以初步确定GIOU_LOSS和FOCAL_LOSS之间的大致配比。但是需要通过不断的实验和调整来找到更优的配比。 需要注意的是,GIOU_LOSS和FOCAL_LOSS都是相对较复杂的损失函数,在实际应用中的配比可能因任务和数据集的不同而有所变化。因此,选择合适的配比需要综合考虑多个因素,并根据具体问题进行调整。 ### 回答3: 分配GIOU_LOSS和FOCAL_LOSS的配比是基于特定任务和数据集的要求而定的。这两种损失函数在目标检测和物体分割等计算机视觉任务中被广泛应用。 首先,我们需要了解这两种损失函数的特点和作用。GIOU_LOSS是一种边界框回归损失函数,用于测量预测框和真实框之间的IoU差异,它鼓励模型更准确地定位目标。而FOCAL_LOSS是一种用于解决类别不平衡问题的损失函数,通过降低易分类的样本的权重来增强模型对困难样本的关注,提高模型的泛化能力。 在分配配比时,我们可以根据任务的重要性和难度来决定。如果目标检测任务中框的定位准确性对结果影响较大,我们可以将GIOU_LOSS的权重设置较高,例如使用3:1或2:1比例,使模型更加关注目标的位置。另一方面,如果数据集中存在类别不平衡问题,模型需要更好地处理困难样本,那么可以适当调高FOCAL_LOSS的权重,以便模型更加关注难以分类的样本。一种常见的比例是1:1。 此外,还可以根据任务的特点进行实验和调整。可以通过交叉验证、迭代训练等方法,在训练集和验证集上尝试不同的配比,选择适合任务的最佳组合。根据实际情况,灵活调整GIOU_LOSS和FOCAL_LOSS的权重比例,以找到最佳的损失函数组合来提高模型的性能。 综上所述,分配GIOU_LOSS和FOCAL_LOSS的配比需要综合考虑任务的要求,通过实验找到最佳的权重比例,以提高模型的性能和泛化能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值