目标检测(2)RetinaNet解读

1.核心:

one-stage方法:速度快,但有大量候选区,只有少部分为真实标记的,导致计算loss的时候正负样本不平衡。
two-stage方法:可以得到高的精确度,却不能保障速度要求。
目标检测(2)RetinaNet解读

思考:
能不能找到一种方法,既保证精确度,又保障速度。

2.解决:

Focal Loss的提出就是在one-stage的基础上解决accurary的问题。
one-stage精确度底的本质:类别不平衡导致,导致计算loss时,以类别多的为主导地位。

提出Focal loss:不是解决异常值问题,而是通过控制样本分类难以程度(给予易分样本小的权重,不易分样本大的权重)

(1)交叉熵定义:
目标检测(2)RetinaNet解读
(2)加入权重,平衡正负样本
目标检测(2)RetinaNet解读
(3)Focal loss定义:
目标检测(2)RetinaNet解读α代表:控制正负样本的权重
γ表示:控制样本的容易区分的程度

3.model

目标检测(2)RetinaNet解读resnet+FPN+CNN(两个子网络,其中一个classifier(A个anchor,K个class),另一个bbox框预测)

4.trick

(1)model initialzation
question:初始化时均匀初始化的话会导致,负样本求得的loss占主导(例如二分类:权重为0.5,0.5)
solve:引入前景类,概率设为:0.01
(2)网络参数初始化
w:n(0,0.01)
bias:(-log(1-π)/π) π=0.01
(3)agumentation
仅翻转
(4)Focal Loss参数设置
α:[0.25,0.75]
γ:[2,5]
(5)anchor设定
使用3中scale,3种aspects,获取最大AP
9个anchor?
(6)输入尺度
尺度大的,accurary越大,花费的time越多
一般设为600

论文翻译:
https://blog.****.net/PPLLO_o/article/details/88952923
论文地址:
https://arxiv.org/pdf/1708.02002.pdf