论文笔记:Show and Tell Lessons learned from the 2015 MSCOCO Image Captioning Challenge

感想

    image caption,我看不少人翻译的是看图说话,这篇文章我通读了,感受作的工做仍是不少的,看来想作一篇好的paper须要付出不少努力,不过那个评估方式只是介绍性的,没有细讲公式,这个领域应该是比较火的领域,我感受是由sequence to sequence模型演化而来,源代码也有,这应该是做者的伟大之处,感谢原做者的贡献和开源社区。git

    今天用Mac上面的safari和chrome浏览器来编写这个博客,csdn编辑器对mac chrome和safari浏览器支持不是很好,而后发现csdn的编辑器超级难用,编辑器改版后不少东西都不习惯,感受用户体验作得更差了,编辑这篇博文的时候让我吃尽了苦头。github

 

1 介绍

使用合适的英语语句来自动描述一幅图片的内容是一项很是有挑战性的任务,但它有很大的做用,例如帮助伤残人士来更好的理解网页上的图片的内容。这项任务比有着很好研究的图片分类和目标识别任务更难,这在计算机视觉社区成为了关注的焦点。实际上,一个描述不只包含一幅图片的内容,并且也必须解释物体之间的相互联系,物体与物体属性的相互联系以及他们所涉及的活动。另外,上面的语义知识已经在天然语言中来解释了,像英语,这意味着除了视觉理解外,语言模型是须要的。
前面的大多数尝试都是上述子问题的解决方案,为了从一张图片获得它的描述。相比之下,咱们愿意把这些工做用一个联合的模型来表示,把图片I当作输入,最大化几率P(S|I),其中,S为产生的目标单词序列,S={S1,S2,...},每一个单词St来自一个给定的词典。用来充分的描述图片。
咱们的工做主要受最近的机器翻译的启发,其任务是把原语言的一个句子S转换成目标语言的的翻译T,最大化P(T|S)。许多年来,机器翻译在一系列分开的任务上取得了进步(例如单独翻译词,对齐单词,重排序等等),可是最近的工做显示翻译能够作得很简单,即便用RNN,仍然能获得最好的效果。“encoder”RNN读取源句子,而且把它转换为一个丰富的固定长度的向量表示,反过来,这个做为“docoder”RNN的初始隐藏状态,来产生目标序列。
这里,咱们遵循这个优雅的方法,把encoder RNN替换为一个深度CNN。在过去的几年里,CNN被证实能够产生输入图片的丰富表示,咱们把图片嵌入成一个固定长度的向量,这样这个表示可用于许多视觉任务。所以,很天然的使用CNN做为图片的”encoder”,首先经过在图片分类任务来进行预训练,随后,使用其隐藏层做为RNN decoder的输入,以此来产生序列。咱们把这个模型叫作Neural Image Caption或者叫作NIC。web

2 贡献

咱们的贡献以下:
1. 咱们提出了对这个问题的端到端系统。它是一个神经网络,能够利用SGD来彻底训练。
2. 咱们的模型结合了用于视觉和语言模型的最好的子网络,网络能够在更大的语料库中进行训练,也能够利用额外的数据。
3. 和如今的方法相比,它取得了最好的效果,例如在Pascal数据集,NIC获得了59的BLEU得分,而如今最好的模型只有25分,而人类的得分为69.在Flickr30k上,咱们把得分从56提升到了66,在SBU上,咱们从19提升到了28.算法

3 模型

在这篇文章中,咱们提出了一个神经和几率框架,用于产生图片的描述。最近在统计机器翻译上的研究代表,给定一个强有力的序列模型,经过直接最大化正确翻译的几率是有可能取得最佳效果的,在一个端到端的模式里,给定一个输入句子。这些模型利用了RNN,它把可变长度的输入编码为固定维度的向量,用这个表示来解码成想要的输出句子。因而,很天然的使用相同的方法,给定一张图片,利用相同的原则来把它翻译成描述。
因而,咱们提出在给定图片的状况下,直接最大化正确描述的几率,使用下面的公式:chrome

其中,θ是咱们模型的参数,I是一幅图片,S为正确的描述,由于S表示任何句子,所以长度是无界的。因而,利用链式法则来对其在S0,…,SN上的联合几率建模,其中,N是特殊样例的长度:bootstrap

其中,为了收敛,咱们去掉了对θ的依赖,在训练时间上,(S,I)是一个训练样例对,咱们在整个训练集合上优化log几率的和,使用梯度降低。
很天然的用RNN对p(St|I,S0,…,St-1)进行建模,其中,咱们依赖的直到t-1时刻单词的可变数量用一个固定的隐藏状态或者记忆ht来表达。记忆经过新的输入xt来更新,xt须要通过非线性函数f:api

    为了使得上述的RNN变成更具体,两个关键设计选择:f的具体形式是什么和图片和单词怎样做为网络的输入xt。对于f,咱们使用LSTM网络,她在序列任务上显示了很好的性能表现,例如翻译。浏览器

    对于图片的表示,咱们使用CNN,他们已经被普遍用于图片分类任务了,如今是目标分类和检测最好的方法。咱们对CNN的特别选择是选择最近batch normalization的方法,它在ILSVRC 2014分类竞赛上有着最佳的性能表现。另外,研究显示他们对其它的任务也有效,例如经过迁移学习的场景分类,这些单词被表示为嵌入模型。服务器

3.1 基于LSTM的句子产生器

    函数f的选择受它处理消失和爆炸梯度的限制,这是设计和训练RNN最广泛的挑战。为了解决这个挑战,引入了一个特别形式的循环网络,叫作LSTM,而且在翻译和序列产生上取得了巨大的成功。网络

    如上图,LSTM模型的核心是记忆单元c,它在每一个时间步输入上来编码这步观察到的东西。Cell的行为时有gates来控制的,层间用乘积实现,因而若是gate为1,就保留这个来自gated层的值,若是gate为0,则输出为0.尤为,这三个门用于控制是否遗忘当前的cell的值(forget gate f),若是他应该读取输入(input gate f),是否要输出新的cell值(output gate o).gates和cell以及输出的定义以下:

 

其中,

表示有一个gate值的点积,W为训练的参数。这样的乘积gates使得LSTM的训练更鲁棒,由于这三个gates能更好的处理梯度消失和梯度爆炸。非线性函数σsigmoid函数和h(.)是双曲正切函数。最后的方程mt是softmax的输入,它产生单词的几率分布pt。

 

3.1.1 训练

    在看到图片和全部前言以后,LSTM模型训练用于预测句子中的每一个单词,定义为p(St|I,S0,…,St-1)。为了达到这个目的,这对把LSTM做为一个不可控的形式是有指导性的,即LSTM的记忆的副本是为图片和句子单词而建立的,所以,全部的LSTMs共享相同的参数,LSTMs在实践t-1时刻的输出mt-1被送入了t时刻的LSTM.全部的循环连接变为在不可控的版本中的前向链接,如图3。

    更详细地,若是咱们用I表示输入图片,S=(S0,…,SN)是一个真的描述这张图片的句子,不可控过程读取:

 

其中,咱们把每一个单词表示为one-hot向量St,维度为词典的大小。注意咱们把S0表示为一个特别的开始单词,SN表示为一个特别的中止单词,分别表示为句子的开始和结尾。尤为是经过中止单词,LSTM信号就产生了一个完整的句子。图片和单词都被映射到相同的空间,图片使用了一个视觉的CNN,单词使用wordembedding We。图片I在t=-1时刻只输入一次,来告知LSTM关于图片的内容。咱们经验地证实在每一个时间步把图片做为额外的输外的输入会产生不好的效果,由于网络能够经验的利用图片里面的噪声,而且更容易过拟合。

    咱们的损失是每步中正确单词-log几率的和:

上述的损失在LSTM的全部参数上最小化,图片嵌入CNN的顶层和单词嵌入We。

 

3.1.2  Inference

 

    在给定一张图片的状况下,有不少方法来产生一个句子。第一个是Sampling,根据p1仅仅采样第一个单词,随后提供对应的嵌入做为输入来采样p2,继续指导咱们采样到句子的特别结尾或者一些最大长度。第二种是BeamSearch:迭代地考虑在时刻t上的k个最佳句子的集合,一次做为候选项来产生t+1时刻的句子,仅仅保留最好的K个。更好的近似:

 

    咱们在下面的实验中使用BeamSearch方法,Beam的大小为20.使用Beam的大小为1会使咱们的结果退化平均2个BLEU点。

 

4 实验

咱们作了几组额外的实验来评估咱们模型的有效性,使用了一些评估尺度,数据源,和模型结构。

 

4.1 Evaluation Metrics

    尽管有时候不清楚是否一个描述应该被认为是在给定图片上的成功的,前面的工做已经提出了一些评估标准,最可靠的(耗时的)是询问打分的人对给定图片下每一个描述的有用性的客观得分。在这篇文章中,咱们使用这个来增强,一些自动的评估实际上和他们的客观分数相关,前面的工做是询问评分员来给每一个产生的句子打分,范围为1到4.

    对于这个评估尺度,咱们创建了一个AmazonMechanical Turk实验,每张图片由两个工人打分,典型的工人之间满意等级是65%。以防不满意,咱们简单的对分数求平均,并记录得分的平均值。对于变量分析,咱们采用bootstraping。

    余下的评估能够自动进行计算,假设有groundtruth。例如人类产生的描述,目前为止在图片描述文学最通用的评估是BLEU得分,它是一个单词预测的一种形式,即产生句子和参考句子的n-grams。即便这个评估有一些显而易见的缺点,可是结果显示它和人类评估关联很好。在这个工做中,咱们对其进行了增强,详细见4.3节。评估协议的拓展以及咱们系统产生的输出能够在http://nic.droppages.com/找到。

    除了BLEU之外还有,可使用模型对给定模型的转录的perplexity,perplexity是每一个预测几率的逆几率的几何平均,咱们使用这个评估方式在集合(held-outset)上进行模型选择和参数调优,BLEU一直是更好的选择,所以咱们就没有对它进行过多阐述。

    最近,出现了一个新颖的评估方式,叫作CIDER,它用于MS COCO Captioning challenge来组织。总而言之,它很亮产生的n-gram和参考的句子的一致性,其中,一致性是带权的n-gram显著性和罕见性加权(n-gramsaliency and rarity)。

    上述的评估方式有许多缺点,咱们提出了使用METEOR和ROUGE评估方式的额外结果。

    最后,当前图片描述的文学也使用代理任务来对图片的一段描述集合进行排序。这样作有其优点,咱们可使用周知的排序评估方式向recall@k,另外一方面,把描述生成任务转换为一个排序任务是不满意的:随着图片描述的复杂度上升了,词典和可能的句子的数量成指数性增加,一个预约义的句子适合一幅图片的可能性会降低,除非这样的句子也成指数型增加,但这是不现实的;因潜在的评估这样每幅图片大量句子语料库的计算复杂度很大,相同的方式也用于语音识别了,其中一个在给定声音序列下产生句子;而早期的尝试居中在孤立的音素和单词的分类上,如今这个任务最好的方法是生成式的,模型能够从很大的词典中产生句子。

    既然咱们的模型能够产生合理质量的描述,即便在衡量图片描述上有模糊性(有不少合法的描述不在groundtruth中)。咱们相信咱们应该关注生成任务的评估方式而不是排序。

 

4.2 数据集

 

为了进行评估,咱们使用了许多数据集,它包含图片和对图片的英文描述,数据集的统计以下:

除了SBU数据集,每张图片用5张标记好的句子,句子是相对视觉的(visual)和无偏的(unbiased)。SBU的描述是图片拥有者给的,图片来自Flickr。他们不能保证是视觉的或者无偏的,所以数据集有不少噪声。

    Pascal数据集为测试定制的,在SBU的数据集中咱们用1000张图片作测试,剩下的图片作训练。类似地,咱们从MSCOCO验证集合中随机采样4K图片,叫作COCO-4k,并把它用于下面的部分。

 

4.3 结果

    咱们的模型是数据驱动而且是端到端训练的,给定丰富的数据集,咱们想要回答一些问题,例如“howdataset size affects generalization”,“what kinds oftransfer learning it would be able to achieve”,“how it would deal with weakly labeled examples”,结果,咱们在五个不一样的数据集上进行了实验,这使得咱们能更深刻的理解咱们的模型。

4.3.1 训练细节

    训练的时候,咱们碰见的不少挑战是训练模型的时候得处理过拟合,纯监督的方法,须要大量的数据,可是那些高质量的标签少于100000张。幸好有像ImageNet的数据集,使得指派一个描述的任务比目标分类更难,数据驱动任务最近成为了主流。结果,咱们相信,咱们获得的结果会很好,相对于大多数当前人类工程的方法,咱们方法的优势在最近几年会随着训练集的增长而增加。

    然而,咱们用一些技术来处理过拟合。防止过拟合的最显而易见的方式是把咱们系统的CNN组件的初始化权重用预训练模型来初始化。咱们在全部的实验中都使用了这种方式,就泛华能力而言,这种方式很不错。另外一个权重的集合是初始化We,word embeddings。咱们尝试用一个大的新闻语料库来初始化他们,可是没有获得很好的效果,为了简单咱们未对它们进行初始化。最后,咱们作了模型级别的防止过拟合的技术,咱们尝试dropout和集成模型,也利用了模型的大小,均衡隐藏单元和深度的数量。Dropout和集成使得BLEU提高了一些。

    咱们用SGD来在全部的权重集合上进行训练,用了固定的学习率,没有momentum。全部的权重都是随机初始化,除了CNN的权重,CNN的权重不变,由于改变他们有一个负面影响。咱们使用512维度用于embedding和LSTM memory的大小。

    咱们用基本的分词预处理了描述,保留在训练集上至少出现5次的数据集。

 

4.3.2 Generation Results

 

    如上表1,表2,因为PASCAL没有训练集,咱们使用MSCOCO数据集进行训练,使用PASCAL和SBU数据集的最好结果不是使用基于图片内容的深度学习,所以能够说,这些分数的巨大改善来自于这种变化,最近也使用了Flickr数据集,可是大可能是在检索框架上进行评估。可是一个著名的例子除外,他们同时作检索和生成,而且这是在Flickr上的最好性能。

    表2的人类的分是经过其中一我的的说明文字和其它四个比较计算得来的。咱们用五个评分人来作这件事,而后取他们的BLEU得分的平均值。由于这给咱们的系统带来了轻微的优点,给出了BLOU分数,这是根据五个参考句计算出来的,不是四个,咱们在人类的基础上加上了五次应用的平均差别,而不是四次。

    在过去的几年里,这一领域取得了重大的进展,咱们认为BLEU-4的报告更有意义,这是机器翻译的标准。另外,咱们展现了更好的联系人类的评估。尽管最近有更好的评估方式的效果,咱们的模型和人类评分者相比有很大的差距。但是,当咱们使用人类评分来衡量说明文字的时候,咱们的模型更差。详细讨论请继续往下看。

 

4.3.3 迁移学习,数据大小和标签质量

 

    由于咱们已经训练了许多模型,咱们有一些测试集,咱们想要研究是否咱们能够把一个模型迁移到一个不一样的数据集,有多少域的不匹配会被补偿,例如高质量的标签或者更多的训练数据。

    迁移学习和数据大小的最明显的示例是Flickr30k和Flickr8k。这两个数据集标记类似,由于他们是由相同的组来建立的,当在Flickr30k上训练的时候,结果提升了4BLEU点。明显在这个示例中,咱们得出,经过增长更多的训练数据,模型性能会提升,由于整个过程是数据驱动而且是过拟合剪枝的。MSCOCO更好,数据集的大小是Flickr30k的5倍,可是因为他们的搜集过程是不同的,他们在词汇上有很大的不一样,而且不少不匹配。所以,全部的BLEU得分退化了10个点。所以,描述仍然是合理的。

    由于PASCAL没有官方的训练集,是单独来收集的,独立于Flickr和MSCOCO,咱们从MSCOCO上来作迁移学习,如表2.在Flickr30k来作迁移学习获得了更差的结果,BLEU-1是53,而MSCOCO的迁移模型得分是59.

    最后,即便SBU有弱标记(weak labeling,例如标签就是说明文字,不是人类产生的描述),有更大和更有噪声的词汇,任务更难。但是,有更多的数据来进行训练。当把MSCOCO模型用于SBU上的时候,咱们的得分从28退化到了16。

 

4.3.4 Generation Diversity Discussion

 

    在训练了一个生成式模型p(S|I),一个很明显的问题是模型是否产生新颖的描述(novel captions),产生的captions是不是多样性和高质量的。

 

表3显示的是当从beamsearch decoder返回N个最佳的列表的结果,不是假设最佳的。注意样本的多样性的程度可能会显示图片的不一样方面。排在前15的产生的句子,BLEU得分是58,这和人类的水平很类似。这意味着咱们模型产生的多样性的数量。加黑的是训练集里面没有的句子。若是咱们选择最佳的候选,其中句子的80%都是训练集里面的。这不怎么惊讶,由于训练数据的数量是至关小的,所以模型相对很容易来选择“exemplar”句子,而且用它来产生描述。若是咱们分析产生前十五的句子,至少有一半的是产生的新描述,可是仍然又一个想死的BLEU得分,意味着他们的质量很好,所以模型又一个健康的多样性(healthy diversity)。

 

4.3.5 Ranking Results

    咱们认为排序不是评估看图说话的一种满意的方式,可是许多论文报告了排序了得分,使用测试描述集合做为候选集来排序一个给定的图片。这个方法在这些评估方式上(MNLM)效果最好,特别的实现了了排序感知的损失。然而,NIC在排序任务(给定图片来排序描述,给定描述排序图片)的结果很好。如表4和表5.

 

4.3.6 人类评估

 

描述的人类评估结果如图4,由NIC和参考系统和不一样数据集的groundtruth提供。咱们能够看到,NIC比参考系统更好,可是比groundtruth更差。正如预料的那样,BLEU不是一个完美的评估方式,由于它不能捕获NIC和人类描述的区别,人类描述是由评分者评估的。评分的图片的样例如图5,

 

颇有趣的是,例如第一列的第二张图片,模型是怎样注意到frisbee的。

4.3.7 嵌入的分析

    为了把前面的单词表示St-1做为输入,用来解码LSTM,以此来产生St,咱们使用word embedding向量,它独立于词典的大小,不是一个简单的one-hot-embedding方法。另外,这些word embeddings能够和剩下的模型进行训练。值得注意的是学习到的表示是怎样从语言的统计学中捕获一些语义的。表6显示,对于少许的样例单词序列,其最近的其它单词能够在其嵌入空间中学到。

 

    注意到模型学习到的一些关系对视觉部分是有帮助的。真正的,“horse”,”pony”和“donkey”彼此靠近会使得CNN提取的特征和horse-looking animals相关。咱们假设,在一个类别只有不多几个样例的极端例子(“unicorn”)中,它和其它词嵌入(例如“horse”)的邻近应该提供更多的信息,但这些信息会在传统的基于bag-of-words的方法中会彻底失去。

 

5 MS COCO Image Captioning的挑战

    在2015年的春天,做为MS COCO数据集部分的一个挑战被提出,而且组织了比赛,参与者用MSCOCO 2014数据集来训练他们的算法,并提交其在验证集和测试集上的结果于评估服务器上,每一个组尝试不超过5次,为了限制其在测试集合上的果泥和,人类菜盆评估了竞赛的方法,获胜者被邀请到在CVPR 2015的workshop上来展现他们的方法。

5.1 度量(Metrics)

    评估方法已经在第4部分讨论了,特别强调的是CIDER,这是组织者选择用来对队伍排序的。结果,咱们在超参数选择期间也选择这种方式。

    咱们发现全部自动评估彼此相互联系至关强,如表7.

 

    尤为,这些评估方式的主要区别是人类怎样排序VS一些自动看图说话系统。有趣的是,BLEU(人类排16中的13)彷佛是至关的差,CIDER(人类排第6)相对高一点;METEROR是自动的评估,人类的得分最高(第三)。

 

5.2 Improvements Over Our CVPR15 Model

    在这个部分,咱们分析模型的部分对模型的预测的提高。5.3部分显示的是MSCOCO 竞赛的自动和人类评估。咱们在表8里面总结了全部的改进。

 

为了复现,咱们也开源了咱们的Tensorflow的模型的实现。地址以下:

https://github.com/tensorflow/models/tree/master/im2txt   (failed)

https://github.com/tensorflow/models/tree/master/research/im2txt (update)

5.2.1 图片模型的改进

    当咱们首次把咱们的模型提交到CVPR2015的时候,咱们当时使用的是最好的CNN,叫作GoogleLeNet,它有22层,是2014年ImageNet竞赛的获胜者。后来,咱们使用了更好的方法,其中包括一个新的方法,Batch Normalization,更好的规范化当前batch样例下每层的神经网络,使得其非线性更加鲁棒。新方法在ImageNet任务中获得了显著的提高,从6.67%减少到4.8%.在MSCOCO image captioning任务上提高了2个BLEU-4的点。

5.2.2 图片模型微调

     在原始的实验集合中,为了不过拟合,咱们用一个预训练的模型来初始化图片卷积网络,咱们首先用GoogleLeNet,随后转向了更好的Batch Normalization模型。可是固定住其参数,仅仅在MSCOCO训练集上训练模型的LSTM的部分。

    为了竞赛,当训练LSTM的时候,咱们也考虑了一些图片模型的微调,这样更能帮助图片模型集中到在MSCOCO训练集上的图片上,最终提高了其在captioning任务上的性能。

    值得重要的注意是微调图片模型必定要先把LSTM参数调到一个好的语言模型:咱们发现,当同时训练两个模型的时候,初始梯度的噪声从LSTM传到图片CNN模型,使得图片模型变差,而且永不恢复。相反,咱们把咱们的模型训练了500K步,固定了CNN参数,转而联合训练模型达100k步。使用了一个GPU进行训练,每步的时间大约是3秒。因而,训练话了3周时间,并行训练会产生更差的结果,然而它加速了收敛的速度。

    这个模型的提高是1个BLEU-4的点,更重要的是,这个改变使得模型把信息从图片传递到语言,这是不可能的,由于ImageNet标签的空间的覆盖度不足。例如,改变后,咱们发现了许多阳历,其中咱们预测到了正确的颜色。例如.”A blue andyellow train…”。顶层CNN激励在ImageNet-specific类别上被过分训练了,而且能够抛弃有趣的特征,例如颜色。因而,在没有fine tuning图片模型的状况下,captiongeneration模型可能不输出对应那些特征的单词。

5.2.3 Scheduled Sampling

    咱们的模型使用了一个LSTM来产生给定图片的描述,如图3,在给定最好的模型和caption的前面一个单词的状况下,训练的LSTM尝试来预测caption的每个单词。在推断中,对于一张新图片,先前的单词显然是未知的,因而经过模型自身产生单词来代替。因而训练和推断上有一个差别。最近,咱们提出了一个curriculum学习策略来温和的把训练过程从一个fully guided scheme 转换为一个lessguided scheme,fully guided scheme的意思是使用真实的前面的单词,lessguided scheme的意思是大多使用模型产生的单词。咱们应用了这个策略,使用了不一样的安排(schedules)来比赛,发现相比标准的目标函数训练提高了1.5个BLEU-4的点。

5.2.4 集成

    集成是一个长久以来很是简单且高效的方式,使得机器学习系统获得提高。在深度体系结构的环境下,在相同任务上只须要分开的训练多个模型,潜在的改变一些训练条件,在推断时间来聚合他们的答案。为了竞赛,咱们创造了5个集成模型,用Scheduled sampling来进行训练,其中10个模型微调了图片模型来进行训练。结果模型提交到了竞赛中,把咱们的结果提高了1.5个BLEU-4个点。

5.2.5 Beam大小约简

    为了用咱们的方法来产生一个句子,咱们使用3.1部分的BeamSearch,其中咱们维持了top-k单词序列的列表。在原始的论文中,咱们尝试只使用两个值k:1和20.这意味着模型在每一个时间步只保留最佳的产生的单词。

    为了比赛,咱们实际上尝试了不少beam size的大小,选择了根据CIDER评估上产生最佳单词序列的大小,咱们考虑与人类判断的的最好的对齐。和咱们的指望相反,最佳的beam大小很小:3.

    注意到,随着beam的大小的增加,咱们获得了更多的候选句子,根据所得到到的可能性选择最佳的。所以,若是模型训练好了,其可能性和人类判断一致,增长beam的带小会产生更好的句子。现实是咱们用一个相对小的beam大小来得到的最好的性能,要么就是模型已通过拟合了或者训练的目标函数和人类的判断是不对齐的。

    咱们也观察到,经过见效beam的大小,例如用一个浅层的句子搜索。咱们增长了产生句子的新颖性,而不是重复80%的训练的captions,这个比例减小到了60%。假设支持事实,模型已通过拟合到训练集,咱们得出这个约简的beam大小技术做为另外一种正则的方式,经过增长推导过程的一些噪声。

     减小beam的大小是一个单个的改变,它是的CIDER的得分提高最多。这个简单的改变提高了2个BLEU-4的点。

 

5.3 竞赛结果

 

5.3.1 自动评估

 

     全部的队伍容许5次提交到评估服务器,评估的是大规模的未看见的测试图片集合(ona large, unseen set of test images)。容许团队监控进度排行榜,这激发咱们持续提高咱们的模型,指导deadline,即便自动评估不彻底反应captions的质量,有很强的相关性,例如提高一个自动评估的分数一般意味着一个更好的captioning系统。

    由于咱们提交了咱们的paper,幸好全部的改进,咱们BLEU-4得分提高了8个绝对点,根据在测试集合上的自动评估方式(按照CIDER评估,使用5个ground truth captions),获得的结果如表9.

 

5.3.2 人类评估

 

MSCOCO challenge的最好的15次提交和一我的类的baseline用了5个不一样的评估方式来评估。

M1 caption 评估大于或者等于人类评估的比例

M2 经过图灵测试的captions的比例

M3 captions平均正确性(incorrect-correct),范围为1-5。

M4 captions的的斜街的平均数量,维度为1-5(lackof details-very detailed)。

M5 和人类描述类似的比例

注意,M1和M2是来决定获胜者的,其它的仅仅是试验,可是为了完整性,也会报告。

结果在竞赛网站的排行榜上(theLeaderboard of the competition website),网址为http://mscoco.org/dataset/#captions-leaderboard,根据M1和M2的评估,排在前5的提交如表格10:

    最终,咱们在图6展现了少许的样例图片,伴有caption,这些是由咱们原来的模型产生的。

 

咱们从development集合中随机采样20张图片,选择了最有趣的图片。很明显captions的总体质量提高明显,BLEU-4的提高是8个绝对点。

参考文献

 

[1]. Oriol Vinyals, Alexander Toshev, Samy Bengio, DumitruErhan: Show and Tell: Lessons Learned from the 2015 MSCOCO Image CaptioningChallenge. IEEE Trans. Pattern Anal. Mach. Intell. 39(4): 652-663 (2017)