网络优化
不平衡问题妨碍了充分利用设计良好的架构,进而限制其总体性能。可概括如下:
1. 采样级的不平衡:随机采样会使所选样本受简单样本的支配;复杂采样方法,如OHEM,会使注意力更向复杂样本集中,但是却对噪声标签敏感,并且会提升内存的占用和计算量。
2. 特征级的不平衡:深度高水平的特征具有更多语义,而浅层低水平特征更容易描述。近年来,基于横向连接的特征整合如FPN和PANet的使用,使得目标检测获得了进步。 也就是说对于目标检测来说,深层特征和浅层特征存在互补性。如何利用它们集成金字塔表示的方法决定了检测性能。整合的特征应该拥有来自每个分辨率的平衡信息。但是,上述方法中的顺序方式将使集成特性更多地关注相邻分辨率,而较少关注其他分辨率。非相邻层次中包含的语义信息在信息流中每次融合都会被稀释一次。
3. 目标级的不同衡:检测器需要完成两个任务:分类和定位。这两个任务在训练的时候目的并不统一。如果不能平衡这一现象,就可能牺牲一个任务,导致次优解。在训练过程中,对涉及的样本来说也一样。如果平衡不好的话,简单样本产生的小梯度可能被复杂样本的大梯度所淹没,进而限制进一步的优化。
Libra R-CNN 总览(a)IoU平衡采样 (b) 平衡特征金字塔 (c)平衡L1损失本文提出Libra R-CNN, 可以简洁而友好地解决上述问题。本框架集成了三个部分:
(1) IoU平衡采样: which mines hard samples according to their IoU with assigned ground-truth。 IoU等于基准框和预测框重叠的部分的面积除以两者结合起来部分的面积
假设需要从M个待选样本之中,采样N个负样本。随机采样每个样本被选中的概率为。为了增加复杂负样本被选中的概率,根据IoU将采样区间平均分为K份,需要的N个样本名额将平均在K个子区间中产生。然后再依据正态分布选择。那么在IoU平衡下,每个样本被选中的概率为,是对应第k个子区间内的待选样本数。
(2)平衡特征金字塔:根据相同的深度整合语义特征加强对层次的特征。包括四步,rescaling, integrating, refining and strengthening。
获取平衡语义特征:分辨率的特征用表示,多层次特征数为。最低和最高特征的索引分别为和。为了整合多层次特征,并且同时保持每层的语义特征,首先将多层次特征转换到中间尺寸下,可以分别采用插值和最大池化方法。然后,通过简单平均计算平衡语义特征,。
平衡特征金字塔流程改善平衡语义特征:直接卷积和非局部模块都比较好,但是非局部模块更稳定。因此,使用嵌入式高斯非局部注意力模块。使用这种方法, 高层次到低层次特征同时被聚合起来。输出之后用来做目标检测。可以和FPN流程一样。
(3)平衡L1损失:产生关键梯度,来平衡涉及的分类和总体定位问题,并且精确定位。
自从Fast R-CNN 以来,基于多任务损失函数,可以同时解决分类问题和定位问题。
平衡L1损失由卷积平滑L1损失中获得。主要思想是凸显关键的回归梯度来重新涉及的样本和任务。
根据上式,设计了梯度公式,
图五显示,受alpha控制,平衡L1损失增加了inliers的梯度。小alpha使得inliers梯度显著增加,但是outliers梯度则不受影响。gamma用来限制回归上界,以避免误差。
最终,
网友评论