其他分享
首页 > 其他分享> > 来自谷歌大脑的SpineNet:一种非常规的主干结构

来自谷歌大脑的SpineNet:一种非常规的主干结构

作者:互联网

由于编码器部分的解码器结构的分辨率不断降低,分类问题得到了很好的解决。然而,这种架构不能有效地生成用于目标检测(同时识别和定位)所需的强多尺度特征。

SpineNet和之前的主干网络有什么不同?

一个特征的存在可能需要高分辨率来检测,而它的确切位置不需要以同样高的精度来确定。

尺度递减的主干的缺点

提出的新方法

为了克服局部化中多尺度特征获取和检索的困难,引入了具有跨尺度连接的scale-permuted模型,并进行了以下改进:

  1. 特征图的尺度可以灵活的增加和减少,可以在体系结构中的任何时间通过permuting block的方式增加或减少,而不是以前的严格减少的模式。这将支持空间信息的维护。

  2. 特征图的连接允许跨特征尺度进行,以便从多个尺度进行特征融合。

方法和结构

神经网络搜索 (NAS)

图2:上下文中的神经结构搜索方法。

该SpineNet体系结构具有一个固定的stem网络(尺度缩小网络),然后是一个可学习的 scale-permuted网络。用于构建scale permuted网络的NAS的搜索空间,包括scale permutations、cross-scale connections和block adjustments。

  1. Scale permutations:一个block只能连接到它的父块,父块的顺序较低,所以块的顺序很重要。在这里,中间块和输出块发生了排列。

  2. 跨尺度连接:对于搜索空间中的每个块,定义两个输入连接。

  3. Block 调整:每个块可以调整它们的尺度级别和类型。中间块的尺度范围可以像{−1,0,1,2}块的类型可以是bottleneck block或residual block。

Cross-Scale Connections中的重采样

图3:重采样操作

评估来自ResNet的SpineNet结构

图4:通过对ResNet进行permuting构建scale-permuted网络

提出的SpineNet结构

基于图4 (d)中派生出的SpineNet-49结构,在SpineNet家族中又构建了四个结构。

图5:通过重复block来增加模型深度。从左到右:SpineNet-49,SpineNet-49,SpineNet-143中的block。

结果对比

针对目标检测和图像分类任务进行了实验,以证明该架构的通用性。

目标检测

将ResNet-FPN骨干模型替换掉,使用RetinaNet检测器来完成目标检测任务。模型在COCO test-dev数据集上进行评估,并在train2017上进行训练。

图6:一阶段物体检测的结果,在COCO测试集上。在RetinaNet上使用不同的骨干,应用到单个模型上。默认情况下,训练使用多尺度训练,使用ReLU激活函数。模型带(†)的在训练时应用了随机深度和swish激活和塞纳湖,训练了更长的时间。

图7:R50-FPN和scale-permuted模型在COCO val2017上的结果对比

图8:使用了SpineNet,ResNet-FPN以及NAS-FPN作为主干的RetinaNet的对比

图像分类

为了进行图像分类,SpineNet在ImageNet ILSVRC-2012和iNaturalist-2017两个数据集上进行了训练。

图9:在ImageNet和iNaturalist上的图像分类结果

以上结果表明,SpineNet不仅能够更好地进行目标检测,而且对于图像分类等其他视觉学习任务也具有足够的通用性。

Scale-Permutation和Cross-Scale Connections的重要性

我们在编解码器网络中选择了FishHourglass 两种常见的结构形式,并与R0-SP53模型进行了比较。所有模型中的交叉连接都是使用NAS学习的。

Scale-Permutation

图10:学到的scale permutation的重要性

Cross-Scale Connections

图11:学到的cross-scale connections的重要性

最后

 

 

承接Matlab、Python和C++的编程,机器学习、计算机视觉的理论实现及辅导,本科和硕士的均可,咸鱼交易,专业回答请走知乎,详谈请联系QQ号757160542,非诚勿扰。

 

标签:非常规,permuted,scale,架构,SpineNet,主干,模型,尺度
来源: https://blog.csdn.net/weixin_36670529/article/details/113418394