[0005] 本发明主要针对于图片或句子等单模态数据提供的信息往往不足以进行正确的事件分类,通常需要借助于其他模态的特征信息。提出了一种基于图片和句子的多模态联合事件检测方法,同时从图片和句子中识别事件。提出的一种基于图片和句子的多模态联合事件检测的方法。
[0006] 基于图片和句子的多模态联合事件检测的方法,按照如下步骤进行:
[0007] 步骤1、文本事件检测模块首先对文本特征进行编码,获取句中单词的特征表示序列 对于第j个候选触发词,然后将其对应的特征向量 输入文本事件分类器SoftmaxT,获取第j个候选触发词触发的事件类型概率分布,其中,文本事件分类T
器的损失函数定义为L;
[0008] 步骤2、对图片特征进行编码,获取图片中描述动作以及多个实体的特征表示序列然后将图片实体特征向量 输入图片事件分类器SoftmaxI,获取I
当前图片描述的事件类型概率分布,其中,图片事件分类器的损失函数定义为L;
[0009] 步骤3、图片句子匹配模块首先利用跨模态注意力机制(Cross‑Modal Attention Mechanism,CMAM)计算每一对图片实体与单词之间的关联权值。根据第j个单词,CMAM能够定位重要的图片实体并分配权重,通过加权平均聚合与单词相关的视觉特征,获取单词在图片模态的特征表示 另一方面,对于图片中的第i个实体,首先在待匹配的句子中搜索相关的单词,并为它们分配权重,通过加权平均捕获与图片实体相关的语义信息,从而获取图片实体在文本模态的特征表示 然后将每个句子与其在图片模态中的特征表示序T←I I←T列的欧氏距离D 以及图片中所有实体与其在文本模态中的特征表示序列的欧氏距离Dm
进行相加,作为图片和句子的相似度。其中,图片句子匹配模块的损失函数定义为L;
[0010] 步骤4、通过联合优化文本事件检测模块、图片事件检测模块以及图片句子匹配模块,从而获取共享事件分类器;
[0011] 步骤5、在测试阶段,对于多模态文本,首先利用图片句子匹配模块找出相似度最高的图片和句子,并获取第i个图片实体在文本模态的特征表示 以及第j个单词在图片模态的特征表示 然后利用门控注意力机制为图片实体特征向量 和 分配权重,通过加权平均获取第i个图片实体对应的多模态特征向量,接着利用共享事件分类器获取图片描述的事件类型。同样,利用另外一个门控注意力机制为 和 分配权重,通过加权平均获取第j个单词的多模态特征表示,接着利用共享事件分类器获取第j个单词触发的事件类型;
[0012] 进一步的,步骤1具体实现如下:
[0013] 1‑1.在KBP 2017英文数据集上训练文本事件分类器,首先对标注数据进行预处理,获取实体类型、事件触发词、实体关系,其中,一共5种实体类型,18种事件类型,然后利用Stanford CoreNLP对原始文本进行分句、分词,获取词性和句子的语法依存结构。并分别创建词性向量表、实体类型向量表,其中每一种向量表都有类型“空”对应的初始化向量。
[0014] 1‑2.查询预训练的glove词向量矩阵,获取句子中每个词的词向量wemd,然后查询词性向量表得到词性向量wpos和查询实体类型向量表得到实体类型向量wentity,每个词的实值向量x={wemd,wpos,wentity},因此句子实值向量序列表示为W={x1,x2,...,xn‑1,xn},其中n是句子的长度。
[0015] 1‑3.将句子实值向量序列W={x1,x2,...,xn‑1,xn}作为Bi‑LSTMs的输入,获取句子的隐含状态向量序列 构建基于句子语法依存结构的图卷积网络,L
接着将H输入GCNs中,获取句子的卷积向量序列 最后利用注意力
T
计算序列H 中的每个元素对候选触发词的影响权重,从而获取句子的编码序列T
同时将C作为单词序列在公共空间的特征表示序列。
[0016] 1‑4.将句子中的每个单词视为候选触发词,对于第j(j≤n)个候选触发词,然后将其对应的特征向量 输入文本事件分类器:
[0017]
[0018]
[0019] 其中,WT和bT作为文本事件分类器SoftmaxT的权重矩阵和偏置项, 表示句子S中第j个候选触发词wj触发的事件类型概率分布,而typew,j表示wj触发的事件类型。同时,文本事件分类器的损失函数定义为:
[0020]
[0021] 其中,T是KBP 2017英文数据集中标注的句子数量, 作为单词wj标注的事件类型,Si表示数据集中第i个句子,句子长度为n。
[0022] 进一步的,步骤2具体实现如下:
[0023] 2‑1.在imSitu图片数据集上训练图片事件分类器,其中,一共定义了504个动词记录图片描述的动作,以及11538种实体类型描述图片中出现的实体。首先利用VGG16v去提取图片中的动作特征,并利用多层感知机MLPv将动词特征转换成动词向量 同时,利用另外一个VGG16o提取图片中的实体集合O={o1,o2,...,om‑1,om},然后通过多层感知机MLPo将所有实体转换成它们对应的名词向量序列 然后用网状结构表示每张图片,根据其描述的动作和实体构建网状结构。其中,图片描述的动作作为网状结构的中心节点,同时将实体与动作节点进行连接。接着采用图卷积网络对图片特征对应的单词向量序列进行编码,从而使得动作节点卷积计算后的向量保存实体特征信息。其中,编码后的图片实体特征向量序列为 其中, 用来表示图片动作节点的卷积向量
I
(为了方便计算,本发明将图片动作视为一个图片实体),同样,H被视图片动作以及实体集合在公共空间的特征表示序列。
[0024] 2‑2.将图片I中动作卷积向量 作为图片事件分类器的输入,获取图片描述事件类型的概率分布为:
[0025]
[0026] typeI=arg max(P(yI|I)) (5)
[0027] 其中,WI和bI作为图片事件分类器SoftmaxI的权重矩阵和偏置项,P(yI|I)表示图片I触发的事件类型概率分布,而typeI表示图片I中描述的事件类型。同时,图片事件分类器的损失函数定义为:
[0028]
[0029] 其中,N代表着imSitu中图片标注事件样例的个数,yI作为图片Ii标注的事件类型,Ii表示图片数据集中第i个图片样例。
[0030] 进一步的,步骤3具体实现如下:
[0031] 3‑1.图片句子匹配模块是为了从包含多张图片和多个句子的多模态文档中找出语义相似度最高的图片和句子。首先利用跨模态注意力机制计算每一对图片实体与单词之间的关联权值,学习基于单词的图片实体特征表示和基于图片实体的单词特征表示。更具体地说,根据每个单词,CMAM能够定位重要的图片实体并分配权重,通过加权平均聚合与单词相关的视觉特征,获取单词在图片模态的特征表示。另一方面,对于图片中的每个实体,首先在待匹配的句子中搜索相关的单词,并为它们分配权重,通过加权平均捕获与图片实体相关的语义信息,从而获取图片实体在文本模态的特征表示。给出图片I对应的实体特征向量序列 以及句子S的单词特征向量序列 首先利用跨模态注意力机制获取单词和图片实体在其他模态的特征表示。
[0032] 3‑2.为了获取基于单词的图片实体特征表示,首先利用跨模态注意力机制计算图片中第i个实体与第j单词的关联程度Scoreij:
[0033]
[0034]
[0035] 其中,cos 表示图片中第i个实体的特征向量 与第j单词的特征能量的余弦相似度,值域为[0,1]。然后根据Scoreij计算第i个图片实体对第j单词的影响权重Aij为:
[0036]
[0037] 最后,通过加权平均的方式聚合基于第j个单词的图片实体特征表示因此,本发明用 表示整个句子在图片
模态的特征表示序列。
[0038] 3‑3.为了获得基于图片实体的单词特征表示,采用和获取向量 相同的计算过程,对于图片中第i个实体,根据第j个单词与当前图片实体的相关性,为第j个单词分配注意力权重:
[0039]
[0040]
[0041] 然后,通过加权平均捕获基于图片第i个实体的单词特征表示:
[0042]
[0043] 同样,图片中所有实体在文本模态的表示为:
[0044]
[0045] 3‑4.为了获取图片与句子的语义相似度,采用弱一致性的对齐方式,将图片和句子的相似度定义为图片中所有实体与其在文本模态中的特征表示序列的欧氏距离,以及每个句子与其在图片模态中的特征表示序列的欧氏距离之和。
[0046] 首先,计算每个句子与其在图片模态中的特征表示序列的欧氏距离:
[0047]
[0048] 然后图片中所有实体与其在文本模态中的特征表示序列的欧氏距离为:
[0049]
[0050] 因此,图片I和句子S的语义相似度定义为<I,S>=DT←I+DI←T。最后,为了获取语义相似度最高的图片句子对<I,S>,然后使用triplet loss优化图片句子匹配模块。对于‑每一对正确匹配的图片和句子,本发明额外抽取一个与句子S不匹配的图片I ,以及一个与‑ ‑ ‑
图片I不匹配的句子S ,构成两个否定对<I,S >和<I ,S>。最后图片句子匹配模块的损失函数定义为:
[0051] Lm=max(0,1+<I,S>‑<I,S‑>)+max(0,1+<I,S>‑<I‑,S>) (16)[0052] 进一步的,步骤4具体实现如下:
[0053] 4‑1.为了获取共享权重和偏置项的事件分类器,本发明将单词和图片动作在公共T空间的特征表示分别作为文本和图片事件分类器的输入,最后通过最小化目标函数L=L +I m
L+L ,对模型进行联合优化。使文本事件分类器SoftmaxT和图片事件分类器SoftmaxI能够共享权重矩阵和偏置项。从而,在测试阶段,利用共享事件分类器同时预测图片和句子描述的事件类型。
[0054] 进一步的,步骤5具体实现如下:
[0055] 5‑1.利用M2E2多模态标注数据对训练好的模型进行测试,对于包含k个句子S1,S2...,Sk‑1,Sk和l张图片I1,I2...,Il‑1,Il的文章,首先利用图片句子匹配模块找出语义相似I←T度最高的图片句子对<I,S>,同时获取基于图片实体的单词特征表示序列H 、以及基于T←I
单词的图片实体特征表示序列H 。
[0056] 5‑2.在特征融合时,对于单词wj,本发明认为 和 对触发词wj的事件类型预测贡献不同程度的特征信息。因此,本发明利用门控注意力机制为不同的特征信息分配权重,的权值 计算方式如下:
[0057]
[0058]
[0059] 其中, 表示第j个单词特征向量 与其在图片模态中的特征表示的余弦相似度,值域为[‑1,1]。然后,通过加权平均的方式融合与wj相关的图片特征信息,获取wj对应的多模态特征表示向量
[0060]
[0061] 其中, 的结果通常为0至1间的数值,控制着 对融合后的多模态特征的影响程度。当 较小时,融合后的特征保存更多的文本信息,而 较大时,说明图片特征对单词wj在事件分类过程中贡献更多的信息。
[0062] 最后将候选触发词wj对应的多模态特征 输入共享事件分类器,从而获取单词wj触发的事件类型arg
[0063] 5‑3.同样,对于图片I,利用另外一个门控注意力控制着单词特征对图片事件分类的影响。首先利用门控注意力机制为图片动作对应的原始特征 与其在文本模态的特征表示 分配权重 和 其中, 的计算方式为:
[0064]
[0065] 然后,通过加权平均融合第i个图片实体的原始特征 及其在文本模态中的特征表示 获取更新后的多模态特征向量 最后利用共享事件分类器对 进行分类,I获取图片描述动作所属的事件类型argmax(P(y|I))。
[0066] 本发明有益效果如下:
[0067] 针对现有技术的不足,提出了一种基于图片和句子的多模态联合事件检测方法,同时从图片和句子中识别事件。但是,由于缺少足够的多模态标注数据,本发明采用联合优化的方式,一方面利用现有的单模态数据集(imSitu图片数据集和KBP 2017英文数据集)分别学习图片和文本事件分类器,另一方面,利用已有的图片与标题对训练图片句子匹配模块,找出多模态文章中语义相似度最高的图片和句子,从而获取图片实体和单词在公共空间的特征表示。这些特征有助于图片和文本事件分类器之间共享参数,得到共享事件分类2 2
器。最后,利用少量的多模态标注数据(ME多模态数据集)对模型进行测试,利用共享事件分类器分别获取图片和句子描述的事件及其类型。本发明从图片和句子中识别事件,利用视觉特征和文本特征的互补性,不仅提高了单模态事件分类的性能,而且可以发现文章中更完整的事件信息。