参考:https://www.jianshu.com/p/362f2535adb0
参考:http://www.cnblogs.com/fariver/p/7449563.html
论文:Lightweight Deep Neural Networks for Real-time Object Detection
Github:PVANet
C++ Demo :PVANet_CPP
许多目标检测问题中,算法的运行速度和精度同等重要。本文主要针对的就是算法的运算速度提升问题。作者提出了一个轻量级的网络,取得了state-of-the-art的效果。网络基于基本的设计原则:more layers with less channels. 此外,作者利用C.ReLU和Inception structure减少网络的冗余。作者提出的网络结构概要:
基于more layers with less channels的基本原则。
在网络初始几层采用C.ReLU,在后面几层采用Inception structure.
应用多尺度特征级联maximize the multi-scale nature of object detection tasks.
权重衰减策略采用plateau detection(一定迭代次数内loss不再下降,则将学习速率降低常数倍)
PVANet通过batch normalization, residual connections可以实现高效的训练。
1.1 创新点
创新点:基于Faster-RCNN使用更高效的基础网络
PVAnet是RCNN系列目标方向,基于Faster-RCNN进行改进,Faster-RCNN基础网络可以使用ZF、VGG、Resnet等,但精度与速度难以同时提高。PVAnet的含义应该为:Performance Vs Accuracy,意为加速模型性能,同时不丢失精度的含义。主要的工作再使用了高效的自己设计的基础网络。该网络使用了C.ReLU、Inception、HyperNet以及residual模块等技巧。整体网络结构如图1所示。
2.1 C.ReLU
C.ReLU的作者观察基础网络卷积层参数,发现低层卷积核成对出现(参数互为相反数),因此,作者减小输出特征图个数为原始一半,另一半直接取相反数得到,再将两部分特征图连接,从而减少了卷积核数目。关于C.ReLU参考博客与论文。C.ReLU的模块结构如图2所示。
2.2 Inception模块
作者发现googlenet中Inception模块由于具有多种感受野的卷积核组合,因此能够适应多尺度目标的检测,作者使用基于Inception模块组合并且组合跳级路特征进行基础网络后部分特征的提取。
2.3 HyperNet
将conv3中原图1/8特征图、conv3中原图1/16特征图、conv3中原图1/32特征图连接来增加最终特征图中多尺度信息。其中,conv3中特征图被下采样,conv5中特征图被线性插值上采样。如图1所示。
3.1 实验过程
除了以上基础网络的区别:
(1) PVAnet使用的anchor与faster-rcnn不同,PVA在每个特征点上使用了25个anchor(5种尺度,5种形状)。
(2) 并且RPN网络不使用全部特征图就能达到很好的定位精度,RPN网络只用生成200个proposals;
(3) 使用VOC2007、VOC2012、COCO一起训练模型;
(4) 可以使用类似于Fast-RCNN的truncated SVD来加速全连接层的速度
(5) 使用投票机制增加训练精度,投票机制应该参考于R-FCN
共同学习,写下你的评论
评论加载中...
作者其他优质文章