前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >简单有效 | 详细解读Interflow用注意力机制将特征更好的融合(文末获取论文)

简单有效 | 详细解读Interflow用注意力机制将特征更好的融合(文末获取论文)

作者头像
集智书童公众号
发布2021-07-07 11:00:28
3.6K0
发布2021-07-07 11:00:28
举报
文章被收录于专栏:集智书童集智书童

1简介

传统的CNN模型具有层次结构,利用最后一层的特征映射来获得预测输出。然而,很难确定最优网络深度,并使中间层学习显著的特征。

针对传统的CNN模型,本文提出了Interflow算法。Interflow根据深度将cnn划分为几个阶段,并利用每个阶段的特征映射进行预测。然后,将这些预测分支输入到一个精心设计的注意力模块中,该模块学习这些预测分支的权值,并将其聚合得到最终的输出。

Interflow对浅层和深层学习到的特征进行加权和融合,使各个阶段的特征信息得到合理有效的处理,使中间层能够学习到更多有区别的特征,增强了模型的表示能力。

另外,通过引入注意机制,Interflow可以缓解梯度消失问题,降低网络深度选择的难度,减轻可能出现的过拟合问题。此外,它可以避免网络退化。与原模型相比,带有Interflow的CNN模型在多个基准数据集上获得了更高的测试精度。

2相关工作

2.1 辅助分类器

大多数backbone模型仅利用最后一层的特征映射进行Softmax分类并输出预测结果。然而,GoogLeNet在中间特征层添加了两个辅助分类器(Inception 4a和4d模块)来辅助训练。在训练过程中,将这2个辅助分类器的分类损失与最后一层特征映射(Inception 5b模块)得到的分类损失相乘,权重为0.3,即可得到总损失。然后进行反向传播更新权值。在测试过程中,GoogLeNet简单地去掉了这两个辅助分类器,只使用最后一个分类器进行分类和预测。

添加2个辅助分类器的基本目的是同时提供正则化和避免梯度消失问题。此外,它应该在正向引导梯度。另外,一些层次较浅的CNN模型取得了较好的性能,这说明CNN模型的中间层需要有较强的识别能力。因此,辅助分类器利用中间层的输出来辅助分类,迫使中间层卷积学习有区别的有效特征。

但实验数据表明,辅助分类器的作用不大。与不使用辅助分类器的GoogLeNet模型相比,使用辅助分类器的GoogLeNet模型在ImageNet数据集上仅提高了约0.5%的测试精度。此外,使用一个辅助分类器的GoogLeNet模型可以达到几乎相同的效果。

本文认为,虽然GoogleNet采用的这些辅助分类器可以缓解梯度消失的问题,但是它并没有很好地利用中间卷积层提取的有效特征

此外,它融合辅助分类器的方法可能不恰当,从而不能使中间层学习更多的特征。最后,在预测过程中直接丢弃辅助分类器,导致辅助分类器在结果预测中没有起到积极有效的作用

2.2 Multi-layer Features

考虑到目标检测任务,输入的图像通常包含大的和小的目标。深层CNN特征映射具有较强的语义特征,有利于分类识别。但感受野较大,特征分辨率较低。在这种情况下,如果仍然只使用上一层的特征映射进行预测,很容易导致对小目标的漏检和对候选框的定位精度不高。中、浅层的特征映射具有较大的特征分辨率,有利于目标的定位。

因此,SSD算法不仅为上一个feature map设置proposal box,还为浅、中、深6种不同比例尺的feature map建立proposal box。在较浅层的feature map中构建相对较小的proposal box来检测小目标,在较深层的feature map中构建较大的proposal box来检测大目标。

然而,SSD算法对小目标的检测效果较差。其原因是浅层特征的语义信息不足,无法完成预测。因此,研究人员提出了DSSD算法对深、浅层特征映射进行特征融合。

具体来说,DSSD直接利用最深层的feature map进行回归和分类。然后对该特征映射进行反卷积,再与浅层特征映射的元素相乘,得到深、浅层特征融合。融合特征的输出可以通过回归进行分类和计算。同样,如果继续对浅层特征的feature map进行反卷积和融合,融合后总共可以输出6张feature map。通过回归和分类,可以对这6个特征图进行预测。因此,DSSD输出6个预测。DSSD将深层特征集成到浅层特征映射中,提升了浅层特征的语义信息,提高了模型性能,特别是对小目标的检测

本文认为,深层和浅层特征的信息融合在性能改善中起着至关重要的作用。然而,正是由于不同层次的特征映射采用了独立的分类和回归预测分支,才能够区分出大目标和小目标的检测任务。因此,这些较浅的卷积层能够学习更多的鉴别特征。受此启发,本文提出了Interflow,该方法在主干CNN模型的不同层增加了预测分支。最后,通过一个简单的线性加权或一个拟实现注意机制的学习权层,将分支的预测融合得到最终输出。本设计旨在使网络同时利用深层和浅层中不同层次的抽象信息。此外,它使中间的卷积层能够学习更多的特征,最终获得更优的输出。

2.3 Attention Mechanism

注意机制起源于人类视觉的研究。为了有效地利用有限的视觉资源来处理信息,人类有选择地专注于视觉区域的特定部分。注意力机制主要是确定需要注意的输入部件,并将有限的信息处理资源分配给这些重要部件。

在计算机视觉领域,注意力机制被引入到视觉信息的处理中。传统的局部图像特征提取、显著性检测和滑动窗口都可以视为一种注意力机制。此外,神经网络中的注意力机制通常是通过一个附加的注意力模块来实现的。这个注意力模块可以为输入的不同部分分配特定的权重。一般来说,注意力机制可以分为2种形式,即硬注意力机制软注意力机制

硬注意力机制采用手动固定权重。它迫使计算机集中在需要注意的部分,并减少来自其他部分的影响。然而,它只对特定的采样图片有效。而且,由于权值掩模没有学习到的参数,它是一个不可微分的常数,不可能更新模型中的权值。

与此相反,软注意力机制在卷积层之间使用了一层学习的权重掩码。因此,它可以通过训练识别出神经网络应该密切关注的部分。注意力机制最初广泛应用于自然语言处理领域。引入自注意力机制的Transformer模型是一个经典案例。受NLP的启发,CV领域的模型也不断引入注意力机制。

在cnn中,注意力机制通常有2种实现模式,即空间注意力通道注意力。它们的目的是对输入数据进行重采样,并加强特定对象。

在一种常见的空间注意力模型中,输出可以通过可微分的权重掩模和卷积特征映射之间的点态矩阵相乘得到。

另一方面,通道注意力对特征通道进行加权计算。

SENet是一种典型的通道注意力实现。SENet利用SE模块自动学习各个特征通道的重要度。CBAM兼顾了空间和通道2方面。

Interflow受到注意力机制的启发,通过注意力机制对不同层次特征映射的预测结果进行加权,得到最终的输出。因此,该模型可以学习不同分支获得的结果的重要程度,降低网络深度选择的难度,缓解极深网络造成的网络退化。

3Interflow

3.1 Interflow算法

根据上面的分析可以知道中间的卷积层需要学习判别特征。此外,还应降低选择网络深度的难度,合理有效地利用不同层次的特征。因此,Interflow算法就是为了这些目的而设计的。

Interflow首先根据层次的深度将CNN划分为不同的阶段。对于每个阶段的最后一个卷积层,通过自适应平均池化,特征映射的大小减少到

1\times 1

。然后,得到的输出经过一个全连接层,得到该阶段不同类别的置信系数。

随后,将这些具有不同置信系数的通道连接起来。同样,来自不同分支的特征信息交叉输入到注意力机制模块中,目的是使模型能够合理组织和利用不同阶段学习到的特征。因此,该模式专注于有效的特征,丢弃冗余的特征。通过注意力机制将多层特征聚合后,最终输入到softmax分类器中以实现最终输出。

3.2 注意力模块

如前所述,注意力机制的实现方法包括硬注意力机制软注意力机制。同样,Interflow的注意力模块也有2种实现方式,即通过各个分支的信息流的交集来实现。

硬注意力模块

图a 硬注意模块示意图

作为一种手工设计的权重,难以注意的是将不同阶段的输出赋予手工设计的权重。可以直接把每个分支的权重看作一个超参数。但是,当分支流的数量太大时,就会有太多的超参数。因此,很难得到最优组合。此外,在对模型进行多次训练之前无法知道对于一个特定的任务,模型应该集中在哪个阶段。也就是说,手工设置无法合理整合多个分支的特征信息。因此,更注重软注意力。

软注意力模块

图b 软注意力模块示意图

软注意力允许模型独立学习权重。具体来说,利用1×n卷积来让模型学习每个分支的权重。因此,它使模型能够识别出特定任务需要注意的阶段特征信息。并合理有效地整合了不同阶段的特征信息。

因为不同阶段的特征信息可能对不同的类别有偏好,也就是说,它可能对特定的类别学习到更有区别性的特征。因此,在后续的实验中也制作了模型来学习每个额外分支中不同类别置信度的权重。这是通过用逐点的n×n卷积代替1×n卷积来实现的。

3.3 优点

优点1

Interflow利用注意力机制有效利用了不同阶段和抽象层次的特征映射。从而提高了对特征信息的利用。此外,它迫使中间的卷积层学习更多有用的特征。

优点2

Interflow可以解决梯度消失问题,类似于在系统中添加辅助分类器的GoogLeNet。某些中间卷积层直接连接到最终输出,因此梯度在衰减之前可以传播到较浅的层。

优点3

此外,CNN的浅层卷积层拟合速度要快于深层卷积层。通过对不同阶段分支权值的自主学习,在训练的最后阶段,高阶阶段分支权值可能为负,高阶阶段分支权值可能为正,这可能会降低浅层卷积层的拟合速度,在一定程度上降低了浅层卷积层过度学习导致过拟合的可能性。

优点4

当设计一个CNN模型的时候,通常无法提前知道模型的合理深度。而Interflow算法能够对冗余的深层卷积层学习微小甚至零权值,从而减少对这些卷积层特征信息的关注。进而降低了网络深度选择的难度。此外,它降低了模型因层数过多或复杂度过高而产生的过拟合风险。

优点5

通过为这些破坏模型表示能力的极深层阶段分配轻微或零权值,Interflow算法可以缓解应用于极深层CNN模型时的网络退化问题。

优点6

Interflow具有可移植性的优点。它可以用于任何backbone。

3.4 复现细节

图3是本文实验中使用Interflow的具体CNN模型示意图。在该模型中,将VGGNet-16的卷积层作为提取特征base。如图所示,将13个卷积层分为4个阶段,并对每个阶段的输出特征映射进行自适应平均池化和全连接层。这样就得到了分类置信系数,即各阶段分支的特征信息。进一步将通道连接得到的特征映射输入到注意机制中进行加权。然后得到最终输出。从某种意义上说,Interflow可以看作是一个轻微的模型集成。

4参考

[1].Interflow: Aggregating Multi-layer Feature Mappings with Attention Mechanism

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-06-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 集智书童 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1简介
  • 2相关工作
    • 2.1 辅助分类器
      • 2.2 Multi-layer Features
        • 2.3 Attention Mechanism
        • 3Interflow
          • 3.1 Interflow算法
            • 3.2 注意力模块
              • 硬注意力模块
              • 软注意力模块
            • 3.3 优点
              • 优点1
              • 优点2
              • 优点3
              • 优点4
              • 优点5
              • 优点6
            • 3.4 复现细节
            • 4参考
            相关产品与服务
            对象存储
            对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档