专栏名称: PaperWeekly
PaperWeekly是一个分享知识和交流学问的学术组织,关注的领域是自然语言处理的各个方向。我们热爱知识,分享知识,希望通过我们大家的努力为自然语言处理的发展做出一点点贡献。我们每周会分享一期特定话题的论文笔记和本周值得读的相关论文。
目录
相关文章推荐
研之成理  ·  Angew. Chem. ... ·  昨天  
研之成理  ·  北航/香港科技大学合作,Nature ... ·  1 周前  
51好读  ›  专栏  ›  PaperWeekly

Image Caption | 阅读小组招募 #01

PaperWeekly  · 公众号  · 科研  · 2017-03-17 19:01

正文

生活总是忙碌,习惯的养成绝非朝夕。从本周开始,PaperWeekly 将尝试进行在线 reading group 的活动,希望忙碌着的你们,能和我们一起在阅读和学习中获得不一样的自由,获得独属于自己的乐趣。

我们的第一期阅读小组将一起精读本文,并通过在线协作工具进行交流,参与者需具备当期 topic 的研究背景,并在活动开始前完成论文阅读(活动细则详见文末)。



MAT: A Multimodal Attentive Translator for Image Captioning

文章来源:

https://arxiv.org/pdf/1702.05658.pdf

关键词

Image Captioning Multimodal Translation Attention

问题

针对 image captioning 问题,本文提出了一种多模态翻译模型,并且引入了新的 sequential attention 机制。

模型

1. Formulation

此前,大多数基于 CNN-RNN image captioning 模型都将图像的 CNN feature 作为 RNN 的输入,但是静态的 feature 不能针对 RNN 的序列特性提供足够的信息;另一方面,一些基于 sequence captioning 模型尝试在每一步都输入 CNN feature ,但实际上只是在不断强化同样的概念,并不能提供更多的语境信息。

因此,本文提出了基于 Seq2Seq 的多模态翻译模型:


该模型的核心观点:首先对图像进行 object detection ,将检测到的 object 序列逐个输入到 RNN 中,在 decoding 阶段输出单词。图中, **O** 为检测到的 object representation ,最后还需要输入全图的 CNN feature 作为 global environmental information 。在生成句子时,结合 encoding 的所有隐状态和 decoding 的当前状态,通过 attention layer (见后)得出 attention vector **C** ,并在此基础上计算:


2. Seq2Seq Multimodal Translator

Source sequence representation

首先利用 Object feature detector 检测 object 并提取其特征,再将这些特征嵌入隐空间中。文中使用了 R-FCN 作为 detector ,并对最后一个卷积层的特征进行 roi pooling


Target sequence representation

每个单词都使用长度等于字典大小的 one-hot 向量表示,之后也将其嵌入至前述的隐空间中。

Sequential Attention Layer

在以往 image captioning 研究中, attention 机制都建立在图像的 feature map 之上,这在一定程度上提高了对图像内容描述的准确度,但是并没有在 encoding 时很好地利用语境信息。

我们可以观察到,在 object sequence 中距离开头非常近的 object 可能和 decoding 时靠后的单词有较大的关联。例如,图片中可能有一只狗的检测分数最高,因而会在 encoding 时排在序列的第一位,但是“ dog” 这个词也许会出现在句子的末尾( A man is playing with a dog )。所以在生成单词时,作者使用了 attention layer 计算当前 decoding 状态与所有 encoding 隐状态的相关性。



dt 为当前的 decoding state h encoding hidden state V W 均为参数。

Training

训练在 MSCOCO 数据集上进行。由于 batch training 时会出现 source sequence target sequence 长度不一致的情况,文中使用了一种 bucket and padding 的方法。具体为:设定四个 bucket ,例如 {(2, 10), (4, 15), (6, 20), (8, 30)} 。括号前一位数字代表 object 个数,后一位数字代表 target sequence 长度。假设某个样本中有 5 object 10 个单词,由于 5 超过了第二个 bucket 4 object 的门限,因而该样本落入第三个 bucket 中,同时使用 zero padding 来填补长度至 (6, 15) (原文 zero padding the words from 10 to 15 ,此处存疑)。

最终损失函数:


Results

本文使用 MSCOCO evaluation server 对性能进行了测试,得到了不错的结果。


Baseline Models

- Vanilla CNN+RNN

- Seq2Seq model without attention


通过比较 baseline 1 baseline 2 可以发现,图像的 sequential representation 确实能够比单纯的 CNN feature 更好地表达视觉信息;比较 MAT baseline 1 以及 baseline 2 ,发现本文提出的 sequential attention layer 能进一步给性能带来相当大的提升。

相关工作

关于 Image Captioning 的相关工作可以参考







请到「今天看啥」查看全文