浙江大学学报(工学版), 2022, 56(3): 542-549 doi: 10.3785/j.issn.1008-973X.2022.03.013

计算机与控制工程

基于视觉关系推理与上下文门控机制的图像描述

陈巧红,, 裴皓磊, 孙麒

浙江理工大学 信息学院,浙江 杭州 310018

Image caption based on relational reasoning and context gate mechanism

CHEN Qiao-hong,, PEI Hao-lei, SUN Qi

School of Informatics Science and Technology, Zhejiang Sci-Tech University, Hangzhou 310018, China

收稿日期: 2021-04-25  

Received: 2021-04-25  

作者简介 About authors

陈巧红(1978—),女,副教授,从事计算机辅助设计及机器学习技术研究.orcid.org/0000-0003-0595-341X.E-mail:chen_lisa@zstu.edu.cn , E-mail:chen_lisa@zstu.edu.cn

摘要

为了探索图像场景理解所需要的视觉区域间关系的建模与推理,提出视觉关系推理模块. 该模块基于图像中不同的语义和空间上下文信息,对相关视觉对象间的关系模式进行动态编码,并推断出与当前生成的关系词最相关的语义特征输出. 通过引入上下文门控机制,以根据不同类型的单词动态地权衡视觉注意力模块和视觉关系推理模块的贡献. 实验结果表明,对比以往基于注意力机制的图像描述方法,基于视觉关系推理与上下文门控机制的图像描述方法更好;所提模块可以动态建模和推理不同类型生成单词的最相关特征,对输入图像中物体关系的描述更加准确.

关键词: 图像语义描述 ; 视觉关系推理 ; 多模态编码 ; 上下文门控机制 ; 注意力机制

Abstract

A visual relationship reasoning module was proposed in order to explore the modeling and reasoning of the relationship between visual regions needed for image scene understanding. The relationship patterns between the two related visual objects were encoded dynamically based on different semantic and spatial context information, and the most relevant feature output of the currently generated relationship words was inferred by using the module. In addition, the contributions between the visual attention module and the visual relational reasoning module were controlled dynamically according to the different types of words by introducing the context gate mechanism. Experimental results show that the method has better performance than other state-of-the-art methods based on attention mechanism. By using the module a model is established dynamically, the most relevant features of different types for the generated words are inferred, and the quality of image caption is improved.

Keywords: image caption ; visual relationship reasoning ; multimodal encoding ; context gate mechanism ; attention mechanism

PDF (899KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

陈巧红, 裴皓磊, 孙麒. 基于视觉关系推理与上下文门控机制的图像描述. 浙江大学学报(工学版)[J], 2022, 56(3): 542-549 doi:10.3785/j.issn.1008-973X.2022.03.013

CHEN Qiao-hong, PEI Hao-lei, SUN Qi. Image caption based on relational reasoning and context gate mechanism. Journal of Zhejiang University(Engineering Science)[J], 2022, 56(3): 542-549 doi:10.3785/j.issn.1008-973X.2022.03.013

图像描述是高级视觉任务,旨在描述图像正确内容. 对机器来说,执行图像描述不仅要全面了解对象、场景及其相互关系,还要使用语义和句法正确的句子描述图像的内容. 传统图像描述算法主要通过基于手工特征的语言模板生成描述:1)通过局部二值模式(local binary pattens, LBP)[1]、尺度不变特征转换(scale-invariant feature transform, SIFT)[2] 、方向梯度直方图(histogram of oriented gradients, HOG)[3]等算法提取图像的视觉特征;2)提取的特征被作为输入数据,传输到支持向量机(support vector machine, SVM)分类器[4]识别出对应物体的类别. 由于不同的任务需要构造不同的手工特征,同时用于生成语句的模板较为固定,会导致生成的句子形式不够丰富. Farhadi等[5]使用物体检测算法推断图像场景的关键物体,通过模板的方法生成描述内容的自然语句. Kiros等[6]提出基于深度神经网络的图像描述算法:将图像特征映射到对应描述信息的嵌入表示空间,并通过长短期记忆(long short-term memory,LSTM)[7]模型生成图像描述. Xu等[8]提出基于软注意力和硬注意力机制的图像描述模型,该机制允许模型根据不同的单词增加图像相关区域的权重. 由于句中存在不需要图像信息也能生成的非视觉单词,Lu等[9]提出的视觉门控机制,使模型可以选择是否在每个时间都对图像进行注意力机制操作. Anderson等[10]提出的模型结合自下而上和自上而下的注意力机制,引入目标检测使模型可以在视觉对象级别上处理图像信息. Gu等[11]提出针对图像描述的多阶段预测框架,通过不断提高注意力权重,让模型提取到更细致的图像信息. Wang等[12]提出的层次注意力网络,计算各种模态视觉特征的注意力,并通过并行的多元残差模块执行特征融合. 赵小虎等[13]提出基于全局–局部特征与自适应注意力机制的图像描述模型,该方法通过提取图像不同粒度的特征加强图像信息的丰富程度,并通过自适应注意力机制对图像特征加权输入,有效提高了模型描述图像的全面性,对于微小物体的识别准确率更高. Wang等[14]提出基于门控循环单元(gated recurrent unit,GRU)的图像实体整合模块,它通过GRU建立卷积神经网络各个通道语义向量间的初等关系,提升了模型编码端的整体效果. Ke等[15]提出反射解码网络,同时运用图像注意力和文本注意力,通过应用语言的内在特性提高图像描述的性能. Zhou等[16]提出SCAN模块,对图像描述模型中的注意力结果进行弱监督.

大多数的图像描述模型均基于注意力机制,解码器端每生成一个单词,都会通过注意力机制将与当前单词最相关的视觉实体区域提取出来,达到增加效果的目的. 但当人们描述某个图像场景时,不仅会关注场景中的每个实体,也会思考每个实体间的关系. 实体和实体间的关系共同组成一个恰当的句子来描述当前场景. 这是大多数的模型尚未探索的领域. 对此,本研究提出视觉关系推理模块以构建视觉关系推理模型,该模型可以根据不同的语义和空间上下文,动态编码视觉区域间的关系模式;引入自适应上下文门控机制以动态控制视觉注意力模块和视觉关系推理模块的作用,该机制允许根据不同类型的特征(视觉实体或视觉关系)预测不同的单词. 相对于Hou等[17]提出的基于关系推理的图像描述方法,本研究没有引入额外的常识引导数据,而是期望模型从现有数据里集中端到端的建模对象关系,同时利用改造的注意力机制更直接地建模对象多对多的关系.

1. 基于视觉关系推理与上下文门控机制的图像描述

1.1. 算法架构

本研究算法的架构如图1所示. 当给定图像I作为输入,图像描述模型需要生成一段描述序列 ${\boldsymbol{S}}=\left[ {{w_1},{w_2}, \ldots ,{w_T}} \right],{w_t} \in D$,其中D为词典词汇集合,T是序列长度. 采用Anderson等[10]提出的R-CNN-LSTM架构作为图像描述模型的基础框架. 具体来说,使用目标检测模块(Faster R-CNN)[18]检测每张图片中的视觉对象 ${{\boldsymbol{V}}}=\left[ {{{\boldsymbol{v}}_1},{{\boldsymbol{v}}_2}, \ldots ,{{\boldsymbol{v}}_N}} \right]$,其中 $ {\boldsymbol{v}} $d维的视觉对象语义向量,同时每个视觉对象还拥有对应的边界框位置特征b=[x, y, w, h],其中xy为边界框的中心坐标,wh分别为边界框的宽度、高度. 在解码器端,RNN被用来引导注意力机制和描述序列的生成. 受启发于Anderson等[10]提出的自上而下的注意力框架,本研究采用2层LSTM[7]作为解码器.

图 1

图 1   基于视觉关系推理与上下文门控机制的图像描述模型总体结构示意图

Fig.1   Schematic diagram of the overall structure of the model based on relational reasoning and context gate mechanism


在编码器端,设计视觉注意力模块和视觉关系推理模块相互配合,达到建模场景中视觉对象间关系的目的. 在每个时间步,视觉注意力模块用于生成图像中各个视觉对象的特征,视觉关系推理模块用于建模场景视觉对象间正确的关系,以此同时达到建模和推理视觉对象间关系的目的.

在解码器端,构造包括视觉LSTM和语言LSTM的级联LSTM结构. 视觉LSTM用于感知全局视觉信息,将隐藏态输入视觉注意力模块,同时负责引导视觉关系推理模块正确的建模视觉关系. 语言LSTM用于生成描述. 引入上下文门控机制,它可以根据当前生成单词的类型,控制不同模态信息的输入.

本研究算法的视觉特征提取器用于提取视觉对象特征. 在每个时间步上,视觉LSTM输入全局图像信息,并指导视觉注意力模块和视觉关系推理模块实现各自的功能. 不同模块的输出将输入上下文门控机制中,以控制最终需要输出的特征. 语言LSTM在输入上个单词和多模态特征后,会在每个时刻生成一个单词. 具体公式如下所示:

$ {\boldsymbol{b}},{\boldsymbol{V}}={\rm{Encoder}}\left({{\boldsymbol{I}}}\right),$

$ {{{\boldsymbol{h}}}}_{t}^{{\rm{V}}}={\rm{LST}}{\mathrm{M}}_{{\rm{V}}}\left(\left[{{{\boldsymbol{h}}}}_{t-1}^{{\rm{L}}},\stackrel-{\boldsymbol{v}},E\left({{{\boldsymbol{W}}}}_{t}\right)\right]\right), $

$ {{{\boldsymbol{A}}}}_{t},{\boldsymbol{\alpha }}_{t}={\rm{Attention}}\left({\boldsymbol{h}}_{t}^{{\rm{V}}{{}}},{{\boldsymbol{V}}}\right), $

$ {\boldsymbol{R}}_{t}={\rm{Relation}}\left({\boldsymbol{h}}_{t}^{{\rm{V}}},{{\boldsymbol{V}}},{{\boldsymbol{b}}},{{{\boldsymbol{\alpha}} }}_{t}\right), $

$ {\boldsymbol{C}}={\rm{Contextgate}}\left({\boldsymbol{h}}_{t}^{{\rm{V}}},{\boldsymbol{R}}_{t},{\boldsymbol{A}}_{t},\boldsymbol{b}\right), $

$ {\boldsymbol{h}}_{{t}}^{\boldsymbol{{\rm{L}}}}={\rm{LST}}{\mathrm{M}}_{{\rm{L}}}\left(\left[\boldsymbol{C},{{\boldsymbol{h}}}_{{t}}^{{\rm{V}}}\right]\right), $

${\boldsymbol{W}}_{{t}}={\rm{arg}}\underset{S}{\mathrm{max}}\left({\boldsymbol{W}}_{o}{\boldsymbol{h}}^{{\rm{L}}}_{{{t}}}+{\boldsymbol{b}}_{o}\right). $

式中:Encoder(I)为使用特征提取器从给定图像I中提取特征;E( )为词嵌入函数,它将独热编码映射到低维嵌入空间; $\stackrel-{\boldsymbol{v}} $为经过均值池化的图像特征, $\stackrel{-}{\boldsymbol{v}}={N}^{ - 1}\displaystyle\sum\nolimits_{n=1}^{N} {{\boldsymbol{v}}}_{n}$$ \mathrm{L}\mathrm{S}\mathrm{T}{\mathrm{M}}_{\mathrm{V}} $、Attention( )、Relation( )、Contextgate( )和 $\mathrm{L}\mathrm{S}\mathrm{T}{\mathrm{M}}_{\rm{{{{L}}} }}$分别为视觉LSTM、视觉注意力模块、关系推理模块、上下文门控机制和语言LSTM模块; ${\boldsymbol{h}}_{t}^{{\rm{V}}}$${\boldsymbol{h}}_{t}^{{\rm{L}}}$分别为视觉LSTM、语言LSTM的第t步隐藏态; $ {\boldsymbol{A}}_{t} $$ {\boldsymbol{\alpha }}_{t} $为经过注意力机制处理的图像特征与每个图像特征的注意力数值; ${\boldsymbol{R}}_{{t{\rm{}}}}$为视觉关系推理模块生成的图像关系特征;C为上下文门控机制的输出特征; $ {\boldsymbol{W}}_{t} $为第t步词表独热向量的极大似然概率分布; ${{\boldsymbol{W}}_{\rm{o}}}$为变化矩阵; ${{\boldsymbol{b}}_{\rm{o}}} $为可学习偏置项.

1.2. 视觉注意力模块

在图像描述模型中,图像中的视觉对象的完整性、全面性对描述质量非常重要. 为此,本研究将软注意力机制[8]引入视觉注意力模块. 传统的注意力机制在产生视觉对象词汇方面已经充分展示了其优势. 因此,相比于描述每个视觉区域特征间的关系,视觉注意力模块主要目的是找到与当前时间步视觉实体单词最相关的视觉区域特征,可以理解为该模块试图找到每张图片中的名词视觉对象. 具体的,给定视觉区域的特征V和视觉LSTM的输出,对视觉对象注意力模块的注意力权重进行归一化:

$ {{\boldsymbol{{{\boldsymbol{z}}}}}}_{t}={\boldsymbol{W}}_{{\rm{a}}}^{t}{\rm{tanh}}\left({\boldsymbol{W}}_{{\rm{va}}}\boldsymbol{V}+{\boldsymbol{W}}_{{\rm{ha}}}{\boldsymbol{h}}_{t}^{{\rm{V}}}\right), $

$ {\boldsymbol{\alpha }}_{t}={\rm{softmax}}\left({\boldsymbol{{\boldsymbol{z}}}}_{t}\right).$

式中: ${\boldsymbol{W}}_{\rm{{va}}}$${\boldsymbol{W}}_{{\rm{ha}}}$${\boldsymbol{W}}^{t}$均为变换矩阵, ${{\boldsymbol{W}}_{{\rm{va}}}\in \mathbf{R}}^{{{H}}\times {{V}}}$${\boldsymbol{W}}_{{\rm{ha}}}\in {\mathbf{R}}^{{{H}}\times {M}}$${\boldsymbol{W}}^{{{t}}}\in {\mathbf{R}}^{{H}}$. 用作语言LSTM输入的图像特征是所有输入特征的加权总和:

${\boldsymbol{A}}_{t}=\sum\limits _{i=1}^{K}{\boldsymbol{\alpha }}_{t}{\boldsymbol{v}}_{i}. $

1.3. 视觉关系推理模块

视觉对象间的关系在不同的语义和空间上下文中应该是不同的,同时每个视觉对象间应该存在一对多,多对多的关系. 为了建模视觉注意力模块提取的视觉对象间复杂多变的关系,基于扩展的自注意力机制[19],使用视觉关系推理模块扩展模型. 直观来说,该模块可以通过每个视觉区域在不同语义和空间状态下的关系,在每个时间步t处推断出适当的关系词特征. 视觉关系推理模块由3个部分组成:1)基于注意力数值的视觉对象过滤机制,可以使用视觉注意模块筛选视觉区域特征的子集;2)视觉关系编码器,可以动态地编码每个视觉区域间的语义和空间位置关系;3)视觉关系融合,可以推断当前时间步与视觉关系词最相关的视觉关系特征. 视觉关系推理模块框架如图2所示.

图 2

图 2   视觉关系推理模块流程图

Fig.2   Visual relational reasoning module flowchart


1.3.1. 基于注意力数值的视觉对象过滤机制

该机制目的在于增强后续模型的执行效率,并能在一定程度上避免过拟合. 为了过滤前序步骤收集到的大量视觉区域特征,该机制主要利用视觉对象注意力模块产生的每个视觉区域的注意力数值,根据注意力数值进行一定的筛选显著降低计算复杂度和参数量,同时提高模型效率. 注意权重 $ \alpha $用于选择m个最相关的区域 $ {\boldsymbol{V}}_{a}\in \boldsymbol{V} $,其中 $ \left|{\boldsymbol{V}}_{a}\right| = m $m<n,并且所选区域对应 mtop个最高注意力权重.

1.3.2. 视觉关系编码器

视觉关系编码器模块是为了动态地学习每个视觉区域特征相对于其他区域的重要性权重,并根据语义上下文和空间上下文来建立一张动态的视觉对象关系图,刻画出个个视觉对象间在不同的语义和空间上下文下的多种关系模式.

给定视觉对象特征 ${\boldsymbol{v}}_{1},{\boldsymbol{v}}_{2},\cdots ,{\boldsymbol{v}}_{{{{{}}{k}}}}\in {\boldsymbol{V}}_{a}$,将每个视觉对象特征转换为查询键Q,中间键K和值V. 将每个视觉特征假设为顶点,视觉对象特征间的关系假设为边,则该模块的任务转换成学习每个顶点间的边. 为了动态地模拟每个输入间的语义上下文和空间上下文信息,将输入的视觉区域 $ {v}_{i} $$ {v}_{j} $间的边由向量 $ {\boldsymbol{c}}_{ij}^{K} $$ {\boldsymbol{c}}_{ij}^{V} $表示,具体的转换公式为

$ {\boldsymbol{c}}_{ij}^{{\rm{K}}}=\left[{\boldsymbol{s}}_{ij},{\boldsymbol{h}}_{t}^{{\rm{V}}}\right]{\boldsymbol{W}}_{{\rm{K}}}^{{\rm{c}}},$

$ {\boldsymbol{c}}_{ij}^{{\rm{V}}}=\left[{\boldsymbol{s}}_{ij},{\boldsymbol{h}}_{t}^{{\rm{V}}}\right]{\boldsymbol{W}}_{{\rm{V}}}^{{\rm{c}}}. $

式中: ${\boldsymbol{W}}_{{\rm{K}}}^{{\rm{c}}}\mathrm{、}{\boldsymbol{W}}_{{\rm{V}}}^{{\rm{c}}}\mathrm{为}$变换矩阵, ${\boldsymbol{W}}_{{\rm{K}}}^{{\rm{c}}},{\boldsymbol{W}}_{{\rm{V}}}^{{\rm{c}}}\in {\mathbf{R}}^{({{{{D}}}}_{\mathrm{h}}+6)\times {{{{D}}}}_{\mathrm{H}}}$;空间特征 $ {s}_{ij} $的具体定义为

$ {\boldsymbol{s}}_{ij}=\left[\frac{{x}_{i}-{x}_{j}}{\sqrt{{w}_{j}{h}_{j}}},\frac{{y}_{i}-{y}_{j}}{\sqrt{{w}_{j}{h}_{j}}},\sqrt{\frac{{w}_{i}{h}_{i}}{{w}_{j}{h}_{j}}},\frac{{w}_{j}}{{h}_{j}},\frac{{w}_{i}}{{h}_{i}},\frac{{b}_{j}\cap {b}_{i}}{{b}_{j}\cup {b}_{i}}\right]\in {R}^{6}. $

在计算Q、K间的相似度时,本研究推广点积相似度,即通过将语义和空间上下文信息添加到K,相似度计算过程可以动态考虑不同上下文和图像语义间的空间位置关系. 在加权V时的计算公式为

${{{R}}_{{\rm{att}}}}\left( {{{\boldsymbol{V}}_{{a}}}} \right) = {\rm{softmax}}\left( {\frac{{{{\boldsymbol{W}}_{\rm{Q}}}{{\boldsymbol{V}}_{{a}}}{{\left( {{{\boldsymbol{W}}_{\rm{K}}}{{\boldsymbol{V}}_{{a}}} + {{\boldsymbol{c}}^{\rm{K}}}} \right)}^{\rm{T}}}}}{{\sqrt d }}} \right)\left( {{{\boldsymbol{W}}_{\rm{V}}}{{\boldsymbol{V}}_{{a}}} + {{\boldsymbol{c}}^{\rm{V}}}} \right).$

式中: $ {{{R}}}_{att}\left(\right) $为视觉注意力模块;WQWKWV均为变换矩阵,WQWKWVR(D×D)d为向量V的维数。

为了增加泛化性,参考文献[19]中的多头自注意力模块的形式,对视觉关系注意力模块进行堆叠:

${{{R}}_{{\rm{mul}}}}\left( {{{\boldsymbol{V}}_{\rm{a}}}} \right)={\rm{Concat}}\left({\bf{head}}_{1},\cdots ,{\bf{head}}_{i}\right){\boldsymbol{W}}_{{\rm{mh}}}, $

$ {\bf{head}}_{i}={{{R}}_{{\rm{att}}}}\left( {{{\boldsymbol{V}}_{{a}}}} \right), $

$ {\tilde{\boldsymbol{R}}}^{l+1}={\rm{LayerNorm}}\left( {{{\boldsymbol{R}}^l} + {{{R}}_{{\rm{mul}}}}\left( {{{\boldsymbol{R}}^l}} \right)} \right), $

$ {\boldsymbol{R}}^{l+1}={\rm{LayerNorm}}\left( {{{\tilde {\boldsymbol{R}}}^{l + 1}} + {\rm{FFN}}\left( {{{\tilde {\boldsymbol{R}}}^{l + 1}}} \right)} \right). $

式中: ${\boldsymbol{W}}_{{\rm{mh}}}$为变换矩阵, ${\boldsymbol{W}}_{{\rm{mh}}}\in {\boldsymbol{R}}^{HD\times D};{{{R}}_{{\rm{mul}}}}$为多头注意力算子,它将注意力头分成H份; ${\rm{Concat}}$()将各个注意力头head 拼接起来;LayerNorm()进行层归一化, FFN()为多层感知机,该模块不会改变V的维度,因此可以如式(18)所示堆叠N次.

1.3.3. 视觉关系融合

视觉关系融合用于推理与当前生成词相关的视觉关系特征以进行输出. 选择注意力机制推断关系特征r,计算公式为

$ {\boldsymbol{z}}_{t}={\boldsymbol{W}}_{k}^{{\rm{R}}}{\rm{tanh}}\left({\boldsymbol{W}}_{{\rm{va}}}^{{\rm{R}}}{\boldsymbol{r}}_{k}+{\boldsymbol{W}}_{{\rm{ha}}}^{{\rm{R}}}{\boldsymbol{h}}_{t}^{{\rm{V}}}\right), $

${\boldsymbol{\alpha }}_{t}^{{\rm{R}}}={\rm{softmax}}\left({\boldsymbol{z}}_{t}\right). $

式中: $ {\boldsymbol{W}}_{\mathrm{k}}^{\mathrm{R}}\mathrm{、}{\boldsymbol{W}}_{\mathrm{v}\mathrm{a}}^{\mathrm{R}}\mathrm{、}{\boldsymbol{W}}_{\mathrm{h}\mathrm{a}}^{\mathrm{R}}\mathrm{为} $变换矩阵, ${\boldsymbol{W}}_{\mathrm{k}}^{\mathrm{R}}\in {\mathbf{R}}^{{\boldsymbol{1}}\times {{D}}_{\mathrm{a}}}, $ $ {\boldsymbol{W}}_{\mathrm{v}\mathrm{a}}^{\mathrm{R}}\in {\mathbf{R}}^{{{D}}_{\mathrm{a}}\times {{D}}_{\mathrm{v}}},{\boldsymbol{W}}_{\mathrm{h}\mathrm{a}}^{\mathrm{R}}\in {\mathbf{R}}^{{{D}}_{\mathrm{a}}\times {{D}}_{\mathrm{h}}}$$ {\boldsymbol{W}}_{\mathrm{v}\mathrm{a}}^{\mathrm{R}} $$ {\boldsymbol{W}}_{\mathrm{h}\mathrm{a}}^{\mathrm{R}} $将视觉关系特征 $ {\boldsymbol{r}}_{k}\in {\bf{R}}^{l} $和当前的视觉隐藏态 ${{{\boldsymbol{h}}{\rm{}}}}_{\mathrm{t}}^{\mathrm{V}}$映射到同一共享特征空间. 基于权重矩阵,通过在每个时间步进行加权相加获得关系推断特征 $ {\boldsymbol{R}}_{t} $.

$ {\boldsymbol{R}}_{t}=\sum\limits _{i=1}^{m}{\mathbf{\alpha }}_{t,i}^{{\rm{R}}}{\boldsymbol{r}}_{i}.$

1.4. 上下文门控机制

为了控制视觉关系模块和视觉注意力模块生成的不同模态特征的输出,即当需要生成视觉对象词时,更多地考虑视觉对象注意力模块的特征,在生成关系词时,更多地考虑视觉关系推理模块的特征,受LSTM[7]中的门控机制和密集视频描述[20]中工作的启发,将上下文门控机制动态引入模型中,以控制视觉对象级别上下文和视觉关系级别上下文的贡献. 当视觉注意力模块生成视觉对象特征A,视觉关系推理模块生成视觉关系特征R时,上下文门控机制将动态控制2种不同特征的输出.

1)将2个不同的特征投影到同一特征空间中:

$ \widetilde{{\boldsymbol{C}}_{{\rm{R}}}}={\rm{tanh}}\left({\boldsymbol{W}}_{{\rm{R}}}\boldsymbol{R}\right), $

$ \widetilde{{\boldsymbol{C}}_{{\rm{V}}}}={\rm{tanh}}\left({\boldsymbol{W}}_{{\rm{A}}}\boldsymbol{A}\right). $

式中: ${{{\boldsymbol{W}}}}_{\mathrm{R}}\mathrm{、}{{{\boldsymbol{W}}}}_{\mathrm{A}}$均为变换矩阵.

2)通过非线性sigmoid函数计算上下文门控:

$ {\bf{gctx}}=\sigma ({\boldsymbol{W}}_{{\rm{g}}}[\widetilde{{\boldsymbol{C}}_{{\rm{R}}}},\widetilde{{\boldsymbol{C}}_{{\rm{V}}}},{\boldsymbol{h}}_{t}^{{\rm{V}}}]). $

式中: ${\boldsymbol{h}}_{t}^{{\rm{V}}}$为先前的视觉LSTM状态,gctx为2 048维的权重向量. 将关系特征和视觉对象特征融合如下:

$ {\boldsymbol{C}}=\left[\left(\bf{1}-{\bf{{{gctx}}}}\right)\circ \boldsymbol{R},{\bf{gctx}}\boldsymbol\circ \boldsymbol{A}\right].$

1.5. 损失函数

为了优化模型,采用交叉熵损失(XE). XE不是完成图像描述任务的最终指标,因此CIDEr[21]也被用作目标函数微调本研究模型. 具体流程为将CIDEr的负面期望得分降至最低:

$ L\left(\mathrm{\theta }\right)=-{E}_{{{\boldsymbol{w}}}^{{\rm{s}}}\sim{p}_{\mathrm{\theta }}}\left[{\rm{CIDEr}}\left({\boldsymbol{w}}^{{\rm{s}}}\right)\right]. $

单个样本的期望梯度为

$ {\nabla }_{\mathrm{\theta }}L\left(\mathrm{\theta }\right)\approx -\left({\rm{CIDEr}}\left({\boldsymbol{w}}^{{\rm{s}}}\right)-{\rm{CIDEr}}\left(\boldsymbol{w}\right)\right){\nabla }_{\mathrm{\theta }}\mathrm{log}{p}_{\mathrm{\theta }}\left({\boldsymbol{w}}^{{\rm{s}}}\right). $

式中: ${\boldsymbol{w}}^{{\rm{s}}}$为模型中的序列样本, ${\boldsymbol{w}}^{\mathrm{s}}=[{{\boldsymbol{w}}_{1}^{\mathrm{s}}, \cdots, {\boldsymbol{w}}_{\mathrm{T}}^{\mathrm{s}}];} $ $ \mathrm{C}\mathrm{I}\mathrm{D}\mathrm{E}\mathrm{r}(\boldsymbol{w})$为通过预测序列获得的奖励分数; $\theta $为图像描述模型的参数.

2. 实验结果与分析

2.1. 数据集与评价指标介绍

在2个公共基准数据集Microsoft COCO[22]、Flickr30k[23]上将本研究模型与以往方法进行比较.

Microsoft COCO[22]数据集是最大的公共图像标题数据集,本研究将其引为基准数据集. 数据集中有123 287张图像,其中82 783张用于训练,40 504张用于验证. 每个图像都有5条人类注释. 为了进行评估,本研究使用Johnson等[24]的划分包含113 287、5 000和5 000张图像进行训练、验证和评估.

Flickr30k[23]包含158 915句描述和从Flickr收集的31 783张图像. 该数据集扩展了以前的Flickr8k数据集,主要描述人类的日常活动和事件. 每个图像在数据集中都有5个参考标题. 为了与现有研究进行公平比较,使用公开可用的训练测试集划分:用于训练的图像为29 783张,用于验证的图像为1 000张,用于测试的图像为1 000张.

为了公平地评估所生成描述的质量,使用在以往的模型中广泛使用的评价指标:BLEU[25]、METEOR[26]、ROUGE[27]、CIDEr[21]和SPICE[28].

2.2. 图像特征处理

使用Anderson等[10]的自下而上的方法进行图像特征提取. 由Krishna等[29]提出的Visual genome数据集结合ResNet-101[30]预训练的Faster R-CNN[18]的生成. Faster R-CNN提取出图像中前36个置信度最高的显著目标区域并生成相应的边界框,在最后一个卷积层的特征图中使用ResNet-101获得2 048维区域特征. 边界框的坐标还用于计算空间特征.

2.3. 实验细节

词向量采用Glove方法[31]进行训练,其向量维度是1 024. 对于动态图关系推理模块,将2个LSTM的隐层维度大小设置为1 024,视觉对象过滤机制参数m=9. 视觉关系注意力模块的堆叠层数设N=6,多头注意力数设H=5. 视觉注意力模块的隐层大小设置为768. 训练的批次大小为256的Adam[32]优化器训练整个模型. 本研究最初将交叉熵训练的学习率设置为 $ 5\times {10}^{-4} $,每3个周期将其降低 $ 20 $%. 最大迭代次数设置为40个周期. 一旦交叉熵训练结束,就开始进行强化学习训练,并在验证集上获得最佳CIDEr分数. 此阶段从学习率 $ 5\mathrm{ }\times {10}^{-5} $开始训练,每3个周期减少 $ 20\mathrm{\%} $,持续30个周期. 预测时,采用波束搜索策略,并将波束大小设置为5. 本研究模型在Nvidia 3090 GPU上进行的训练大约需要3 d.

2.4. 消融实验

表1所示,与以前使用拼接或加法来集成特征的方法相比,本研究的上下文门控机制在CIDEr指标方面实现3.6% 和1.7%的改进. 表明本研究的上下文门控机制可以通过动态控制不同功能的贡献来提高描述的质量.

表 1   上下文门控机制消融实验

Tab.1  Model fusion method ablation experiment

融合方法 BLEU-1 BLEU-2 METEOR ROUGE CIDEr
加法 75.8 35.2 27.1 56.2 113.3
拼接 76.3 35.7 27.7 56.6 115.5
门控机制 77.4 36.9 28.1 57.3 118.7

新窗口打开| 下载CSV


为了说明基于注意力数值的视觉对象过滤机制中不同参数m的影响,进一步进行消融研究,结果如表2所示. 实验发现,视觉对象特征数量m对性能的影响较大,其中m=3比m=5时,CIDEr度量低1.6%. 但是,太大的筛选视觉特征数并不一定会改善整体性能,因此本研究为视觉关系推理模型选择m=7.

表 2   基于注意力数值的视觉对象过滤机制参数选择实验

Tab.2  Selection experiment of visual object filtering mechanism parameter based on attention value

m BLEU-1 BLEU-2 METEOR ROUGE CIDEr SPICE
3 76.2 36.1 27.1 55.2 116.1 20.5
5 76.9 36.5 27.8 56.4 117.8 20.8
7 77.4 36.9 28.1 57.3 118.7 21.1
11 77.2 36.6 27.9 57.2 118.3 20.9

新窗口打开| 下载CSV


2.5. 实验结果对比

为了评估Microsoft COCO与Flickr30k数据集,对比提出的2种模型与最新模型的性能:Adaptive[9]、Att2in[33]、NBT[34]、GL-Att[13]、LRCA[14]、RFNet[15]、POS-SCAN[16]、JCRR[17]和Updown[10]. 如表3所示为Microsoft COCO基于Karparthy测试集的结果. 可以看出,本研究的2种模型在所有指标上XE目标和CIDEr都有所提高. 其中本研究模型对比基线POS-SCAN模型在CIDEr指标方面提高1.1%. 表4中显示本研究提出的模型在Flick30k数据集上全面领先以往模型.

表 3   Microsoft COCO 数据集实验性能对比

Tab.3  Comparison of experimental results on Microsoft COCO caption dateset

模型 BLEU-1 BLEU-4 METEOR ROUGE CIDEr SPICE
Att2in (XE) 31.3 26.0 54.3 101.3
GL-Att (XE) 74.0 35.2 27.5 52.4 98.7
LRCA (XE) 75.9 35.8 27.8 56.4 111.3
Adaptive (XE) 74.2 33.2 26.6 108.5 19.5
NBT (XE) 75.5 34.7 27.1 107.2 20.1
Updown (XE) 77.2 36.2 27.0 56.4 113.5 20.3
POS-SCAN (XE) 76.6 36.5 27.9 114.9 20.8
RFNet (XE) 77.5 36.8 27.2 56.8 115.3 20.5
本研究(XE) 77.4 36.9 28.1 57.3 118.7 21.1
Att2in (CIDEr) 33.3 26.3 55.3 111.4
Updown (CIDEr) 79.8 36.3 27.7 56.9 120.1 21.4
POS-SCAN (CIDEr) 80.1 37.8 28.3 125.9 22.0
RFNet (CIDEr) 79.1 36.5 27.7 57.3 121.9 21.2
JCRR (CIDEr) 37.7 28.2 120.1 21.6
本研究(CIDEr) 80.1 38.1 29.0 58.7 127.1 22.1

新窗口打开| 下载CSV


表 4   Flickr30k数据集实验性能对比

Tab.4  Comparison of experimental results on Flickr30k caption dateset

模型 BLEU1 BLEU4 METEOR CIDEr
Hard-Attention 66.9 19.9 18.5
GL-Att 68.1 25.7 18.9
LRCA 69.8 27.7 21.5 57.4
Adaptive 67.7 25.1 20.4 53.1
NBT 69.0 27.1 21.7 57.5
本研究(XE) 73.6 30.1 23.8 60.2

新窗口打开| 下载CSV


2.6. 可视化分析

为了可视化地评价本研究提出的视觉关系推理模块,在图3生成的关系词中,将普通注意力机制和视觉关系推理模块中具有最高关注权重的图像区域可视化. 实线框表示由普通注意力机制针对描述中的各个单词产生的最大注意力权重的图像区域,虚线框表示由视觉关系模块产生的前2个注意权重的图像区域.

图 3

图 3   视觉推理模块效果可视化

Fig.3   Visual reasoning module effect visualization


视觉关系推理模块生成的虚线区域正确注意到图3顶部单词“holding”中的区域臂和伞,普通注意力机制生成的实线区域错误地注意到其他区域. 但是,普通注意力机制创建的蓝框可以准确地指出视觉对象单词“girl”“umbrella”在图像中的位置. 在图3底部的“standing”一词中,视觉推理模块生成的虚线区域对正确注意到区域的腿部和滑雪板,而普通注意力机制生成的实线区域则错误地注意到其他不相关区域. 但是普通注意力机制产生的实线框可以准确地注意到视觉对象单词“girl” “umbrella”在图片中的位置. 由此证明本研究的视觉关系模块可以准确地编码和推理关系,以更好地生成描述.

为了可视化分析本文的上下文门控机制,当预测图3中的“girl”“holding”一词时,本研究展示了上下文门控机制的可视化. 如图4所示,每行代表一个权重向量,颜色的深浅分别代表最高分数和最低分数. 可以发现每个模块的信息量在很大程度上取决于不同单词的类型. 当描述涉及视觉对象间的关系时,更多的信息将来自关系推理模块. 图中,门控值的不同阴影展示从每个模块激活的信息量. 当预测对象单词时,关系权重向量将显着降低权重. 当预测关系词时,可以看出关系向量明显被激活. 表明上下文门控机制可以在预测不同类型的单词时,自适应地控制视觉对象特征和视觉关系特征的贡献.

图 4

图 4   上下文门控机制效果可视化

Fig.4   Visualization of effect of context gate mechanism


3. 结 语

提出用于图像描述的视觉关系推理模型. 本研究提出的视觉关系推理模块,可以根据不同的语义和空间上下文对每个视觉区域间的关系模式进行动态编码. 引入上下文门控机制以根据当前待生成词的类型动态地控制不同模块的贡献,使得模型通过权衡不同的特征来预测不同单词. 通过基线对比验证提出的模型,并在Microsoft COCO、Flickr30k数据集上获得最优的结果. 对关系推理模块和上下文门控机制进行可视化分析,以显示视觉关系推理模块的关系推理能力和上下文门控机制特征选择能力.

参考文献

HEIKKILÄ M, PIETIKÄINEN M, SCHMID C

Description of interest regions with local binary patterns

[J]. Pattern Recognition, 2009, 42 (3): 425- 436

DOI:10.1016/j.patcog.2008.08.014      [本文引用: 1]

LINDEBERG T. Scale invariant feature transform [M]. 2012: 10491.

[本文引用: 1]

DALAL N, TRIGGS B. Histograms of oriented gradients for human detection [C]// 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. San Diego: IEEE, 2005: 886-893.

[本文引用: 1]

SUYKENS J A, VANDEWALLE J

Least squares support vector machine classifiers

[J]. Neural processing letters, 1999, 9 (3): 293- 300

DOI:10.1023/A:1018628609742      [本文引用: 1]

FARHADI A, HEJRATI M, SADEGHI M A, et al. Every picture tells a story: generating sentences from images [M]// DANIILIDIS K, MARAGOS P, PARAGIOS N. Computer vision: ECCV 2010. [S. l.]: Springer, 2010: 15-29.

[本文引用: 1]

KIROS R, SALAKHUTDINOV R, ZEMEL R S. Unifying visual-semantic embeddings with multimodal neural language models [EB/OL].[2021-03-05]. https://arxiv.org/pdf/1411.2539.pdf.

[本文引用: 1]

HOCHREITER S, SCHMIDHUBER J

Long short-term memory

[J]. Neural computation, 1997, 9 (8): 1735- 1780

DOI:10.1162/neco.1997.9.8.1735      [本文引用: 3]

XU K, BA J L, KIROS R, et al. Show, attend and tell: neural image caption generation with visual attention [EB/OL]. [2021-03-05]. https://arxiv.org/pdf/1502.03044.pdf.

[本文引用: 2]

LU J, XIONG C, PARIKH D, et al. Knowing when to look: adaptive attention via a visual sentinel for image captioning [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Honolulu: IEEE, 2017: 375-383.

[本文引用: 2]

ANDERSON P, HE X, BUEHLER C, et al. Bottom-up and top-down attention for image captioning and visual question answering [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Salt Lake City: IEEE, 2018: 6077-6086.

[本文引用: 5]

GU J, CAI J, WANG G, et al. Stack-captioning: coarse-to-fine learning for image captioning [C]// Thirty-Second AAAI Conference on Artificial Intelligence, 2018: 12266.

[本文引用: 1]

WANG W, CHEN Z, HU H. Hierarchical attention network for image captioning [C]// Proceedings of the AAAI Conference on Artificial Intelligence. Hawaii: EI, 2019: 8957-8964.

[本文引用: 1]

赵小虎, 尹良飞, 赵成龙

基于全局-局部特征和自适应注意力机制的图像语义描述算法

[J]. 浙江大学学报:工学版, 2020, 54 (1): 126- 134

[本文引用: 2]

ZHAO Xiao-hu, YIN Liang-fei, ZHAO Cheng-long

Image captioning based on global-local feature and adaptive-attention

[J]. Journal of Zhejiang University: Engineering Science, 2020, 54 (1): 126- 134

[本文引用: 2]

WANG J, WANG W, WANG L, et al

Learning visual relationship and context-aware attention for image captioning

[J]. Pattern Recognition, 2020, 98: 107075

DOI:10.1016/j.patcog.2019.107075      [本文引用: 2]

KE L, PEI W, LI R, et al. Reflective decoding network for image captioning [C]// Proceedings of the IEEE/CVF International Conference on Computer Vision. Seoul: IEEE, 2019: 8888-8897.

[本文引用: 2]

ZHOU Y, WANG M, LIU D, et al. More grounded image captioning by distilling image-text matching model [C]// Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. Venice: IEEE, 2020: 4777-4786.

[本文引用: 2]

HOU J, WU X, ZHANG X, et al. Joint commonsense and relation reasoning for image and video captioning [C]// Proceedings of the AAAI Conference on Artificial Intelligence. New York: [s. n.], 2020: 10973-10980.

[本文引用: 2]

REN S, HE K, GIRSHICK R, et al

Faster R-CNN: towards real-time object detection with region proposal networks

[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39 (6): 1137- 1149

DOI:10.1109/TPAMI.2016.2577031      [本文引用: 2]

VASWANI A, SHAZEER N, PARMAR N, et al. Attention is all you need [EB/OL].[2021-03-05]. https://arxiv.org/pdf/1706.03762.pdf.

[本文引用: 2]

WANG J, JIANG W, MA L, et al. Bidirectional attentive fusion with context gating for dense video captioning [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Salt Lake City: IEEE, 2018: 7190-7198.

[本文引用: 1]

VEDANTAM R, LAWRENCE ZITNICK C, PARIKH D. Cider: consensus-based image description evaluation [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Boston: IEEE, 2015: 4566-4575.

[本文引用: 2]

LIN T-Y, MAIRE M, BELONGIE S, et al. Microsoft COCO: common objects in context [M]// FLEET D, PAJDLA T, SCHIELE B, et al. Computer vision: ECCV 2014. [S.l.]: Springer, 2014: 740-755.

[本文引用: 2]

PLUMMER B A, WANG L, CERVANTES C M, et al. Flickr30k entities: collecting region-to-phrase correspondences for richer image-to-sentence models [J] International Journal of Computer Vision, 2017, 123: 74-93.

[本文引用: 2]

JOHNSON J, KARPATHY A, LI F-F. DenseCap: fully convolutional localization networks for dense captioning [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas: IEEE, 2016: 4565-4574.

[本文引用: 1]

PAPINENI K, ROUKOS S, WARD T, et al. BLEU: a method for automatic evaluation of machine translation [C]// Proceedings of the 40th Annual Meeting on Association for Computational Linguistics. Philadelphia: IEEE, 2002: 311-318.

[本文引用: 1]

DENKOWSKI M, LAVIE A. Meteor 1.3: automatic metric for reliable optimization and evaluation of machine translation systems [C]// Proceedings of the Sixth Workshop on Statistical Machine Translation. Scotland: IEEE, 2011: 85-91.

[本文引用: 1]

LIN C Y. Rouge: a package for automatic evaluation of summaries [C]// Proceedings of Workshop on Text Summarization Branches Out, Post-Conference Workshop of ACL 2004. Barcelona: [s. n.], 2004: 1-10.

[本文引用: 1]

ANDERSON P, FERNANDO B, JOHNSON M, et al. Spice: semantic propositional image caption evaluation [M]// LEIBE B, MATAS J, SEBE N, et al. Computer vision: ECCV 2016. [S. l.]: Springer, 2016: 382-398.

[本文引用: 1]

KRISHNA R, ZHU Y, GROTH O, et al

Visual genome: connecting language and vision using crowdsourced dense image annotations

[J]. International Journal of Computer Vision, 2017, 123 (1): 32- 73

DOI:10.1007/s11263-016-0981-7      [本文引用: 1]

HE K, ZHANG X, REN S, et al. Deep residual learning for image recognition [C]// Proceedings of the IEEE conference on computer vision and pattern recognition. Las Vegas: IEEE, 2016: 770-778.

[本文引用: 1]

PENNINGTON J, SOCHER R, MANNING C D. Glove: global vectors for word representation [C]// Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing. [S. l.]: ACL, 2014: 1532-1543.

[本文引用: 1]

KINGMA D P, BA J L. Adam: a method for stochastic optimization [EB/OL].[2021-03-05]. https://arxiv.org/pdf/1412.6980.pdf.

[本文引用: 1]

RENNIE S J, MARCHERET E, MROUEH Y, et al. Self-critical sequence training for image captioning [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Honolulu: IEEE, 2017: 7008-7024.

[本文引用: 1]

LU J, YANG J, BATRA D, et al. Neural baby talk [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Salt Lake City: IEEE, 2018: 7219-7228.

[本文引用: 1]

/