SCA-CNN: Spatial and Channel-wise Attention in Convolutional Networks for Image Captioning
题目:SCA-CNN: Spatial and Channel-wise Attention in Convolutional Networks for Image Captioning
作者: Long Chen等(浙大、新国立、山大)
期刊:CVPR 2017
1 背景
注意力机制已经在自然语言处理和计算机视觉领域取得了很大成功,但是大多数现有的基于注意力的模型只考虑了空间特征,即那些注意模型考虑特征图像中的局部更“重要”的信息,忽略了多通道信息的重要性关系。这篇文章介绍了一种新型的卷积神经网络——SCA-CNN,它融合了空间和信道的关注。
2 方法
本文提出的方法针对图像和文字的匹配问题(neural image/video captioning (NIC))和视觉问答(visual question answering (VQA))。图1说明了在多层特征图中引入通道注意力机制的动机。首先,由于通道方向的特征映射本质上是对应滤波器的检测器响应映射,因此通道方向的保持可以看作是根据句子上下文的需求选择语义属性的过程。例如,当我们要预测蛋糕的时候,我们的通道会更关注根据蛋糕、火、光和蜡烛的语义,在过滤器生成的通道方向的特征图。

概述:
网络采用编码-解码框架生成图像标题,如图2所示,SCA-CNN通过多层面的信道注意和空间注意,赋予了原CNN多层地物图对句子上下文的自适应能力。

空间注意(Spatial Attention):
一般来说,一个词只与图片的一小部分有关,空间注意机制试图将注意力更多地放在语义相关区域,而不是平均考虑每个图像区域。对于第l层特征图V = [v1, v2,…,v m], v∈RC×m,其中m为图像被划分的区域数,C为信道数,因此vi∈RC是第i个位置的视觉特征。空间注意力分布因子α如下:

通道注意力(Channel-wise Attention):
对每个通道应用空间均值池化,得到通道特征v:

通道注意力因子β:

框架结构1 通道-空间:
如图2所示,现在通道特征上应用注意力机制,然后再空间特征上应用。

其中fc()为特征映射通道与对应通道权值的乘机。
框架结构2 空间-通道:

框架结构3 空间、通道集成到一个结构:

每个标量特征都有一个概率权重,可以显著增加特征表示的变化量,但是计算量大。
3 结果
对通道注意力机制的评估:

根据表1,我们得出以下结论:1)使用VGG-19,S比SAT好;使用ResNet-152,SAT性能要优于S。这是因为VGG-19网络具有完全连接的层,可以保留空间信息,但是,ResNet-152最初是平均池化的,因此无法保存空间信息。 2)比较C ans S的性能,ResNet-152可以比VGG-19网络显着改善C性能,这表明更多的通道数可以提高通道的注意性能,因为ResNet-152比VGG-19具有更多的通道数。 3)在VGG-19和ResNet-152中,S-C和S-C的性能非常相似。通常,C-S比S-C稍好一些,这可能是由于通道方向的特征更加关注。 4)在ResNet-152中,C-S或S-C可以明显改善S的性能。这表明,通过增加按通道注意,可以在通道数量较大时显着提高性能。
多层注意力机制评价:
另外实验证明,通过在两个模型(S和C-S)中添加层可以获得更好的结果,这是因为多层注意有助于获得对多种语义抽象的视觉关注,但是添加的层数过多会引起过拟合的问题。
从表4和表5的结果可以看出,在大多数情况下,SCA-CNN都优于其他两种模型(数据集:MS COCO Image Challenge set)。
与当前较好的结果的比较:

我们可以看到,在大多数情况下,SCA-CNN优于其他模型。 这是由于SCA-CNN利用空间,通道和多层注意力,而大多数注意力模型仅关注一种注意力类型。这是因为SCA-CNN利用了空间、频道和多层的注意力,而大多数注意力模型只关注一种注意力类型。请注意,我们不能超越ATT和谷歌NIC的原因是他们声称使用集成模型。然而,作为一个单一的模型,SCA-CNN仍然可以达到与集成模型相比较的结果。
相关结果展示:

4 结论
提出了一种新的注意力结构,称为SCA-CNN。SCA-CNN充分考虑了CNN的特点,并将其转化为细致的图像特征:空间性、频道性和多层性,实现了跨越流行基准的最新性能。
SCA-CNN: Spatial and Channel-wise Attention in Convolutional Networks for Image Captioning的更多相关文章
- 【注意力机制】Attention Augmented Convolutional Networks
注意力机制之Attention Augmented Convolutional Networks 原始链接:https://www.yuque.com/lart/papers/aaconv 核心内容 ...
- 《Attention Augmented Convolutional Networks》注意力的神经网络
paper: <Attention Augmented Convolutional Networks> https://arxiv.org/pdf/1904.09925.pdf 这篇文章是 ...
- Paper Reading - CNN+CNN: Convolutional Decoders for Image Captioning
Link of the Paper: https://arxiv.org/abs/1805.09019 Innovations: The authors propose a CNN + CNN fra ...
- 深度学习论文翻译解析(九):Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition
论文标题:Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition 标题翻译:用于视觉识别的深度卷积神 ...
- 目标检测--Spatial pyramid pooling in deep convolutional networks for visual recognition(PAMI, 2015)
Spatial pyramid pooling in deep convolutional networks for visual recognition 作者: Kaiming He, Xiangy ...
- 【论文笔记】Spatial Temporal Graph Convolutional Networks for Skeleton-Based Action Recognition
Spatial Temporal Graph Convolutional Networks for Skeleton-Based Action Recognition 2018-01-28 15:4 ...
- (zhuan) Attention in Neural Networks and How to Use It
Adam Kosiorek About Attention in Neural Networks and How to Use It this blog comes from: http://akos ...
- Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition
Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition Kaiming He, Xiangyu Zh ...
- SPPNet论文翻译-空间金字塔池化Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition
http://www.dengfanxin.cn/?p=403 原文地址 我对物体检测的一篇重要著作SPPNet的论文的主要部分进行了翻译工作.SPPNet的初衷非常明晰,就是希望网络对输入的尺寸更加 ...
随机推荐
- 六 一对多关联查询&关联查询小结
一对多关联查询:基于用户表关联查询订单表 在pojo中,一的一方方式多的一方的集合 在代理映射中配置查询方法,ResultMap一对多关系(注意:当两表有字段重名时,在一方字段设置别名,以免造成查询混 ...
- 转:NGINX 基于nginx_upstream_check_module-master 健康检测及平滑升级
https://www.cnblogs.com/linxizhifeng/p/7075325.html linux的nginx下安装tengine的nginx_upstream_check_modul ...
- require - 引入文件
导入 /** * Creates the node for the load command. Only used in browser envs. */ req.createNode = funct ...
- 30 整数中1出现的次数(从1到n整数中1出现的次数)这题很难要多看*
题目描述 求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1.10.11.12.13因此共出现6次,但是对于后面问题他就没辙了. ...
- k-近邻算法python代码实现(非常全)
1.k近邻算法是学习机器学习算法最为经典和简单的算法,它是机器学习算法入门最好的算法之一,可以非常好并且快速地理解机器学习的算法的框架与应用.它是一种经典简单的分类算法,当然也可以用来解决回归问题.2 ...
- windows环境批量更改文件名
1.打开命令提示符,进入需更新文件所在的目录下(不熟悉的参考:https://blog.csdn.net/u012995964/article/details/53119516)2.批量命名 ...
- 010、MySQL日期时间戳转化为文本日期时间
#时间戳转化文本时间 SELECT from_unixtime( unix_timestamp( curdate( ) ) ); #时间戳转化文本时间格式化 SELECT from_unixtime( ...
- flutter安装中的一些方法
1.配置flutter环境变量 进入终端 vim ~/.bash_profile export ANDROID_HOME=~Library/Android/sdk export PATH=$PATH: ...
- Linux下Tomcat带日志启动命令
在Linux环境下,启动Tomcat时我们需要在启动过程中看到日志信息.可以通过下面命令启动Tocmat. ./startup.sh; tailf ../logs/catalina.out或者 ./s ...
- 《ES6标准入门》(阮一峰)--8.函数的扩展
1.函数参数的默认值 基本用法 ES6 之前,不能直接为函数的参数指定默认值,只能采用变通的方法. function log(x, y) { y = y || 'World'; console.log ...