APP下载

一种基于多级LSTM解码器的细粒度图像描述方法

2019-10-18罗锋隋爱娜

软件导刊 2019年9期
关键词:解码器

罗锋 隋爱娜

摘 要:现有图像描述方法常见训练对象为单一的句子解码器,造成生成的描述内容在长距离依赖上效果不显著,描述细节质量不高,从而不能真实、完整地表征图像全局关系。针对该问题,设计一种基于多层LSTM解码机制的图像描述方法。该方法由多个LSTM解码器组成,其中每一个解码器均基于前一级输出进行工作,从而生成越来越精细的描述内容。在MS-COCO 测试集中,该方法的BLEU-1和CIDEr分别可达到0.753与1.090,明显优于单一解码器结构模型。实验结果表明,生成的模型表现出更精细的图像描述。

关键词:图像描述;长短时记忆网络;解码器

DOI:10. 11907/rjdk. 191594 开放科学(资源服务)标识码(OSID):

中图分类号:TP317.4 文献标识码:A 文章编号:1672-7800(2019)009-0058-04

A Fine-Grained Image Description Method Based on Multi-Level LSTM Decoder

LUO Feng1,2, SUI Ai-na1,2

(1. School of Computer Science and Cybersecurity, Communication University of China;

2. Key Laboratory of Convergent Media and Intelligent Technology Ministry of Education,Beijing 100024,China)

Abstract:The existing image description method usually trains a single sentence decoder, which makes the generated description content long-distance dependence effect not significant, the quality of the detailed expression is not high, and cannot completely represent the problem of the global relationship of the image. To solve this problem, this paper proposes an image description method for multi-layer LSTM decoding mechanism, which consists of multiple LSTM decoders, each of which works based on the output of the previous stage, thus generating more and more detailed descriptions. In the MS-COCO test set, the BLEU-1 and CIDEr of the method can reach 0.753 and 1.90 respectively, which is obviously better than the single decoder structure model. The experimental results show that the model generated by this method can show a more detailed image description.

Key Words:image description; long and short time memory network; decoder

0 引言

随着互联网的发展,社交图像数量迅猛增长,单一零散的标注已经不能满足用户对多元化图像信息内容的需求。如何通过已有的人工标注信息,利用计算机将一些无序的弱标签生成符合人类语言规范的描述性语句,成为计算机视觉领域的热点问题。

传统图像内容描述有两种:①基于模板的方法[2]。通过检测图像目标、行为、场景等信息,将检测到的内容填充到一个特殊的语言模板内,从而产生描述性语句。该方法过于依赖固定模板,容易忽略目标属性信息,导致生成的描述性内容形式过于单一;②基于相似性检索的方法[3]。通过检索向量空间中最接近的内容生成描述性语句。该方法过于依赖数据库中的描述性语句,很难形成比较新颖的图像描述内容。

随着深度学习的发展,图像描述取得了重大突破。Vinyals等[1]发布了NIC模型(Neural Image Caption),该模型以Encoder-Decoder为基线框架。其中,在编码端以卷积神经网络CNN[5]提取图像特征,在解码端以长短时记忆网络LSTM[4]生成描述性语句,但由于在编码过程中,编码器需将整个序列的信息压缩到一个固定常量中,先输入的信息会被后输入的信息覆盖。因此,输入的序列越长,覆盖越严重,造成解码准确度下降。为了改进Encoder-Decoder被基线模型信息覆盖的问题,Xu等[7]提出在图像卷积特征中结合空间注意力机制的方法,将上下文信息输入到Encoder-Decoder框架中。在Encoder阶段,与之前直接通过全连接层提取特征不同,使用较低层的卷积层作为图像特征[6],其中卷積层保留了图像空间信息,结合注意力机制能够动态选择图像空间特征用于Decoder 阶段。在Decoder 阶段,输入中增加了图像上下文向量,该向量是当前时刻图像的显著区域特征表达。但实验表明,该方法对图像物体属性信息表述不明显,图像描述内容的精度还有很大提升空间。

当前基于CNN+LSTM结构[1]的图像描述模型依然存在部分缺陷。以 Google NIC模型和基于注意力机制[3]的图像描述模型为例,两者均基于单一解码器,根据之前的基本真值词[5],利用反向传播最大化每个真值词的可能性。这种单一解码方式对于图像描述的细节表述不详,难以形成丰富的细粒度描述。因此,本文提出一种基于多层LSTM和多层注意力结构的层叠式图像描述解码框架,对原先粗粒度的图像描述方式进行改进,可捕获图像中长距离空间关系,生成更生动的图像描述内容。

1 图像描述模型

1.1 基于LSTM的解码模型

图像描述模型主要分为图像特征提取和生成语言描述。在图像特征提取方面,使用的是训练好的Faster R-CNN[8]模型。在解码部分,实验使用的是LSTM解码器。

给定图像[I]和其对应的图像描述语句 [X]。首先使用CNN提取图像特征[V(I)]。图像描述语句[X={x1,x2,?,][xl}],其中[Xt]是语句中单词的表达形式。

在实验过程中采用Word2vec词向量生成工具[9],通过学习文本上下文的语料,根据词汇上下文将文本中的每个词汇映射到一个统一的N维词汇空间,并使语义相近的词汇在该空间中的位置相近,使用LSTM将特征转换为描述性语句[10],如图1所示。

在训练解码部分时,图像特征与描述语义句子之间的映射关系最大化,即:

在公式(3)中,[s()]表示Softmax函数,[L()]表示 LSTM 网络,[ht]为LSTM隐藏层状态,[W、U、C]表示模型自学习的参数矩阵,[Xt]和[ht-1]分别为LSTM当前时刻的输入及上一时刻的隐藏层状态,[v]为图像全局特征。

1.2 基于多层LSTM的改进模型

目前,大多数图像描述模型基于单级LSTM的句子解码器,以Google NIC模型为例的解码部分,只在LSTM网络的第一层输入图像全局特征,并未考虑到每个单词在图像上的注意力不同,因为有些词汇与图像内容的关系太大,所以干扰性词汇会导致单一的句子解码器模型生成的描述性语句出现偏差。

为了解决单一LSTM解码器对内容描述精度不够的问题,本文提出一种基于多层LSTM的解码模型。其中,图像高层特征输入至与高层LSTM相连的注意力结构[12],低层特征输入至与底层 LSTM 相连的注意力结构。改进的语言模型框架如图2所示。

模型框架由3层LSTM网络构成,采用层叠式注意模型进行定位与词预测高度相关的区域,通过注意力模型对图像特征和来自前一级的注意权重进行操作,即在每个时间步骤的输入均包含已出现的图像特征、前一个词嵌入及其隐藏状态、来自前一个LSTM 的更新后的隐藏状态。

第一层LSTM语言模型基于全局图像特征生成词[16],包括[xi],[v],[hni-1]。[hni-1]表示上一时刻第n层LSTM的输出状态,其中[t]表示当前时刻,[t-1]表示前一时刻,[xt]表示经过Word2vec处理后的词向量,[v=1kvi]是图像经Faster R-CNN高层卷积层提取的平均池化特征均值。最终,将以上3部分连接组合,输入至语言模型的第一层LSTM结构中。由于有些词语与图像没有太大关系,需要引入注意力机制对词语进行有效甄别,同时也会得到一个空间图[13](Spatial Map),显示与每个预测词相关的圖像区域。LSTM输出一个网络状态[h1t],将[h1t]和特征[vi]相连接并输入到注意力结构中。

其中,[xnt]为最终层语言模型在t时刻的输入,[ct、][hn-1t、][hn-1t、][hn-2t]分别表示注意力结构的输出和上两层LSTM的输出状态。在最终层LSTM语言模型后连接Softmax层,通过Softmax函数选取 LSTM 模型每一时刻输出中概率最大的词,连接成为描述句子,作为模型最终输出结果。

2 实验过程与结果分析

2.1 数据集及实验环境

实验使用MS-COCO数据集,超过160 000张图像,训练集大约80 000张图像,验证集大约40 000张图像,测试集大约40 000张图像。其中,人工为每张图像至少撰写5条标注,总共有超过100万条描述性短标签,包含物体类别、轮廓坐标、边界框坐标等描述性语句,可用于图像识别、图像分割、图像描述生成等任务。

实验基于Windows环境下的TensorFlow框架,它是谷歌研发的第二代人工智能学习系统,作为一个强大的开源软件库,可实现的模型功能非常灵活,它可在小到一部智能手机、大到数千台数据中心服务器上运行,处理框架以数据流图的方式运算,是目前实现深度神经网络结构效果较好的框架。

2.2 参数设置

在训练模型之前,使用MS-COCO数据集图像描述句子构建单词表,取数据集中的描述句子长度不大于16个单词的句子,以及句子中至少出现4次的单词构成单词表,最终选定的单词表大小为11 520,利用Word2vec工具将词汇映射为多维空间向量。

经过多次调参比较,模型中使用的每一个LSTM层的隐藏节点及注意力结构中的隐藏节点数目设为1 000时效果较好,在训练的同时为了防止网络过拟合,使用Dropout方法,对循环神经网络层中的某些神经网络单元,按照一定概率将其暂时从网络中丢弃,Dropout取值为0.5。在训练中,批尺寸设为10,学习率设置为0.01。

同时,为保证最终能得到恰当合理的描述语句,实验采用集束搜索(Beam Search)的方法,在每一步保持顶部前M个句子,对于这些顶部的M个句子,只考虑前M个扩展,并对句子重新评分。在实验中,将Beam的大小设置为3,直到搜索终止或达到最大允许的句子长度。该过程结束后,根据模型分配的对数似然函数概率生成候选句子。

2.3 评分标准

目前最普遍的客观量化评分标准包括:BLEU、METEOR、CIDEr。BLEU(Bilingual Evaluation Understudy)是双语互评辅助工具,它将生成的候选语句(Candidate Caption)和参考语句(Reference Caption)视为N-Gram,即将句子按顺序划分的N个词组成组,再计算这些组的精度,并在长度上施加适量的惩罚,得到BLEU的分数;METEOR是基于1-Gram的精度与召回的调和平均;CIDEr主要修改降低了句子长度和单词频率带来的影响,当在较长句子上重复较高置信度的单词时,基本CIDEr指标会很高,CIDEr通过基于候选和参考句子长度之间差异的高斯惩罚与计数上的限制使评判标准更接近人类。实验采用以上客观量化标准对实验结果进行评分。

2.4 模型评估

按照设定的参数,对模型进行训练。当在相同数据集、相同训练条件下时,本文模型生成的图像描述的客观量化评分较高,评估对比如表1所示。本文模型Bleu-1得分为0.753,Bleu-4得分为0.348,METEOR得分为0.271,CIDEr得分为1.090。

可以看出,相较于对比模型的结果,本文模型有较大提升。这是因为对比模型大多训练了单一的解码器,而本文模型在解碼端采用多层LSTM解码器,每个时间步骤的输入均由前一个目标词和之前的隐藏状态构成。在后续的多级中,每个精细解码器均会再次基于图像特征以及来自前一个LSTM的注意力权重和隐藏状态预测词,这些相对精细化的预测对下一步图像的整体描述生成有重要作用。

为进一步测试解码模型的效果,在测试集里选取一张图片,并分别在NIC模型、ATT-FCN模型及本文模型中进行测试,各个图像描述内容结果如图3所示,从描述的内容可见,相对于单层解码器的NIC模型,本文模型图像描述的精细程度优于其它两种模型,对长距离的依赖更为显著,不但能合理地推断出“man”、“child”和“lake”之间的关系,还能对“man”和“child”的着装颜色进行描述。也就是说,多层LSTM解码的方式可以由粗略转为精确地考虑图像中的视觉信息,这与人类视觉系统十分相似。

3 结语

本文设计了一个从粗略到精细的基于多级LSTM解码的图像内容描述模型框架。首先在第一级粗略搜索空间解码,每个时间步骤的输入均由前一个目标词和之前的隐藏状态构成。在后续解码器中,每个精细解码器会再次基于图像特征以及来自前一个LSTM的注意力权重和隐藏状态预测相关词汇。每个精细解码器由一个LSTM网络与注意力模型构成。LSTM在每个时间步骤的输入均包含已出现的图像特征、前一个词嵌入及隐藏状态、来自前一个LSTM更新后的隐藏状态。通过注意力机制得到的空间图可以显示每个预测词相关的图像区域,以达到更好的描述效果。改进后的解码模型训练结果表明,该预测模型可以更好地联合图像视觉特征和语义特征对图像进行描述。同时,将该模型与其它经典模型进行比较,能达到较好的评估指标。下一步将结合现有图像描述方法,在视频描述及视觉问答等相关任务方面展开更深入的研究。

参考文献:

[1] VINYALS O,TOSHEV A,BENGIO S,et al. Show and tell: a neural image caption generator[C]. Proceedings of 2015 IEEE Conference on Computer Vision and Pattern Recognition,2015:3156-3164.

[2] FANG H, GUPTA S, IANDOLA F, et al. From captions to visual concepts and back[C]. IEEE Conference on Computer Vision and Pattern Recognition, 2015:1473-1482.

[3] XU K, BA J, KIROS R, et al. Show, attend and tell: neural image caption generation with visual attention[DB/OL].  https://arxiv.org/pdf/1502.03044.pdf.

[4] JIA X, GAVVES E, FERNANDO B, et al. Guiding long-short term memory for image caption generation[J].  2015 IEEE International Conference on Computer Vision?,2015(1):2407-2415.

[5] ZHOU L,XU C,KOCH P,et al. Image caption generation with text-conditional semantic attention[DB/OJ]. https://arxiv.org/pdf/1606.04621v2.pdf.

[6] WU Q, SHEN C, LIU L, et al. What value do explicit high level concepts have in vision to language problems[DB/OJ].  https://arxiv.org/pdf/1506.01144.pdf.

[7] YAO T, PAN Y, LI Y, et al. Boosting image captioning with attributes[C]. IEEE International Conference on Computer Vision,2017:4904-4912.

[8] LU J, XIONG C, PARIKH D, et al. Knowing when to look: adaptive attention via a visual sentinel for image captioning[C]. IEEE Conference on Computer Vision and Pattern Recognition,2017:3242-3250.

[9] HAO F,Gupta S,IANDOLA F,et al. From captions to visual concepts and back[C]. IEEE Conference on Computer Vision and Pattern Recognition, 2015:?1473-1482.

[10] LI N N,CHEN Z Z. Image captioning with visual-semantic LSTM[C]. 27th International Joint Conference on AI,2018:793-799.

[11] ANDERSON P,HE X D,BUEHLER C,et al. Bottom-up and top-down attention for image captioning and visual question answering[DB/OL]. https://arxiv.org/pdf/1707.07998.pdf.

[12] KULKARNI G,PREMRAJ V,ORDONEZb V,et al. Babytalk: understanding and generating simple image descriptions[C].  IEEE Conference on Computer Vision and Pattern Recognition IEEE Computer Society, 2011:1601-1608.

[13] GU J X,CAI J F,WANG G,et al. Stack-captioning:coarse-to-fine learning for image captioning[DB/OL]. https://arxiv.org/pdf/1709.03376.pdf.

[14] YAO T,PAN Y W,LI Y H,et al. Incorporating copying mechanism in image captioning for learning novel objects[C]. IEEE Conference on Computer Vision and Pattern Recognition,2017:5263-5271.

[15] LU J S,XIONG C M,PARIKH D,et al. Knowing when to look: adaptive attention via a visual sentinel for image captioning[C].  IEEE Conference on Computer Vision and Pattern Recognition,2017:3242-3250.

[16] RANZATO M A, CHOPRA S, AULI M, et al. Sequence level training with recurrent neural networks[DB/OL]. https://arxiv.org/pdf/1511.06732.pdf.

(責任编辑:江 艳)

猜你喜欢

解码器
科学解码器(一)
科学解码器(二)
科学解码器(三)
概念/技术/功能/接口 影音百科之音频解码器
线圣AudioQuest 发布第三代Dragonfly Cobalt蓝蜻蜓解码器
基于北斗实现卫星直播系统接收解码器寻星
把数字变成真实的声音 畅谈音频解码器
侏罗纪公园
浅谈SCOPUS解码器IRD—2600系列常用操作及故障处理
做一个二进制解码器