一个问题,两个领域
自动图像描述,指的是给一张照片配上一句自然语言:系统看到图像,要用词句说出图里有什么,而不是只给出一串标签。这篇论文把自动图像描述看成一个连接计算机视觉(computer vision)与自然语言处理(natural language processing)的问题[1]。《看图说话:神经图像描述生成器》于 2014 年 11 月 17 日提交到 arXiv,编号为 1411.4555[1]。作者是 Oriol Vinyals、Alexander Toshev、Samy Bengio 和 Dumitru Erhan[1]。
模型怎么工作
作者把自己的系统称为一种生成式的深层循环(recurrent)架构,它把计算机视觉和机器翻译(machine translation)两个方向的进展结合在一起[1]。这类模型的一般做法并不难描述:先由视觉网络把图像表示成一串紧凑的数值,再由循环网络逐个词地生成句子。循环网络的特点是它维护一个不断更新的内部状态,并且每一步都把自己上一步的输出重新作为输入,因此已经写出的词会影响接下来写什么。两个部分是一起训练的,而不是把分别设计好的模块拼起来。
训练被表述为一个单一的目标:在给定训练图像的前提下,最大化目标描述句子的似然[1]。也就是说,网络会同时看到一张图像和人们为它写下的那句话,参数被调整到让这句话在模型下更可能出现。这个目标不需要图像与句子配对之外的额外标注。
结果
作者报告,在 Pascal 数据集上模型达到 59 的 BLEU-1 分数,而当时的最好成绩是 25[1]。BLEU 是一种评分方法:把机器生成的句子与一句或多句参考句子比较,统计两者共有的词序列;BLEU-1 里的「1」表示只统计单个词,不看词对或更长的词组。分数越高越好,而且这种分数主要在同一数据集、同一评分设定下比较才有意义,论文也正是这样使用的:在 Pascal 上是 59 对 25。
为什么重要
论文强调,语言模型是仅从图像描述中学会流畅句子的[1]。这一点重要,是因为输出的流畅并不来自另行编写的语法、句子模板或人工规则,而是来自训练数据里的图像—句子对本身:网络被推着去让人写下的那句描述在它的图像条件下更可能出现。于是,一个模型同时承担了过去常被拆成两件事的「看」与「说」,并且用同一个目标端到端地训练。
论文的框架同样值得注意。它把图像描述处理成一种从图像到词序列的映射——就像机器翻译把一种语言映射成另一种语言——从而把图像描述放进同一类生成模型之中,并把它呈现为计算机视觉与自然语言处理的交汇点,而不再是一个附带词表的专门视觉任务[1]。在 Pascal 上 59 对 25 的差距,就是论文用来支持这条路线的证据[1]。
注释与来源
- Show and Tell: A Neural Image Caption Generatorhttps://arxiv.org/abs/1411.4555
引用本页: 看图说话:神经图像描述生成器. TellWorld, https://www.tellworld.net/zh/papers/show-and-tell-2014. 更新于 2026-11-07