论文分享NO.4(by_xiaojian)
论文分享第四期-2019.04.16
Residual Attention Network for Image Classification,CVPR 2017,RAN
核心:将注意力机制与ResNet结合,用于图像分类。论文设计了一个注意力模块(Attention Module),通过级联该模块(即增加模型深度),网络可以学到细粒度的特征图谱(fined-grained feature maps),因为随着层数的加深,来自不同模块的注意力感知特征可以自适应地改变。
除了注意机制带来的更具判别性的特征,RAN还具有其他特性:
- 增加注意模块数量可以提升性能,因为能广泛地捕捉不同类型的注意力
- 以端到端的训练方式与最先进的深层网络结构相结合。显著减少了计算
论文将自己的贡献总结为三点:
- 堆叠的网络结构(stacked network structure):将多个注意力模块级联,处在不同网络深度的注意力模块捕捉不同类型的注意力
- 注意力残差训练(attention residual learning):直接堆叠注意力模块(没有加和的操作)会导致模型性能显著下降。因此提出类似于残差学习的训练方法,注意力模块的输出加上输入的特征,使模型学到具有残差性质的注意力
- 自底向上-自顶向下的前馈注意力(bottom-up top-down):即编码-解码的结构得到注意力图谱
注意力模块的网络结构(Attention Module):
如上图所示,是RAN网络的注意里模块的结构。先通过一个残差单元,然后分为主干分支(trunk branch)和掩码分支(mask branch),再将两个分支的输出依通道逐像素点乘,在与主干分支的输出依通道逐像素求和,最后通过一个残差单元,即得到该深度处的、结合了注意力机制的特征图谱。输出公式如公式(1)。
对于论文中自述的贡献2,将此公式与ResNet中残差训练的公式对比(公式2),ResNet中网络学到的是残差函数Fi,c(x),而RAN中的两个分支都是需要学习的,Fi,c(x)是主干分支的输出特征图谱;代表残差概念的是两个分支输出的点乘,也就是两个分支合起来的作用相当于ResNet中的残差函数,所以但就mask分支得到的并不是残差,而是一种掩码。但是mask分支输出的掩码,也有其作用,论文中总结为两点:
- 具有前向推理中的特征选择功能;
- 在反向传播时还具有梯度更新滤波的作用。掩码分支(mask branch)可以阻止错误的梯度来更新主干分支(trunk branch),使模型对噪声标签具有更好的鲁棒性。
论文中所提到的直接堆叠,应该是指没有上图中加和的操作。简单地直接堆叠注意模块会使性能显著下降,论文中解释的原因:1.在0和1之间不断与mask进行点积,会使更深层的特征数值降低。2.soft mask可能会破坏主干分支的好的特性,如残差单元的恒等映射。
对于论文中自述的贡献3,即mask分支中的编码-解码的结构,在图像分割的全卷积网络FCN、人体姿态估计的沙漏网络中都有体现,这种结构现在看来已经很普遍了,不算是很大的创新点。在本论文中还引入了跳转连接,但是该跳转连接经过了一个残差单元,这在其他一些结构中是没有的。处在网络浅层的注意力模型中,跳转连接较多,随着网络加深,这种跳转连接逐渐减少直至没有。
RAN网络的整体结构(Residual Attention Network):
上述整体结构对应于自述贡献1,处在不同网络深度中的注意力模型,会捕捉不同类型的注意力。
现在就有一个最核心的疑问:这样的卷积网络结构为什么就具有捕捉注意力的能力呢?到底什么是注意力机制,设计带有注意力机制的网络结构,其应该具有什么样的特点?或是说共性
论文分享NO.4(by_xiaojian)的更多相关文章
- 论文分享NO.3(by_xiaojian)
论文分享第三期-2019.03.29 Fully convolutional networks for semantic segmentation,CVPR 2015,FCN 一.全连接层与全局平均池 ...
- 论文分享NO.2(by_xiaojian)
论文分享第二期-2019.03.26 NIPS2015,Spatial Transformer Networks,STN,空间变换网络
- 论文分享NO.1(by_xiaojian)
论文分享第一期-2019.03.14: 1. Non-local Neural Networks 2018 CVPR的论文 2. Self-Attention Generative Adversar ...
- [论文分享] DHP: Differentiable Meta Pruning via HyperNetworks
[论文分享] DHP: Differentiable Meta Pruning via HyperNetworks authors: Yawei Li1, Shuhang Gu, etc. comme ...
- 论文分享|《Universal Language Model Fine-tuning for Text Classificatio》
https://www.sohu.com/a/233269391_395209 本周我们要分享的论文是<Universal Language Model Fine-tuning for Text ...
- Graph Transformer Networks 论文分享
论文地址:https://arxiv.org/abs/1911.06455 实现代码地址:https://github.com/ seongjunyun/Graph_Transformer_Netwo ...
- AAAI 2020论文分享:通过识别和翻译交互打造更优的语音翻译模型
2月初,AAAI 2020在美国纽约拉开了帷幕.本届大会百度共有28篇论文被收录.本文将对其中的机器翻译领域入选论文<Synchronous Speech Recognition and Spe ...
- [论文分享]Channel Pruning via Automatic Structure Search
authors: Mingbao Lin, Rongrong Ji, etc. comments: IJCAL2020 cite: [2001.08565v3] Channel Pruning via ...
- DNN论文分享 - Item2vec: Neural Item Embedding for Collaborative Filtering
前置点评: 这篇文章比较朴素,创新性不高,基本是参照了google的word2vec方法,应用到推荐场景的i2i相似度计算中,但实际效果看还有有提升的.主要做法是把item视为word,用户的行为序列 ...
随机推荐
- sklearn中决策树算法DesiciontTreeClassifier()调用以及sklearn自带的数据包sklearn.datasets.load_iris()的应用
决策树方法的简单调用记录一下 clf=tree.DecisionTreeClassifier() dataMat=[];labelMat=[] dataPath='D:/machinelearning ...
- (二分搜索 )Strange fuction -- HDU -- 2899
链接: http://acm.hdu.edu.cn/showproblem.php?pid=2899 Time Limit: 2000/1000 MS (Java/Others) Memory ...
- ZOJ 3702 Gibonacci number 2017-04-06 23:28 28人阅读 评论(0) 收藏
Gibonacci number Time Limit: 2 Seconds Memory Limit: 65536 KB In mathematical terms, the normal ...
- 大数据项目中js中代码和java中代码(解决Tomcat打印日志中文乱码)
Idea2018中集成Tomcat9导致OutPut乱码找到tomcat的安装目录,打开logging.properties文件,增加一行代码,覆盖默认设置,将日志编码格式修改为GBK.java.ut ...
- 12.1.2: How to Modify and Enable The Configurable Home Page Delivered Via 12.1.2 (Doc ID 1061482.1)
In this Document Goal Solution References APPLIES TO: Oracle Applications Framework - Ver ...
- 利用InfoPath实现SharePoint Server 2013列表的级联选择(Cascading Drop Down List)
最近在利用SharePoint Server 2013的列表组织和存储数据,发现SharePoint列表原始不支持级联选择的功能. 谷歌百度一通以后,发现了很多通过代码实现的方案,利用第三方的插件sp ...
- Mustache 使用说明
Mustache 使用说明 最近在升级SinGooCMS到MVC架构.管理前端使用了Mustache模板,把使用心得记录一下! 一.官网http://mustache.github.io/https: ...
- MVC控制器中动作方法返回的结果
在MVC控制器中主要的返回方式有如下几种: 1.Content(): 返回文本类型的ContentResult,比如“这是我做的一个MVC”. 2.File(): 返回文件类型的内容FileResul ...
- sharepoint 2013工具
caml designer 2013 生成caml工具 http://camlbuilder.codeplex.com/ 设计工具 CamlDesigner2013 爬网工具 HtmlAgilityP ...
- Android Studio如何用真机调试
1,在真机中设置USB调试模式打开,具体:“设置”->“应用程序”->“开发”->“USB调试”. 2,安装安卓的USB驱动,如果按照不好,那么去下载一个豌豆荚,它会帮你正确安装你的 ...