Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

AAAI 2020 | 北理工&阿里文娱:你所看视频的介绍,可以用到这样的「图像描述」技术

人工智能顶级会议 AAAI 2020 将于 2 月 7 日-2 月 12 日在美国纽约举办,不久之前,AAAI 2020 公布论文介绍结果:今年最终收到 8800 篇提交论文,评审了 7737 篇,接收 1591 篇,接收率 20.6%。本文对北京理工大学、阿里文娱摩酷实验室合作的论文《MemCap:Memorizing Style Knowledge for Image Captioning》进行解读。

该论文提出了一种通过记忆机制对语言风格相关的知识进行编码的风格化图像描述方法。由于语言风格无法直接从图像中得到,我们使用记忆模块存储语言风格相关的知识,并在生成风格化描述时根据图片中的内容检索这些知识。

论文链接:https://wuxinxiao.github.io/assets/papers/2020/MemCap.pdf

一.研究动机

图像的自然语言描述(image caption)任务涉及对图像内容的理解与自然语言的生成,是连接了计算机视觉自然语言处理两个领域的问题。目前的大多数图像描述方法专注于为图像生成准确,客观的描述,这些描述没有明显的语言风格。实际上,特定语言风格的描述更具有应用价值。例如,用户在社交网络中上传了图 1(a) 所示的图片,普通的图像描述模型可能将其描述为「一只头上套着袋子的猫坐在沙发上」,虽然准确,但吸引力有限。如果生成的描述带有语言风格,如「这只淘气的喵星人想体验窒息的感觉」,会在社交网络中带来更好的传播效果,引起更多人的注意。又例如图 1(b) 中视频的推荐标题,带有鲜明的语言风格。若能自动生成类似的、带有某种风格的描述并作为标题,将极大地减轻视频推荐平台的运营人员的负担,提高视频推荐的分发效果。

图 1(a) ;图 1(b)。

风格化图像描述既要求能准确地理解视觉信息以体现客观内容,又要求能生成合适的语言风格以表达主观情感。然而,与语言风格相关的内容一般较为抽象,无法直接从视觉内容感知,这使得生成风格化描述变得十分困难。人们在理解图像内容时,通常可以利用联想能力,从先验知识中搜索并提取相应的风格化语料。当人们看到图 2,用正面的情感倾向描述其内容时,经常会将「好吃」与「食物」建立联系。本文作者提出了 MemCap 方法以模仿这一过程,通过风格化记忆模块,存储与语言风格相关的知识。在生成描述时,从风格化记忆模块中提取相关的知识,得到风格化的语句。

图 2:一些风格化描述的示例,与风格有关的部分用红色标出。

考虑到在实际的语料中,与视觉内容相关的词汇一般与体现语言风格相关的词汇共存,使得风格化记忆模块难以学习到干净的风格化语料。我们在本文中提出一种句子分解算法,分离与视觉内容相关的部分以及与语言风格相关的部分。

二.方法

方法概览

MemCap 模型包含风格化记忆模块 M,风格化图像描述模块 C,图片场景图生成器 E,句子场景图生成器 F 以及风格化句子分解模块 P,如图 3 所示。风格化记忆模块将场景图作为输入,检索与场景图有关的风格化知识 m。这部分知识与场景图送入图像描述模块 C 中,生成最终的描述。

由于本文方法只使用未配对的风格化句子进行微调,我们将风格化的句子分解为与内容相关的部分 W_c 和与风格相关的部分 W_s,并将 W_c 转换为场景图,作为 M 和 C 的输入。同时,W_s 被用于更新 M 中存储的风格化知识。M 与 C 通过端到端的方式进行训练。在测试时,将图片转换为场景图,作为 M 和 C 的输入。 

图 3 :MemCap 模型示意图。其中蓝色部分表示使用风格化语料微调的过程,红色部分表示生成风格化描述的过程。

风格化句子分解

给定风格化句子 y^s,句子分解的目的是分离出与风格无关的部分 W_c 以及与语言风格有关的部分 W_s。考虑到与语言风格有关的部分在客观描述(factual description)中很少出现,我们先获取句子的依存解析树,然后从解析树中去除导致较高困惑度的部分,即与语言风格有关的部分。在依存树中,每个单词 w_i 对应树中的一个节点 v_i。将第 t 次迭代中剩余的句子记作 y_((t))^s。在第 t 次迭代中,尝试去除节点 v_j 及其子树,并重新评价剩余的句子的困惑度。若困惑度最低的句子 y ̂_((t,j))^s 的困惑度小于 y_((t))^s 的困惑度则进入下一次迭代,否则算法中止,并将 y_((t))^s 作为与风格无关的部分。

场景图的向量表示

对于场景图 G=(V,E),其节点集合 V 包含三种不同的节点:物体节点 o_i,关系节点 r_ij 以及属性节点 a_i^k。对于每个节点,使用其对应的类别标签的词嵌入作为节点的向量表示。对于物体节点 o_i 与关系节点 r_ij,其上下文相关的表示 u_(o_i ) 以及 u_(r_ij ) 分别使用如下公式计算:

(1)

 其中 e_(o_i ),e_(r_ij ) 以及 e_(a_i^k ) 分别为物体 o_i,关系 r_ij 以及属性 a_i^k 的向量表示。整个场景图 G 的向量表示 e_c 为所有物体节点与关系节点的上下文相关表示的平均,即 

风格化记忆模块

对于风格 s,风格化记忆模块包含两个矩阵 M_s 以及〖M'〗_s,分别存储与语言风格相关的知识以及与之对应的客观内容。风格化记忆模块使用注意力机制实现对风格化知识的更新以及提取。在更新过程中,使用表示整个场景图的向量 e_c 为〖M'〗_s 的每一列计算权重,并根据这些权重,分别使用 e_c 以及表示所有风格化词汇的向量 e_s 更新〖M'〗_s 中的每一列以及 M_s 中对应的列。在风格化知识的提取过程中,通过类似的方式为〖M'〗_s 的每一列计算权重,并对 M_s 中对应的列加权并求和,作为记忆模块的输出 m。

生成风格化描述

本文提出的风格化描述模型基于 Up-Down 模型 [2],使用风格化记忆模块的输出 m 初始化两层 LSTM 网络的状态。第一层 LSTM 网络使用注意力机制对场景图中所有上下文相关表示 u_p 进行编码,第二层 LSTM 网络输出词汇表中每个单词的概率。

训练策略

MemCap 的训练分为预训练阶段与微调阶段。预训练阶段将图像以及对应的客观描述作为训练数据,采用交叉熵损失函数进行训练。在微调阶段,先使用交叉熵损失函数对模型进行微调,之后使用 self-critical 方法 [1] 对模型进行更新。将多个不同的评价指标(包括 CIDEr,对句子是否带有风格的评价以及句子的困惑度)加权,作为强化学习中的奖励。

三.实验

本文使用 MSCOCO 数据集对模型进行预训练,并使用来自 SentiCap 数据集的风格化语料(包括正面、负面两种风格)以及来自 FlickrStyle10K 数据集的风格化语料(包括浪漫、幽默两种风格)对模型进行微调。我们将 MemCap 方法与多种不同的方法进行比较,包括使用图片与配对的风格化描述的方法 SF-LSTM [4],使用未配对风格化语料的方法 StyleNet [5] 以及 MSCap [3]。为了与 MSCap 进行公平的比较,在实验中同时使用了多个风格化记忆模块,训练了能够同时生成多种风格的描述的模型。表 1 和表 2 分别为单一风格(为每种风格训练一个模型)和多风格(训练能够同时生成多种风格的描述的模型)实验的结果。此外,还进行了消融实验以验证模型中不同模块的有效性。

定量结果

本文采用 Bleu-1,Bleu-3,METEOR,CIDEr 等指标评价生成的句子是否与图片相关,采用平均困惑度(ppl)评价句子是否流畅,使用风格准确率(cls)评价生成的句子是否符合对应的风格。具体地,使用在风格化文本上训练好的语言模型计算平均困惑度,使用能够判断语言风格的分类器计算风格准确率。需要指出的是,平均困惑度越低越好,其他指标越高越好。

表 1 :单风格图像描述的实验结果,B-1,B-3,M,C 分别表示 Bleu-1,Bleu-3,METEOR,CIDEr;ppl 表示句子的平均困惑度,cls 表示风格准确率

表 2 :多风格图像描述的实验结果。

定性结果

图 4 展示了一些风格化图像描述的例子。可以发现,MemCap 生成的句子能够正确地描述图片的内容,并且具有明显的语言风格。

图 4:MemCap 方法生成的风格化描述。句子的风格用粗体标出,句子中与语言风格相关的部分使用下划线标出。

四.总结

本文提出了为图像生成风格化描述的 MemCap 方法,使用记忆模块对与语言风格有关的知识进行记忆,并在生成描述时检索相关的语言风格知识。因此,MemCap 方法生成的句子能够准确地描述图片中的内容,同时体现出语言风格。在两个风格化图像描述数据集上的实验证明了方法的有效性。

参考文献:

[1] Rennie, Steven J., et al. "Self-critical sequence training for image captioning." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2017.

[2] Anderson, Peter, et al. "Bottom-up and top-down attention for image captioning and visual question answering." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018.

[3] Guo, Longteng, et al. "MSCap: Multi-Style Image Captioning With Unpaired Stylized Text." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2019.

[4] Chen, Tianlang, et al. "``Factual''or``Emotional'': Stylized Image Captioning with Adaptive Learning and Attention." Proceedings of the European Conference on Computer Vision (ECCV). 2018.

[5] Gan, Chuang, et al. "Stylenet: Generating attractive visual captions with styles." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2017.

入门AAAI 2020北京理工大学阿里文娱自然语言处理
1
相关数据
权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

交叉熵技术

交叉熵(Cross Entropy)是Loss函数的一种(也称为损失函数或代价函数),用于描述模型预测值与真实值的差距大小

感知技术

知觉或感知是外界刺激作用于感官时,脑对外界的整体的看法和理解,为我们对外界的感官信息进行组织和解释。在认知科学中,也可看作一组程序,包括获取信息、理解信息、筛选信息、组织信息。与感觉不同,知觉反映的是由对象的各样属性及关系构成的整体。

词嵌入技术

词嵌入是自然语言处理(NLP)中语言模型与表征学习技术的统称。概念上而言,它是指把一个维数为所有词的数量的高维空间嵌入到一个维数低得多的连续向量空间中,每个单词或词组被映射为实数域上的向量。

损失函数技术

在数学优化,统计学,计量经济学,决策理论,机器学习和计算神经科学等领域,损失函数或成本函数是将一或多个变量的一个事件或值映射为可以直观地表示某种与之相关“成本”的实数的函数。

注意力机制技术

我们可以粗略地把神经注意机制类比成一个可以专注于输入内容的某一子集(或特征)的神经网络. 注意力机制最早是由 DeepMind 为图像分类提出的,这让「神经网络在执行预测任务时可以更多关注输入中的相关部分,更少关注不相关的部分」。当解码器生成一个用于构成目标句子的词时,源句子中仅有少部分是相关的;因此,可以应用一个基于内容的注意力机制来根据源句子动态地生成一个(加权的)语境向量(context vector), 然后网络会根据这个语境向量而不是某个固定长度的向量来预测词。

解析树技术

解析树是一个内部结构,由编译器或解释器在解析一些语言结构时创建,解析也被称为“语法分析”。

计算机视觉技术

计算机视觉(CV)是指机器感知环境的能力。这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。目标识别和面部识别也是很重要的研究领域。

准确率技术

分类模型的正确预测所占的比例。在多类别分类中,准确率的定义为:正确的预测数/样本总数。 在二元分类中,准确率的定义为:(真正例数+真负例数)/样本总数

先验知识技术

先验(apriori ;也译作 先天)在拉丁文中指“来自先前的东西”,或稍稍引申指“在经验之前”。近代西方传统中,认为先验指无需经验或先于经验获得的知识。先验知识不依赖于经验,比如,数学式子2+2=4;恒真命题“所有的单身汉一定没有结婚”;以及来自纯粹理性的推断“本体论证明”

图像生成技术

图像生成(合成)是从现有数据集生成新图像的任务。

自然语言处理技术

自然语言处理(英语:natural language processing,缩写作 NLP)是人工智能和语言学领域的分支学科。此领域探讨如何处理及运用自然语言;自然语言认知则是指让电脑“懂”人类的语言。自然语言生成系统把计算机数据转化为自然语言。自然语言理解系统把自然语言转化为计算机程序更易于处理的形式。

强化学习技术

强化学习是一种试错方法,其目标是让软件智能体在特定环境中能够采取回报最大化的行为。强化学习在马尔可夫决策过程环境中主要使用的技术是动态规划(Dynamic Programming)。流行的强化学习方法包括自适应动态规划(ADP)、时间差分(TD)学习、状态-动作-回报-状态-动作(SARSA)算法、Q 学习、深度强化学习(DQN);其应用包括下棋类游戏、机器人控制和工作调度等。

语言模型技术

语言模型经常使用在许多自然语言处理方面的应用,如语音识别,机器翻译,词性标注,句法分析和资讯检索。由于字词与句子都是任意组合的长度,因此在训练过的语言模型中会出现未曾出现的字串(资料稀疏的问题),也使得在语料库中估算字串的机率变得很困难,这也是要使用近似的平滑n元语法(N-gram)模型之原因。

图生成技术

根据给定信息信息生成图表。

推荐文章
暂无评论
暂无评论~