这是facebook AI实验室的一篇报告,原文链接 http://arxiv.org/abs/1604.02135
基本上是对先前一些普遍有效的检测tricks的实验和融合, 文中对三个方法做了实验:
1.skip connections 引入多尺度信息
2.foveal structure 引入context信息
3.integral loss function 为coco 的detection 任务量身定制的loss(号称如此)
另外考虑用DeepMask的proposal 替换 ss, 最终文章取得了比原始Fast RCNN 提升了66%的结果,在总排名第2,为33.2%(第一名ResNet 37%). 1 和 2 是已经验证过的有效方法.全文作者使用的模型都没有ResNet,所以这个方法还是可以在ResNet上有一个较好的boosting(作者期望是这样)
全文的思路简单直接,感觉是比较靠谱的,这两天试一试,看看效果
没图没真相:
1.skip connection : 将conv3-5的特征都用起来做ROI,然后拼接
2.foveal structure : 其实是将原始proposal 扩大一下做ROI以便捕获context 信息, 文中用到了1x, 1.5x, 2x, 4x, 没有用到小于1x的
3.integral loss function,将上面4个尺度的特征(经过fcx2)拼接,然后过integral loss function进行回归和分类
这个integral loss function其实是考虑到COCO是以AP(AP_50~AP_100)的指标测试的,而原始FRCNN的训练总是以IOU0.5为正样本训练,作者发现,如果调整这个阈值u,那么对应的AP_u就趋向于最好,所以最直接的方式就是吧多个阈值的分类器同时放在网络中,然后将他们的loss平均(integral )一下来反传网络 (听明显的想法,为什么我没想到,摔~~),给个公式:
其中u就是正样本的阈值
作者测试了以上三个方法,平均每个方法能够提升1个点左右,另外使用DeepMask的proposal比SS的效果好很多,可以提升5.1%.