三个trick
1. Mosaic图像增强
方法:多张图像拼接
优:增加数据的多样性,增加目标个数,变相的增加了BatchSize,使BN能一次性统计更多的图片参数
2. SPP(Spatial Pyramid Pooling)模块
步距为1,池化之前会进行填充,池化后特征的大小和深度完全一致
3. IoU Loss
3.1 L2损失和IoU损失
在此种情况下L2损失不能够很好的反应候选框的好坏
还有一种常见的IoU损失计算:IoU Loss = 1 - IoU
3.2 IoU Loss的优点:能够很好反应重合程度,具有尺度不变性
缺点:不相交时loss为0
4. GIoU Loss
绿色框为GT,红色为预测框,蓝色框为红绿框的最小外边界框(Ac),
-1 <= GIoU <= 1,等于1时两框完全重合,等于-1时两框没有任何重叠
特殊情况:
5. DIoU Loss(Distance-IoU)和CLoU Loss(Complete-IoU)
5.1 DIoU Loss
解决IoU Loss和GIoU Loss收敛慢,回归不准确的问题
c代表覆盖GT框和预测框的最小框的对角线距离,d表示两个框中心点间的距离
-1 <= DIoU <= 1
当GT框和预测框完全重叠时DIoU为1,当两框距离无穷远时DIoU为-1
5.2 CIoU Loss
引入了长宽比
6. Focal Loss
Focal Loss主要用于单阶段的目标检测模型
解决问题:正负样本不平衡
对于易分的样本,我们减少它的学习权重(通过减少其损失值),而把学习的注意放在难学习的样本上,即那些预测概率与真实标签相差很远的样本。
一张图片中的正样本大概只有十几个或几十个,而负样本有10^4-10^5个,大量的负样本会淹没少量但有助于训练的样本。
但是易受噪音干扰,一旦数据标注出错,Focal Loss会对这些错误标注疯狂学习。
在双阶段目标检测中,比如Fast-RCNN,最终生成的候选框只有2k个,情况相对好很多。
6.1 引入αt平衡正负样本的数量
当为正样本时,乘αt,当为负样本时,乘(1-αt),实验证明,α取0.75时,AP,AP75是最高的,α取50时AP50是最高的
虽然引入α可以平衡正负样本,但不能区分哪些样本是容易的,那些样本是困难的。
6.2 引入 来降低易分样本的损失贡献
6.3 最终Focal Loss的表达式
根据实验得出γ=2.0,α=0.25时AP最高