小镇的夕阳何恺明Focal Loss改进版!GFocal Loss:良心技术,无cost涨点( 三 )


如下图所示:
小镇的夕阳何恺明Focal Loss改进版!GFocal Loss:良心技术,无cost涨点
本文插图
各种各样的表示
考虑到真实的分布通常不会距离标注的位置太远 , 所以我们又额外加了个loss , 希望网络能够快速地聚焦到标注位置附近的数值 , 使得他们概率尽可能大 。 基于此 , 我们取了个名字叫Distribution Focal Loss (DFL):
小镇的夕阳何恺明Focal Loss改进版!GFocal Loss:良心技术,无cost涨点
本文插图
其形式上与QFL的右半部分很类似 , 含义是以类似交叉熵的形式去优化与标签y最接近的一左一右两个位置的概率 , 从而让网络快速地聚焦到目标位置的邻近区域的分布中去 。
最后 , QFL和DFL其实可以统一地表示为GFL , 我们将其称之为Generalized Focal Loss , 同时也是为了方便指代 , 其具体形式如下:
小镇的夕阳何恺明Focal Loss改进版!GFocal Loss:良心技术,无cost涨点
本文插图
我们在附录中也给出了:Focal Loss , 包括本文提出的QFL和DFL都可以看做为GFL中的变量取到特定值的特例 。
2 实验
接下来是实验部分 。 Ablation Study就不展开了 , 重点的结论即是:
1、这两个方法 , 即QFL和DFL的作用是正交的 , 他们的增益互不影响 , 所以结合使用更香(我们统一称之为GFL) 。
我们在基于Resnet50的backbone的ATSS(CVPR20)的baseline上1x训练无multi-scale直接基本无cost地提升了一个点 , 在COCO validation上从39.2 提到了40.2 AP 。
实际上QFL还省掉了原来ATSS的centerness那个分支 , 不过DFL因为引入分布表示需要多回归一些变量 , 所以一来一去inference的时间基本上也没什么变化 。
2、在2x + multi-scale的训练模式下 , 在COCO test-dev上 , Resnet50 backbone用GFL一把干到了43.1 AP , 这是一个非常可观的性能 。
同时 , 基于ResNeXt-101-32x4d-DCN backbone , 能够有48.2的AP且在2080Ti单GPU上有10FPS的测速 , 还是相当不错的speed-accuracy trade-off了 。
放一些重点的实验插图:
小镇的夕阳何恺明Focal Loss改进版!GFocal Loss:良心技术,无cost涨点
本文插图
小镇的夕阳何恺明Focal Loss改进版!GFocal Loss:良心技术,无cost涨点
本文插图
最后 , 附录里面其实有不少彩蛋 。
第一个彩蛋是关于IoU和centerness的讨论 。 在对比实验中 , 我们发现IoU作为框预测质量的度量会始终比centerness更优 。 于是我们又具体深入分析了一些原因 , 发现的确从原理上来讲 , IoU可能作为质量的估计更加合适 。
具体原因如下:
1、IoU本身就是最终metric的衡量标准 , 所以用来做质量估计和排序是非常自然的 。
2、centerness有一些不可避免的缺陷 , 比如对于stride=8的FPN的特征层(也就是P3) , 会存在一些小物体他们的centerness label极度小甚至接近于0 , 如下图所示:
小镇的夕阳何恺明Focal Loss改进版!GFocal Loss:良心技术,无cost涨点
本文插图
而IoU就会相对好很多 。 我们也统计了一下两者作为label的分布情况 , 如图:
小镇的夕阳何恺明Focal Loss改进版!GFocal Loss:良心技术,无cost涨点
本文插图
这意味着IoU的label相对都较大 , 而centerness的label相对都较小 , 同时还有非常非常小的 。
可以想见 , 如果有一些正样本的centerness的label本身就很小 , 那么他们最后在做NMS排序的时候 , 乘上一个很小的数(假设网络学到位了) , 那么就很容易排到很后面 , 那自然性能就不容易上去了 。
所以 , 综合各种实验以及上述的分析 , 个人认为centerness可能只是一个中间产物(当然 , 其在FCOS中提出时的创新性还是比较valuable的) , 最终历史的发展轨迹还是要收敛到IoU来 。


推荐阅读