1. 前言
这两天公司进行了一次拓展活动,个人本身并不是特别喜欢集体活动,但是活动本身还蛮有趣。
关于深度学习,由于最近读了很多经典论文,也有一点感想。其实我们可以将神经网络看做一个函数拟合器,那么不同方向的应用就可以看做一种特征工程,分类问题,我们可以用表示类别的特征,检测问题,我们可以用框和类别。那么,对于这些特征的设计,就会决定网络的性能和应用方向。
2. SSD: Single Shot MultiBox Detector
在论文中,作者认为贡献如下:
- 提出了SSD:
,用于多类别的目标检测
- 在feature maps上使用小的filters来进行类别预测和框的偏置
- 通过不同scale的feature map,来预测不同scale的物体
- end-to-end
模型结构如下图:
![](https://img.haomeiwen.com/i13613701/c748c96e300bd110.png)
2.1 模型
![](https://img.haomeiwen.com/i13613701/a95e876e97ba3aa1.png)
- SSD利用了不同尺度的特征,从上图模型结构中可以看到,从不同深度的卷积层中提取特征用于预测。因为卷积层的感受野会不断增大。
- 每一个卷积层都可以预测一组特征,例如对于一个
,拥有
个通道的特征层,我们可以使用一个
的卷积核,来或者产生类别得分,或者相对于默认框的偏置。
- 作者在用于预测的每一个特征层,都设定了一组默认框。对于特征层每一个输出都会根据
个默认框,预测
个偏置值,
个类别的得分。如 图1
2.2 训练
- 匹配策略:在训练的时候,需要选择出用于预测框和类别的那个默认框,这样在反向传播的时候设置该默认框的target为对应的ground truth。作者的策略是:jaccard overlap,当框和ground truth的该值大于一个阈值时,就让对应的默认框负责预测。对于某个物体,得到的匹配的默认框可能不是一个。
- 作者将
分为:定位loss(localization loss),分类loss(confidence loss)。如下;
loss
是匹配的默认框的个数,
定位loss是groundtruth和预测的框
的
loss。具体如下:
loc loss
分类的loss是softmax,如下:
co loss
3. Single-Shot Refinement Neural Network for Object Detection
在论文中作者认为二阶段(如RCNN系列,需要先进行候选框的选择,再进行分类和框的精修)的检测效果,精度比一阶段(如YOLO,SSD,一次输出类别得分和框)的好的原因:
- 类别不平衡问题小
- 对框进行回归
- 分别使用两个阶段的特征进行预测(作为物体的描述)
为了提高一阶段模型的精度,作者使用了两个交叉连接的模块:anchor refinement module(ARM)和objection detection module(ODM)。如下图:
![](https://img.haomeiwen.com/i13613701/2f165ef64621b4b2.png)
其中,ARM用于:
- 辨别并去除negative anchor来减少search space。
- 更加细致地调整anchor的位置和大小
ODM将refined anchor作为输入来进一步提高回归和分类效果。作者还设计了transfer connection block(TCB),来实现ARM的特征,到ODM的预测位置,大小,类别的转换。
3.1 网络结构
类似于SSD,RefineDet使用了前向神经网络来同时预测框和类别得分,最终进行非极大值抑制得到最终结果。
ARM:使用VGG或者ResNet作为基础网络,去掉分类层,另外增加一些辅助结构。
ODM:由TCB的输出组成,来产生一组类别的得分和相对于refined anchor框的偏置。
RefineDet的核心:
- TCB:将ARM的特征转换到ODM中用于检测
- 两个级联的回归,提高位置和大小精度
- 过滤掉了negative anchor
Transfer Connection Block:如下图:
![](https://img.haomeiwen.com/i13613701/58827741bf72db7d.png)
TCB用于将ARM的不同层转换为ODM需要的格式,这样使得ODM可以和ARM共享参数。TCB的另一个作用是通过增加一层特征,来整合large-scale context。为了匹配格式,作者使用deconv,来增大特征,并element-wise sum。
Two-Step Cascaded Regression:之前的一阶段的检测,都是使用多尺度的卷积特征来预测物体的位置和大小,这种方式在某些难度较大的问题中,精度较低,尤其是小物体。因此,作者设计两部级联的回归方法来对位置和大小进行回归预测。首先,使用ARM来调整anchors的位置和大小,来为ODM提供一个更好的初始化。在每一个feature map的cell上指定
![](https://img.haomeiwen.com/i13613701/b56c7dd1655e3cf1.png)
optimization:SGD, momentum=0.9, weight decay=0.0005, learning rate=0.001, batch size=32
网友评论