CN112784848B - 一种基于多种注意力机制和外部知识的图像描述生成方法 - Google Patents

一种基于多种注意力机制和外部知识的图像描述生成方法 Download PDF

Info

Publication number
CN112784848B
CN112784848B CN202110153536.7A CN202110153536A CN112784848B CN 112784848 B CN112784848 B CN 112784848B CN 202110153536 A CN202110153536 A CN 202110153536A CN 112784848 B CN112784848 B CN 112784848B
Authority
CN
China
Prior art keywords
image
word
description
natural language
attention
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110153536.7A
Other languages
English (en)
Other versions
CN112784848A (zh
Inventor
杨晓春
侯吉祥
郑晗
王斌
Original Assignee
东北大学
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 东北大学 filed Critical 东北大学
Priority to CN202110153536.7A priority Critical patent/CN112784848B/zh
Publication of CN112784848A publication Critical patent/CN112784848A/zh
Application granted granted Critical
Publication of CN112784848B publication Critical patent/CN112784848B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/26Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
    • G06V10/267Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion by performing operations on regions, e.g. growing, shrinking or watersheds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/253Fusion techniques of extracted features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components

Abstract

本发明公开一种基于多种注意力机制和外部知识的图像描述生成方法,属于图像描述技术领域。包括:获取图像标注数据集并预处理得到训练集与测试集、词汇表与词嵌入矩阵;求解训练集中图像的区域特征与全局特征、自然语言描述的单词注意;创建双层长短时记忆网络;对双层长短时记忆网络进行训练;使用目标检测算法检测测试集每一图像的显著目标,从外部知识库中检索各显著目标对应的知识实体,得到外部知识实体库,将实体库中表示知识实体与显著目标相关程度的概率注入到双层长短时记忆网络得到单词的预测概率分布;以序列生成方式为测试集中的图像产生图像描述。该方法融合多种注意力,提高了语义信息与图像内容的一致性,使得所生成描述更加准确。

Description

一种基于多种注意力机制和外部知识的图像描述生成方法
技术领域
本发明属于图像描述技术领域,具体涉及一种基于多种注意力机制和外部知识的图像描述生成方法。
背景技术
随着互联网中数据的井喷式增长,图像形式的数据渐渐占据了互联网大量流量。由于这些数据的便捷性,人们逐渐倾向于利用图像来实现社交通信。但是如果人工标注图像中的语义信息,势必会花费昂贵的物力和人力,因此图像描述生成成为倍受关注的研究方向,让一个机器能够具有人的思维提取图像的内容,从而以自然流畅的语言描述图像内容。
图像描述生成需要在图像和文本这两种不同的模态中检索一种合适的对齐方式,并且这种方式需要符合人类的认知和表达。但是,图像和文本这两种模态本身之间存在着语义鸿沟,使用自然语言来描述图像的内容首先就需要解决这个重大难题。
近期主流的图像描述生成方法采用编码器-解码器的生成架构,通常使用CNN(Convolutional Neural Network,卷积神经网络)作为编码器将图像编码成一个固定长度的中间表示,然后使用RNN(Recurrent Neural Network,循环神经网络)或者LSTM(LongShort-Term Memory,长短时记忆网络)将这个中间表示解码为一个描述语句。在这个过程中,注意力机制可以表现很强的有效性。在现有的方法中,注意力机制根据当前时刻的语义信息挑选出重要的局部图像特征,进而依靠解码器的翻译能力将图像特征解码成文字。然而,在此过程中,单向的注意力机制并未检验语义信息与图像内容的一致性,所生成的描述在准确性方面有所欠缺。除此以外,挑选重要的局部图像特征的过程通常是在一个“黑盒”里强制地、不可预测地执行。例如,对于某图像所对应的“A group of people arestanding at the bus sign”描述语句,单词“people”、“bus sign”显然更重要,因为他们对应图像中的两个显著目标实体。而“are”、“at”和“the”等单词就不太重要,因为他们与图像内容没有直接关系,甚至可以用其他单词代替。
其次,当前大多数图像描述生成方法建立在大量成对的图像-文本数据上,但是训练数据中的每张图像只包含几个真实描述语句,缺乏足够的线索来揭示图像中隐含的意图。例如图1中,借助知识图谱中的知识可以得知这一群人可能在等候“bus”,而采用之前的图像描述生成方法很难在语句中生成“bus”这个单词。因此,为了扩展从训练数据中描述新实体的能力,需要从外部数据源引入更多的知识。
发明内容
针对现有技术存在的不足,本发明提供一种基于多种注意力机制和外部知识的图像描述生成方法。
本发明的技术方案是:
一种基于多种注意力机制和外部知识的图像描述方法,包括以下步骤:
步骤1:获取图像标注数据集并对该数据集进行预处理,得到所需的训练集与测试集、词汇表以及词汇表的词嵌入矩阵;
步骤2:求解训练集中图像的区域特征与全局特征、以及训练集中自然语言描述的单词注意;
所述单词注意是根据图像内容与对应自然语言描述中单词的紧密关系,为描述中的单词赋予相应的权重值,以在生成描述语句的过程中强调不同单词的重要性;
步骤3:创建双层长短时记忆网络,用于对输入该网络的图像的区域特征、全局特征、自然语言描述的单词注意进行融合;
步骤4:将步骤2获得的图像的全局特征、区域特征以及自然语言描述的单词注意输入到所创建的双层长短时记忆网络中,基于训练集中的图像所对应的自然描述语句,对双层长短时记忆网络进行训练;
步骤5:通过使用目标检测算法检测测试集中待测试图像的显著目标,进而从外部知识库中检索各显著目标对应的知识实体,从而得到一个外部知识实体库,将该实体库中的表示知识实体与显著目标相关程度的概率注入到步骤4所训练的双层长短时记忆网络中得到单词的预测概率分布;
步骤6:基于单词的预测概率分布以序列生成方式为相对应的的图像产生图像描述。
进一步地,根据所述的基于多种注意力机制和外部知识的图像描述方法,步骤1具体包括如下步骤:
步骤1.1:对图像标注数据集中的所有自然语言描述进行单词分割处理,分割后的单词构成词汇表,对词汇表中的每一个单词计算其词嵌入向量,进而得到词汇表的词嵌入矩阵;
步骤1.2:对图像标注数据集预处理,得到所需的训练集和测试集;
从所获取的图像标注数据集中划分出一部分一定数量的图像,由这些图像及与图像对应的自然语言描述构成训练集;从所获取的图像标注数据集中划分出另一部分一定数量的图像,由这些图像及与图像对应的自然语言描述构成测试集。
进一步地,根据所述的基于多种注意力机制和外部知识的图像描述方法,步骤2中所述求解训练集中自然语言描述的单词注意的方法包括:
首先从词汇表的词嵌入矩阵中获取训练集中自然语言描述对应的词嵌入矩阵,然后根据训练集中自然语言描述对应的词嵌入矩阵,按照公式(2)至公式(4)求解训练集中自然语言描述的单词注意s:
ηi=fw(wi) (2)
其中,fw是计算分配给每一个输入单词的权重值的一个函数;xi是任一自然语言描述中第i个单词wi的词嵌入向量;N表示描述语句的长度;ηi是单词wi的权重值;βi是利用softmax函数将ηi映射为(0,1)的相对概率值。
进一步地,根据所述的基于多种注意力机制和外部知识的图像描述方法,训练集中自然语言描述的集合构成语料库,所述函数fw根据TF-IDF的思想,用以评估给定单词wi对于语料库中的一条自然语言描述E的重要程度,单词wi的重要程度随着它在语句E中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。
进一步地,根据所述的基于多种注意力机制和外部知识的图像描述方法,步骤3中创建的双层长短时记忆网络包含底层LSTM、双向注意力模块和顶层LSTM;
1)所述底层LSTM在当前t时刻的隐状态输出为语义信息历史时刻隐状态输出的语义信息构成历史语义信息集合/>底层LSTM在当前t时刻的输入/>包含3个部分,如式(5)所示:
其中,代表输入双层长短时记忆网络的图像的全局特征;WeΠt代表当前时刻t输入到底层LSTM的单词的词嵌入向量;Ht表示当前时刻t输入的自然语言描述的单词注意S与当前时刻t的上一时刻的顶层LSTM的隐层状态/>的融合信息,Ht按照公式(6)进行确定:
2)所述双向注意力模块,用于:
一方面,根据图像特征与语义信息的相关性,筛选出对于当前时刻t较为重要的局部图像特征,得到动态的图像特征表示具体计算方式如下式(13)-(14)所示:
其中,为可学习的参数矩阵,参数矩阵采用随机初始化的方式,在训练过程中根据反向传播算法自动更新;vi代表图像的局部特征,/>为t时刻的底层LSTM的隐状态输出;/>为利用语义信息/>筛选每个局部图像特征的概率分布;/>为概率分布/>的第i个概率值;
另一方面,根据各个时刻的语义信息表示与图像特征/>的相关性,可筛选出对于当前时刻较为重要的语义信息,得到与图像内容更为一致的语义信息表示/>具体计算方式如式(15)和(16)所示:
其中,为可学习的参数矩阵,参数矩阵采用随机初始化的方式,在训练过程中根据反向传播算法自动更新;/>为时刻i的底层LSTM的隐状态输出;/>代表图像的全局特征,/>为利用图像的全局特征/>筛选历史所有语义信息的概率分布;/>为概率分布的第i个概率值;
最后利用门控融合单元,以和/>为输入,权衡图像特征表示/>和语义信息表示的比重,通过式(17)自动计算得到控制这两种模态信息融合比重的参数值,根据该参数值通过式(18)得到融合这两种模态信息的向量Ct
其中,Whg和Wvg是参数矩阵,σ为sigmoid函数;
所述顶层LSTM,在当前t时刻以融合后的信息向量表示Ct和底层LSTM的隐状态输出作为输入,得到隐状态输出/>
进一步地,根据所述的基于多种注意力机制和外部知识的图像描述方法,步骤5中所述的目标检测算法为FasterR-CNN。
进一步地,根据所述的基于多种注意力机制和外部知识的图像描述方法,步骤5中所述单词的预测概率分布为:
其中,为时刻t顶层LSTM的隐状态输出;Wp为需要学习的权重矩阵;bp为需要学习的偏置项;λ是一个控制引入语义知识程度的超参数;Vw代表词汇表;pWK(Vw)代表在外部知识实体库WK中检索词汇表Vw中每个单词/>的检索结果对应的检索概率分布,如果未在外部知识实体库WK中检索到单词/>则将/>置为0,反之,/>为单词/>与显著目标相关程度的概率。
进一步地,根据所述的基于多种注意力机制和外部知识的图像描述方法,λ的值设置为0.2。
进一步地,根据所述的基于多种注意力机制和外部知识的图像描述方法,所述外部知识库为ConceptNet语义知识库。
进一步地,根据所述的基于多种注意力机制和外部知识的图像描述方法,其特征在于,步骤6中所述的以序列生成方式为测试集中的图像产生图像描述的内容为:采用贪心搜索方式,每个时刻都选择预测概率最大的那个单词,作为当前时刻的输出。
与现有技术相比,本发明实施方式提供的基于多种注意力机制和外部知识的图像描述生成方法具有如下有益效果:
(1)设计了一种特殊的单词注意来调整单词和图像区域之间的对齐,具体的说,首先根据图像区域的重要程度为相应描述中单词赋予一个权重值,然后在下文创建的双层长短时记忆网络中融入其单词的上下文信息,以更好的利用描述语句中的语义信息来引导描述语句的生成过程,即更倾向于描述图像中的显著区域而不是非显著区域。
(2)创建了可以融合图像的区域特征、全局特征、自然语言描述的单词注意的双层长短时记忆网络,以完成多种注意力的融合,生成更加准确的图像描述语句。
(3)由于单向的注意力机制并未检验语义信息和图像内容的一致性,因此,所生成的描述在准确性方面会有所欠缺。为解决该问题,本发明在所创建的双层长短时记忆网络中引入了双向注意力机制,在单向注意力机制的基础上,加入图像特征到语义信息方向的注意力计算,实现图像特征和语义信息两者在两个方向上的交互,并设计了一种门控融合单元对上述两个方向上的信息进行融合,以提高语义信息与图像内容的一致性,使得所生成描述更加准确。
(4)为了揭示难以被机器直接表达出的隐含信息,将知识注入到训练完成的双层长短时记忆网络中。除此以外,还考虑到由于不必要的输入会在双层长短时记忆网络的训练阶段产生噪声,从而降低网络的性能。因此没有直接将外部知识库中抽取出来的知识输入到双层长短时记忆网络的输入层进行训练,而是将训练完成的双层长短时记忆网络的输出信息进行知识注入,而在保证网络性能的前提下生成更新颖自然的图像描述语句。
附图说明
图1为真实标注语句“A group of people are standing at the bus sign”对应的图像;
图2为本发明基于多种注意力机制和外部知识的图像描述生成方法流程图;
图3为本发明中获取自然语言描述的单词注意的流程图;
图4为本发明中双层长短时记忆网络的结构示意图;
图5为本发明中双层注意力模块中双向注意力机制的过程示意图;
图6为本发明中抽取外部知识的流程示例图。
具体实施方式
为了便于理解本申请,下面将参照相关附图对本申请进行更全面的描述。附图中给出了本申请的较佳实施方式。但是,本申请可以以许多不同的形式来实现,并不限于本文所描述的实施方式。相反地,提供这些实施方式的目的是使对本申请的公开内容理解的更加透彻全面。
本实施方式的基于多种注意力机制和外部知识的图像描述方法,如图2所示,包括以下步骤:
步骤1:获取图像标注数据集并对该数据集进行预处理,得到所需的训练集与测试集、词汇表以及词汇表的词嵌入矩阵。
所述图像标注(Image Caption)数据集指的是具有足够数量的图像且每幅图像标注了对应的自然语言描述的数据集,例如Flickr8K数据集、Flickr30K数据集和MS COCO数据集。在本实施方式中获取的是MSCOCO 2014数据集,MSCOCO 2014数据集包含123287张图像,训练集、验证集、测试集中分别包含82783张、40504张和40774张图像,每张图像具有5条相似语义的人工标注的自然语言描述。MSCOCO 2014数据集中的官方图像命名和其图像对应的5条相似语义的人工标注的自然语言描述,如表1所示。
表1官方图像命名及其自然语言描述
步骤1.1:对图像标注数据集中的所有自然语言描述进行单词分割处理,分割后的单词构成词汇表,对词汇表中的每一个单词计算其词嵌入向量,进而得到词汇表的词嵌入矩阵。
本实施方式中对获取的图像标注数据集中的所有自然语言描述进行单词分割,将所分割后的单词进行小写转换,紧接着把转换后的单词集合与开始标记<start>、结束标记<end>一起构成本实施方式所需的词汇表Vw。再对词汇表中的每一个单词计算其词嵌入向量,进而得到词汇表的词嵌入矩阵。
常见的单词嵌入方式是独热编码(One-Hot Encoding)。这种编码方式将向量中的某一位设置为1,其余位设置为0来表示词汇表的一个单词,该向量称为独热向量。如果词汇表中单词的数目过多,会使得独热向量变得稀疏,也会出现维度爆炸的问题。
因此,本实施方式利用Word2vec算法对词汇表中的每一个单词计算其词嵌入向量进而得到与词汇表对应的词嵌入矩阵/>其中n为词汇表中单词的个数;D为向量维度,本实施方式将单词的词嵌入维度设置为512维。
步骤1.2:对图像标注数据集预处理,得到所需的训练集和测试集。
本实施方式遵循了一种广泛使用的划分方法,该划分方法是Karpathy在文献《Deep visual-semantic alignments for generating image descriptions》提到的划分方法。经该方法划分后,分别得到82783张图像及与图像对应的自然语言描述构成训练集用于训练,5000张图像及与图像对应的自然语言描述构成验证集用于验证,5000张图像及与图像对应的自然语言描述构成测试集用于测试。为了方便后续处理,本实施方式将每一张图像都调整为256×256的像素大小。
步骤2:求解训练集中图像的区域特征与全局特征,同时获取训练集中自然语言描述的单词注意。
步骤2.1:求解训练集中图像的区域特征与全局特征。
步骤2.1.1:求解训练集中图像的区域特征V。
本实施方式使用Faster R-CNN算法对图像进行实体特征的提取,该算法是Shaoqing Ren等在文献《Faster R-CNN:Towards real-time object detection withregion proposal》中提出的。该算法共分为两个阶段,在第一阶段,使用RPN(RegionProposal Networks,区域建议网络)得到图像中的一系列候选区域并进行第一次边框回归。在第二阶段,通过ROI(Region of interest,感兴趣区域)池化层将上述的候选区域特征的维度进行统一。本实施方式将所有候选区域经ROI池化层的输出作为该图像的区域特征V={v1,v2,...,vL},其中L是图像区域的个数,D是向量维度。本实施方式将图像候选区域的个数设置为36,将特征向量的维度设置为2048。例如,对于每一张经过预处理得到的256×256大小的图像,可以得到36个2048维的图像特征向量。
步骤2.1.2:基于训练集中图像的区域特征获取数据集中图像的全局特征
对步骤2.1.1中获取的图像区域特征V={v1,v2,...,vL},进行平均池化处理,得到图像的全局特征表示/>如式(1)表示。
步骤2.1.3:分别将得到的2048维的区域特征和2048维的全局特征经线性变换均映射到512维。
为了与词向量维度统一,本实施方式分别将得到的2048维的区域特征和全局特征经线性变换均映射到512维。
步骤2.2:求解训练集中自然语言描述的单词注意。
本实施方式引入的单词注意来自于这样一种认知,即自然语言描述中的某些单词与给定图像的内容的联系比其他单词更紧密。在本实施方式中引入单词注意以加强这种联系,让这些单词在训练过程中起到更好的指导作用。所述单词注意是根据图像内容与对应描述中单词的紧密关系,为该描述中的单词赋予相应的权重值,以在生成描述语句的过程中强调不同单词的重要性。如图3所示,本步骤具体包括以下内容:
首先从词汇表的词嵌入矩阵中获取训练集中自然语言描述对应的词嵌入矩阵,例如对于训练集中的图像I,其对应的自然语言描述为E={w1,w2,...,wN},其中N表示描述语句的长度。首先在词汇表中寻找自然语言描述E中的每个单词wi以得到单词wi在词汇表的位置,进而在词汇表的词嵌入矩阵中查找单词wi对应的词嵌入向量,最终形成自然语言描述E的词嵌入矩阵。
然后根据练集中自然语言描述对应的词嵌入矩阵,按照公式(2)-(4)求解训练集中自然语言描述的单词注意s。
ηi=fw(wi) (2)
其中,fw是计算分配给每一个输入单词的权重值的一个函数;xi是任一自然语言描述中第i个单词wi的词嵌入向量;ηi是单词wi的权重值;βi是利用softmax函数将ηi映射为(0,1)的相对概率值。训练集中自然语言描述的集合构成本实施方式的语料库,本实施方式的函数fw采用词频-逆文档频率算法(term frequency–inverse document frequency,TF-IDF)的思想,用以评估例如单词wi对于语料库中的其中一条自然语言描述E的重要程度,单词wi的重要程度随着它在语句E中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。
步骤3:创建双层长短时记忆网络,用于对输入该网络的图像的区域特征、全局特征、自然语言描述的单词注意进行融合。
如图4所示,本实施方式的双层长短时记忆网络包含底层LSTM、双向注意力模块和顶层LSTM。其中,底层LSTM以图像的全局特征、与图像对应的自然语言描述的单词注意和当前时刻输入到底层LSTM的单词的词嵌入向量作为输入,其隐状态输出可与词汇表进行映射,因此可将隐状态输出称为语义信息。该语义信息将用于双向注意力计算;双向注意力模块的输入共有四个部分,分别是:图像的区域特征、全局特征、当前时刻底层LSTM隐状态输出的语义信息/>和底层LSTM隐状态输出的历史语义信息集合/>根据此四个部分的输入,计算得出融合图像特征和语义特征的向量表示Ct;而顶层LSTM作为一个语言模型,将融合后的图像特征和语义特征的向量表示Ct和底层LSTM隐状态输出/>作为输入,其隐状态输出/>用于词的预测。具体内容包括:
1)底层LSTM用于获得当前时刻t的语义信息和历史语义信息集合/>内容为:
首先,底层LSTM在当前时刻t的输入主要包含3个部分,如式(5)所示:
其中,代表图像的全局特征;WeΠt代表当前时刻t输入到底层LSTM的单词的词嵌入向量;Ht表示当前时刻t输入的自然语言描述的单词注意s与当前时刻t的上一时刻的顶层LSTM的隐层状态/>的融合信息,Ht按照公式(6)进行确定:
其中,代表元素相乘运算,Ht表示当前时刻t单词注意s与/>的融合信息,特别注意的是,当首次进行信息融合时,即t=1时,由于此时并没有获取到顶层LSTM的隐状态输出因此Ht用仅用需要单词注意s的相关信息。
基于底层LSTM在t时刻的输入底层LSTM在时刻t的更新过程如式(7)-(12)所示:
其中,和/>分别表示在t时刻LSTM的输入门、遗忘门、输出门、记忆门、记忆单元和隐藏状态,σ(.)表示sigmoid函数,W*、U*、Z*、b*是学习的权重矩阵和偏置项。
通过公式(12)可以得到当前时刻t的语义信息和历史时刻的语义信息,用/>表示历史语义信息集合,将当前时刻t的语义信息/>与历史语义信息集合/>进行拼接,即可得到所有时刻的语义信息集合/>
2)双向注意力模块,用于从两个方向进行注意力计算:根据当前时刻的语义信息筛选出重要的局部图像特征以获得动态的图像特征表示;根据全局图像特征调整语义信息,以获得与图像内容更为一致的语义信息表示;
一方面,底层LSTM的隐状态输出中存储了已知的语义信息,根据图像特征与语义信息的相关性,可筛选出对于当前时刻t较为重要的局部图像特征,得到动态的图像特征表示具体计算方式如下式(13)-(14)所示:
其中,为可学习的参数矩阵,参数矩阵采用随机初始化的方式,在训练过程中根据反向传播算法自动更新。vi代表图像的局部特征,/>为t时刻的底层LSTM的隐状态输出。/>为利用softmax函数获得的当前时刻t的语义信息/>筛选每个局部图像特征的概率分布。/>为概率分布/>的第i个概率值,即利用softmax函数获得的当前语义信息/>筛选局部图像特征vi的概率值。
另一方面,根据各个时刻的语义信息表示与图像特征/>的相关性,可筛选出对于当前时刻较为重要的语义信息,得到与图像内容更为一致的语义信息表示/>具体计算方式如式(15)和(16)所示:
其中,为可学习的参数矩阵,参数矩阵采用随机初始化的方式,在训练过程中根据反向传播算法自动更新。/>为时刻i的底层LSTM的隐状态输出。/>代表图像的全局特征,/>为利用softmax函数获得的图像的全局特征/>筛选历史所有语义信息的概率分布。/>为概率分布/>的第i个概率值,即利用softmax函数获得的图像的全局特征/>筛选语义信息/>的概率分布值。
最后利用门控融合单元,权衡图像特征表示和语义信息表示/>的比重,得到融合这两种模态信息的向量Ct
在生成不同单词的时候,需要不同比重的图像特征和语义信息,例如,在生成实体词汇的时候,需要更多的关注图像特征,而在生成虚词的时候,需要更多地关注语义信息。因此,本实施方式在双向注意力模块中设计了门控融合单元,以权衡和/>的比重,如图5所示,具体地,门控融合单元以/>和/>为输入,通过式(17)自动计算得到控制这两种模态信息融合比重的参数值。
其中,Whg和Wvg是参数矩阵,参数矩阵采用随机初始化的方式,在训练过程中根据反向传播算法自动更新,σ为sigmoid函数。进而可以根据式(18)得到融合之后的信息向量表示Ct
3)顶层LSTM在t时刻以融合后的信息向量表示Ct和底层LSTM的隐状态输出作为输入,以得到隐状态输出/>用于单词的预测;
顶层LSTM在t时刻的输入包含2个部分,如式(19)所示。
其中,Ct是图像特征表示和语义信息表示的融合向量,为底层LSTM的隐状态输出。
顶层LSTM在t时刻的更新过程如式(20)-(25)所示:
其中,和/>分别表示在t时刻LSTM的输入门、遗忘门、输出门、记忆门、记忆单元和隐状态,σ(.)表示sigmoid函数,W*、U*、Z*、b*是需要学习的权重矩阵和偏置项。
步骤4:基于步骤1得到的训练集、词汇表、词汇表的词嵌入矩阵和步骤2得到的训练集中图像的区域特征与全局特征以及自然语言描述的单词注意,对步骤3创建的双层长短时记忆网络进行训练。
首先,将步骤2获得的训练集中图像的区域特征与全局特征、训练集中自然语言描述的单词注意以及步骤1得到的词汇表的词嵌入矩阵输入到所创建的双层长短时记忆网络中,然后将双层长短时记忆网络中顶层LSTM的隐状态输出通过全连接层映射为一个与词汇表维度相同的向量Y。到这里,现有技术的做法将是经过softmax函数计算得到所有单词的归一化的概率分布:
其中,Wp为需要学习的权重矩阵,bp为需要学习的偏置项。
然后,基于步骤1得到的词汇表和训练集中的真实标注语句,即图像所对应的自然描述语句,对该双层长短时记忆网络进行训练。本实施方式采用交叉熵损失函数训练网络,根据真实标注语句,模型参数θ,最小化交叉熵损失。
按照现有技术,可以直接使用公式(26)进行单词的预测。假设词汇表Vw={<start>,banana,and,on,the,<end>}且有序排列。在网络训练结束后,经训练后的全连接层映射的向量Y=[2.7 4.8 0.6 1.2 2.9 3.5],紧接着将softmax函数作用于Y得到的概率分布为pt+1=[0.077 0.630 0.009 0.017 0.094 0.173],本实施方式采用贪心搜索方式,每个时刻都选择输出概率最大的那个单词,作为当前时刻的输出。也就是该双层LSTM网络模型在t时刻预测的单词是pt中最大概率值0.630对应的单词banana。
步骤5:通过使用目标检测算法检测测试集中待测试图像的显著目标,进而从外部知识库中检索各显著目标对应的知识实体,从而得到一个外部知识实体库,将该实体库中表示知识实体与显著目标相关程度的概率注入到步骤4所训练的双层长短时记忆网络中得到单词的预测概率分布。
在图像描述任务中,知识是非常重要的,因为它为生成描述语句提供了大量的线索。在许多现有的数据集中,不可能包含所有需要的必要知识,这限制了图像描述语句的新颖性。因此,本实施方式考虑从外部资源中获取知识来辅助描述生成,从而提高步骤4所训练的网络的泛化性能。近年来,人工智能领域出现了许多开放可用的知识库,本实施方式使用外部知识库ConceptNet来帮助所训练的网络进一步理解图像中隐含的意图。ConceptNet是一个开放的语义知识库,以三元组形式的关系型知识构成,包含了与人类日常生活密切相关的常识性知识。
一般来说,知识图谱中的每一条知识都可以看作是一个三元组(subject,rel,object),其中subject和object代表现实世界中的两个实体或者概念,rel是它们之间的关系。为了获得与给定图像相关的信息知识,首先使用目标检测算法例如FasterR-CNN来检测图像的一系列显著目标,然后从知识库中检索与这些显著目标语义上相关联的知识。图6给出了为检测到的目标“surfboard”从ConceptNet中检索语义知识的示例。如图6所示,检索到的“surfing”、“waves”、“surfer”等信息显然对描述生成具有指导作用。同时,检索到每个单词对应一个表示其与显著目标相关程度的概率,称为检索概率,这将作为所训练网络利用知识的重要依据。对于每个被检测到的目标,选择相关的知识实体运用于图像描述生成任务,就可得到一个小型外部知识实体库WK
由于不必要的输入可能会在训练阶段产生噪声,从而降低网络的性能。因此,本实施方式并不直接将语义知识输入到双层长短时记忆网络的输入层进行训练,而是在预测下一个单词时,对某些存在于知识实体库WK的单词增加一个额外的概率,将公式(26)改进为:
其中,λ是一个控制引入语义知识程度的超参数,通过自行设置其值实现,此实施方式将λ的值设置为0.2。Vw代表词汇表,pWK(Vw)代表在外部知识实体库WK中检索词汇表Vw中每个单词的检索结果对应的检索概率分布,如果未在外部知识实体库WK中检索到单词则将/>置为0,反之,/>为单词/>与显著目标相关程度的概率,如图6所示。因此改进后的单词预测概率分布Pt将由公式(26)的预测概率和相应的检索概率PWK(Vw)决定,对某些存在于知识实体库WK的单词增加一个额外的概率,可使训练后的双层长短时记忆网络更加充分的使用这些有用的线索。这不仅能提高描述语句的准确性,也能产生更多新颖而有意义的描述。
例如,对于测试集中的任意一张图像,本实施方式首先按照步骤2的方法获取该图像的全局特征,并且将单词注意置为0,一起输入到步骤4得到的训练后的双层长短时记忆网络中,最后将所创建的知识实体库中的表示知识实体与显著目标相关程度的概率注入到该网络中以产生最终的预测概率分布。
步骤6:基于单词的预测概率分布以序列生成方式为测试集中的图像产生图像描述。
本实施方式采用主流的序列生成方式产生图像描述,也就是所产生的描述语句是按照一个单词接着一个单词生成的。基于公式(27)所产生的单词的预测概率分布pt+1以序列生成方式产生相应的自然语言描述语句。本实施方式采用贪心搜索方式,每个时刻都选择预测概率最大的那个单词,作为当前时刻的输出。
例如,假设词汇表Vw={<start>,here,and,is,the,road,a,cup,<end>}且有序排列。
在t=1时,预测概率分布p1={0.52,0.31,0.11,0.12,0.02,0.07,0.17,0.27},选择最大的概率值0.52映射的单词“here”作为当前时刻的输出。
在t=2时,预测概率分布p2={0.34,0.37,0.88,0.26,0.48,0.59,0.21,0.52},选择最大的概率值0.88映射的单词“is”作为当前时刻的输出。
在t=3时,预测概率分布p3={0.49,0.31,0.21,0.47,0.52,0.68,0.17,0.27},选择最大的概率值0.68映射的单词“a”作为当前时刻的输出。
在t=4时,预测概率分布p4={0.21,0.34,0.45,0.26,0.35,0.07,0.69,0.27},选择最大的概率值0.69映射的单词“cup”作为当前时刻的输出。
在t=5时,预测概率分布p5={0.29,0.39,0.21,0.47,0.21,0.39,0.47,0.80},选择最大的概率值0.80映射的标记“<end>”作为当前时刻的输出。此时碰到结束标记,终止图像描述生成。因此所生成的描述语句为“here is a cup”。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (8)

1.一种基于多种注意力机制和外部知识的图像描述方法,其特征在于,包括以下步骤:
步骤1:获取图像标注数据集并对该数据集进行预处理,得到所需的训练集与测试集、词汇表以及词汇表的词嵌入矩阵;
步骤2:求解训练集中图像的区域特征与全局特征、以及训练集中自然语言描述的单词注意;
所述单词注意是根据图像内容与对应自然语言描述中单词的紧密关系,为描述中的单词赋予相应的权重值,以在生成描述语句的过程中强调不同单词的重要性;
步骤3:创建双层长短时记忆网络,用于对输入该网络的图像的区域特征、全局特征、自然语言描述的单词注意进行融合;
步骤4:将步骤2获得的图像的全局特征、区域特征以及自然语言描述的单词注意输入到所创建的双层长短时记忆网络中,基于训练集中的图像所对应的自然描述语句,对双层长短时记忆网络进行训练;
步骤5:通过使用目标检测算法检测测试集中待测试图像的显著目标,进而从外部知识库中检索各显著目标对应的知识实体,从而得到一个外部知识实体库,将该实体库中的表示知识实体与显著目标相关程度的概率注入到步骤4所训练的双层长短时记忆网络中得到单词的预测概率分布;
步骤6:基于单词的预测概率分布以序列生成方式为相对应的图像产生图像描述;
步骤2中所述求解训练集中自然语言描述的单词注意的方法包括:
首先从词汇表的词嵌入矩阵中获取训练集中自然语言描述对应的词嵌入矩阵,然后根据训练集中自然语言描述对应的词嵌入矩阵,按照公式(2)至公式(4)求解训练集中自然语言描述的单词注意s:
其中,fw是计算分配给每一个输入单词的权重值的一个函数;xi是任一自然语言描述中第i个单词wi的词嵌入向量;N表示描述语句的长度;ηi是单词wi的权重值;βi是利用softmax函数将ηi映射为(0,1)的相对概率值;
步骤5中所述单词的预测概率分布为:
其中,为时刻t顶层LSTM的隐状态输出;Wp为需要学习的权重矩阵;bp为需要学习的偏置项;λ是一个控制引入语义知识程度的超参数;Vw代表词汇表;/>代表在外部知识实体库WK中检索词汇表Vw中每个单词/>的检索结果对应的检索概率分布,如果未在外部知识实体库WK中检索到单词/>则将/>置为0,反之,/>为单词Vi与显著目标相关程度的概率。
2.根据权利要求1所述的基于多种注意力机制和外部知识的图像描述方法,其特征在于,步骤1具体包括如下步骤:
步骤1.1:对图像标注数据集中的所有自然语言描述进行单词分割处理,分割后的单词构成词汇表,对词汇表中的每一个单词计算其词嵌入向量,进而得到词汇表的词嵌入矩阵;
步骤1.2:对图像标注数据集预处理,得到所需的训练集和测试集;
从所获取的图像标注数据集中划分出一部分一定数量的图像,由这些图像及与图像对应的自然语言描述构成训练集;从所获取的图像标注数据集中划分出另一部分一定数量的图像,由这些图像及与图像对应的自然语言描述构成测试集。
3.根据权利要求1所述的基于多种注意力机制和外部知识的图像描述方法,其特征在于,训练集中自然语言描述的集合构成语料库,所述函数fw根据TF-IDF的思想,用以评估给定单词wi对于语料库中的一条自然语言描述E的重要程度,单词wi的重要程度随着它在语句E中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。
4.根据权利要求1所述的基于多种注意力机制和外部知识的图像描述方法,其特征在于,步骤3中创建的双层长短时记忆网络包含底层LSTM、双向注意力模块和顶层LSTM;其中:
1)所述底层LSTM在当前t时刻的隐状态输出为语义信息历史时刻隐状态输出的语义信息构成历史语义信息集合/>底层LSTM在当前t时刻的输入/>包含3个部分,如式(5)所示:
其中,代表输入双层长短时记忆网络的图像的全局特征;WeΠt代表当前时刻t输入到底层LSTM的单词的词嵌入向量;Ht表示当前时刻t输入的自然语言描述的单词注意S与当前时刻t的上一时刻的顶层LSTM的隐层状态/>的融合信息,Ht按照公式(6)进行确定:
Ht=s,t=1 (6)
2)所述双向注意力模块,用于:
一方面,根据图像特征与语义信息的相关性,筛选出对于当前时刻t较为重要的局部图像特征,得到动态的图像特征表示具体计算方式如下式(13)-(14)所示:
其中,为可学习的参数矩阵,参数矩阵采用随机初始化的方式,在训练过程中根据反向传播算法自动更新;vi代表图像的局部特征,/>为t时刻的底层LSTM的隐状态输出;/>为利用语义信息/>筛选每个局部图像特征的概率分布;/>为概率分布/>的第i个概率值;
另一方面,根据各个时刻的语义信息表示与图像特征/>的相关性,可筛选出对于当前时刻较为重要的语义信息,得到与图像内容更为一致的语义信息表示/>具体计算方式如式(15)和(16)所示:
其中,We 2为可学习的参数矩阵,参数矩阵采用随机初始化的方式,在训练过程中根据反向传播算法自动更新;/>为时刻i的底层LSTM的隐状态输出;/>代表图像的全局特征,/>为利用图像的全局特征/>筛选历史所有语义信息的概率分布;/>为概率分布/>的第i个概率值;
最后利用门控融合单元,以和/>为输入,权衡图像特征表示/>和语义信息表示/>的比重,通过式(17)自动计算得到控制这两种模态信息融合比重的参数值,根据该参数值通过式(18)得到融合这两种模态信息的向量Ct
其中,Whg和Wvg是参数矩阵,σ为sigmoid函数;
所述顶层LSTM,在当前t时刻以融合后的信息向量表示Ct和底层LSTM的隐状态输出作为输入,得到隐状态输出/>
5.根据权利要求1所述的基于多种注意力机制和外部知识的图像描述方法,其特征在于,步骤5中所述的目标检测算法为FasterR-CNN。
6.根据权利要求4所述的基于多种注意力机制和外部知识的图像描述方法,其特征在于,λ的值设置为0.2。
7.根据权利要求1所述的基于多种注意力机制和外部知识的图像描述方法,其特征在于,所述外部知识库为ConceptNet语义知识库。
8.根据权利要求1所述的基于多种注意力机制和外部知识的图像描述方法,其特征在于,步骤6中所述的以序列生成方式为测试集中的图像产生图像描述的内容为:采用贪心搜索方式,每个时刻都选择预测概率最大的那个单词,作为当前时刻的输出。
CN202110153536.7A 2021-02-04 2021-02-04 一种基于多种注意力机制和外部知识的图像描述生成方法 Active CN112784848B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110153536.7A CN112784848B (zh) 2021-02-04 2021-02-04 一种基于多种注意力机制和外部知识的图像描述生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110153536.7A CN112784848B (zh) 2021-02-04 2021-02-04 一种基于多种注意力机制和外部知识的图像描述生成方法

Publications (2)

Publication Number Publication Date
CN112784848A CN112784848A (zh) 2021-05-11
CN112784848B true CN112784848B (zh) 2024-02-27

Family

ID=75760850

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110153536.7A Active CN112784848B (zh) 2021-02-04 2021-02-04 一种基于多种注意力机制和外部知识的图像描述生成方法

Country Status (1)

Country Link
CN (1) CN112784848B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113468357B (zh) * 2021-07-21 2023-07-11 北京邮电大学 一种图像描述文本生成方法及装置
CN113609326B (zh) * 2021-08-25 2023-04-28 广西师范大学 基于外部知识和目标间关系的图像描述生成方法
WO2023084704A1 (ja) * 2021-11-11 2023-05-19 日本電信電話株式会社 画像処理装置、方法およびプログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108875807A (zh) * 2018-05-31 2018-11-23 陕西师范大学 一种基于多注意力多尺度的图像描述方法
CN111062451A (zh) * 2019-12-30 2020-04-24 合肥工业大学 一种基于文本引导图模型的图像描述生成方法
CN111160467A (zh) * 2019-05-31 2020-05-15 北京理工大学 一种基于条件随机场和内部语义注意力的图像描述方法
CN111444968A (zh) * 2020-03-30 2020-07-24 哈尔滨工程大学 一种基于注意力融合的图像描述生成方法
CN112052906A (zh) * 2020-09-14 2020-12-08 南京大学 一种基于指针网络的图像描述优化方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108875807A (zh) * 2018-05-31 2018-11-23 陕西师范大学 一种基于多注意力多尺度的图像描述方法
CN111160467A (zh) * 2019-05-31 2020-05-15 北京理工大学 一种基于条件随机场和内部语义注意力的图像描述方法
CN111062451A (zh) * 2019-12-30 2020-04-24 合肥工业大学 一种基于文本引导图模型的图像描述生成方法
CN111444968A (zh) * 2020-03-30 2020-07-24 哈尔滨工程大学 一种基于注意力融合的图像描述生成方法
CN112052906A (zh) * 2020-09-14 2020-12-08 南京大学 一种基于指针网络的图像描述优化方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Feedback LSTM Network Based on Attention for Image Description Generator;Qu, Zhaowei等;《CMC-COMPUTERS MATERIALS & CONTINUA》;第59卷(第2期);575-589 *
Image Captioning with Internal and External Knowledge;Feicheng Huang等;《Proceedings of the 29th ACM Internation Conference on Information & Knowledge Management》;535-544 *
基于多空间混合注意力的图像描述生成方法;林贤早等;《计算机应用》;第40卷(第4期);985-989 *
基于注意力机制的图像描述生成算法研究;陈龙杰;《CNKI中国优秀硕士毕业论文全文库(信息科技辑)》(第6期);I138-719 *

Also Published As

Publication number Publication date
CN112784848A (zh) 2021-05-11

Similar Documents

Publication Publication Date Title
CN112784848B (zh) 一种基于多种注意力机制和外部知识的图像描述生成方法
CN111488807B (zh) 基于图卷积网络的视频描述生成系统
CN110147457B (zh) 图文匹配方法、装置、存储介质及设备
CN113254599B (zh) 一种基于半监督学习的多标签微博文本分类方法
CN111581510A (zh) 分享内容处理方法、装置、计算机设备和存储介质
CN109918671A (zh) 基于卷积循环神经网络的电子病历实体关系抽取方法
CN109344404B (zh) 情境感知的双重注意力自然语言推理方法
CN109697232A (zh) 一种基于深度学习的中文文本情感分析方法
CN112100332A (zh) 词嵌入表示学习方法及装置、文本召回方法及装置
CN111738007A (zh) 一种基于序列生成对抗网络的中文命名实体识别数据增强算法
CN108765383A (zh) 基于深度迁移学习的视频描述方法
CN111078866A (zh) 一种基于序列到序列模型的中文文本摘要生成方法
CN113190656B (zh) 一种基于多标注框架与融合特征的中文命名实体抽取方法
CN110929640B (zh) 一种基于目标检测的宽幅遥感描述生成方法
CN113111663A (zh) 一种融合关键信息的摘要生成方法
CN111339407A (zh) 一种信息抽取云平台的实现方法
CN116975615A (zh) 基于视频多模态信息的任务预测方法和装置
CN114661951A (zh) 一种视频处理方法、装置、计算机设备以及存储介质
CN113204675B (zh) 一种基于跨模态物体推理网络的跨模态视频时刻检索方法
CN113591874B (zh) 长时记忆增强的段落级别图像描述生成方法
CN114239730A (zh) 一种基于近邻排序关系的跨模态检索方法
CN116542817B (zh) 一种智能数字人律师咨询方法及系统
Jishan et al. Hybrid deep neural network for bangla automated image descriptor
CN115861995B (zh) 一种视觉问答方法、装置及电子设备和存储介质
CN116341515A (zh) 一种面向对比学习的动态课程的句子表示方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant