论文阅读:Neural Image Caption Generation with Visual Attention
2017-10-18 11:37
1256 查看
原文地址
代码地址
作者在同一个framework下提出两种基于attention的image caption generators:一种是可以通过标准的BP进行训练的soft attention,另一种是通过最大化变分下界或增强学习来训练的hard attention(“hard”stochastic attention mechanism trainable by maximizing an approximate variational lower bound or equivalently by REINFORCE )。
两者的主要区别体现于后面定义的Φ函数上。
编码器使用一个CNN,用一张图片作为输入,输出一个1-of-K的词序列。
为了保持从CNN提取出的特征向量和原图像的对应关系,作者没有从最后的全连接层提取特征,而是从相对低的卷积层中提取特征,提取出的L个特征被操作为annotation vectors,每一个vector都是D维的,即
解码器
主要使用一个LSTM作为解码器。LSTM的cell结构如图。
————————————————————————————————————
在这些equations中,context vector zt→是输入图像的relevant part在t时刻的动态表达,是以annotation vectors为输入通过Φ函数计算得出的。
在hard attention模型中,对每一个annotation vector ai→所对应的图像中的location i,模型会产生一个非负权值αi,可以被视为location i是用来产生下一个word的relevant part的概率(soft版本的attention基本沿用Bahdanau et al.(2014))。αi通过 attention model fatt 计算得到,fatt是一个基于前一时刻的hidden state ht−1 的MLP(Multilayer perceptron),也就是说,这一时刻模型会“看”向哪里取决于之前已经产生的词序列。具体计算方法如下:
LSTM的初始的memory state(或称cell state)和hidden state通过两个独立的以annotation vectors均值为输入的MLP估计所得。
作者使用deep output layer(Pascanu et al.,2014)来计算输出单词的概率。
大致说定义一个目标函数Ls,本质是一个log概率的变分下界(variational lower bound on the marginal log-likelihood);learning rule 曾在Bahdanau et al.(2014))中被提到与
hard version需要在每一时刻对st进行采样导致目标函数不可导。而soft attention 则直接获取context vector zt→的期望
则
ϕ({ai→},{αi})=∑Liαiai→
整个模型是连续可导的。
还有另一种理解方法,牵扯到hard version的数学理论,基本没看懂,PASS。
作者对soft attention提出一种名为 doubly stochastic attention的改进。因为式(5)我们很容易能知道∑Liαti=1,与此同时作者约束∑tαti≈1,这意味着促使模型在整个生成image caption过程中的不同时刻对输入图片的所有L个部分倾注相同的注意力,即对任意i-th location,它在整个T内获得的attention权重总和都约等于1。在实验部分这被证实能够定量提高模型分数以及定性提升caption的丰富度和区别度。
另外增加一个gating scalar β,则模型更新为:
ϕ({ai→},{αi})=β∑Liαiai→
其中:
βt=σ(fβ(ht−1))
加入这一标量之后模型会把更多的注意力图片中的objects上。
总体来说,改进后的模型的目标函数如下:
后面就是实验结果和结论了。
代码地址
作者在同一个framework下提出两种基于attention的image caption generators:一种是可以通过标准的BP进行训练的soft attention,另一种是通过最大化变分下界或增强学习来训练的hard attention(“hard”stochastic attention mechanism trainable by maximizing an approximate variational lower bound or equivalently by REINFORCE )。
两者的主要区别体现于后面定义的Φ函数上。
模型细节
编码器编码器使用一个CNN,用一张图片作为输入,输出一个1-of-K的词序列。
为了保持从CNN提取出的特征向量和原图像的对应关系,作者没有从最后的全连接层提取特征,而是从相对低的卷积层中提取特征,提取出的L个特征被操作为annotation vectors,每一个vector都是D维的,即
解码器
主要使用一个LSTM作为解码器。LSTM的cell结构如图。
————————————————————————————————————
在这些equations中,context vector zt→是输入图像的relevant part在t时刻的动态表达,是以annotation vectors为输入通过Φ函数计算得出的。
在hard attention模型中,对每一个annotation vector ai→所对应的图像中的location i,模型会产生一个非负权值αi,可以被视为location i是用来产生下一个word的relevant part的概率(soft版本的attention基本沿用Bahdanau et al.(2014))。αi通过 attention model fatt 计算得到,fatt是一个基于前一时刻的hidden state ht−1 的MLP(Multilayer perceptron),也就是说,这一时刻模型会“看”向哪里取决于之前已经产生的词序列。具体计算方法如下:
LSTM的初始的memory state(或称cell state)和hidden state通过两个独立的以annotation vectors均值为输入的MLP估计所得。
作者使用deep output layer(Pascanu et al.,2014)来计算输出单词的概率。
Stochastic “Hard” Attention
基本看不懂。。。大致说定义一个目标函数Ls,本质是一个log概率的变分下界(variational lower bound on the marginal log-likelihood);learning rule 曾在Bahdanau et al.(2014))中被提到与
Williams, Ronald J. Simple statistical gradient-following algorithms for connectionist reinforcement learning中的REINFORCE learning rule 等价。
Deterministic “Soft” Attention
定义一个location variable st,用来表示当模型在产生第t个词时attention focus的位置。st,i 是一个one-hot的indicator,当i-th location(out of L)被用来提取视觉特征时它的对应位就会被置为1。hard version需要在每一时刻对st进行采样导致目标函数不可导。而soft attention 则直接获取context vector zt→的期望
则
ϕ({ai→},{αi})=∑Liαiai→
整个模型是连续可导的。
还有另一种理解方法,牵扯到hard version的数学理论,基本没看懂,PASS。
作者对soft attention提出一种名为 doubly stochastic attention的改进。因为式(5)我们很容易能知道∑Liαti=1,与此同时作者约束∑tαti≈1,这意味着促使模型在整个生成image caption过程中的不同时刻对输入图片的所有L个部分倾注相同的注意力,即对任意i-th location,它在整个T内获得的attention权重总和都约等于1。在实验部分这被证实能够定量提高模型分数以及定性提升caption的丰富度和区别度。
另外增加一个gating scalar β,则模型更新为:
ϕ({ai→},{αi})=β∑Liαiai→
其中:
βt=σ(fβ(ht−1))
加入这一标量之后模型会把更多的注意力图片中的objects上。
总体来说,改进后的模型的目标函数如下:
后面就是实验结果和结论了。
相关文章推荐
- [深度学习论文笔记][Attention]Show, Attend, and Tell: Neural Image Caption Generation with Visual Attention
- 论文笔记:Show, Attend and Tell: Neural Image Caption Generation with Visual Attention
- Show, Attend and Tell: Neural Image Caption Generation with Visual Attention
- Visual Attention Based on Long-Short Term Memory Model for Image Caption Generation 论文笔记
- 论文阅读ImageNet Classification with Deep Convolutional Neural Networks &Going Deeper with Convolutions
- [论文阅读笔记]Neural Relation Extraction with Selective Attention over Instances
- 论文阅读 - 《Neural Sentiment Classification with User and Product Attention》
- 论文阅读 - 《Neural Relation Extraction with Selective Attention over Instances》
- 论文阅读(1)——ImageNet Classification with Deep Convolutional Neural Networks
- 阅读图像显著性检测论文一:A Model of Saliency-Based Visual Attention for Rapid Scene Analysis
- 【论文理解】Clothing Retrieval with Visual Attention Model
- 论文阅读(Weilin Huang——【ECCV2016】Detecting Text in Natural Image with Connectionist Text Proposal Network)
- AlexNet卷积神经网络学习参考论文《ImageNet Classification with Deep Convolutional Neural NetWorks》
- TextBoxes: A Fast Text Detector with a Single Deep Neural Network论文阅读
- 论文分享 - Show and Tell: A Neural Image Caption Generator
- 【论文阅读】Neural Language Correction with Character-Based Attention
- 论文笔记:ImageNet classification with deep convolution neural networks
- 论文阅读(Weilin Huang——【arXiv2016】Accurate Text Localization in Natural Image with Cascaded Convolutional Text Network)
- 论文笔记:Aligning where to see and what to tell: image caption with region-based attention ...
- 论文笔记:Bottom-Up and Top-Down Attention for Image Captioning and Visual Question Answering