作者在同一个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