一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

多模态关联构建模型的训练方法和多模态数据检索方法

2022-11-30 15:11:11 来源:中国专利 TAG:


1.本技术涉及数据检索领域,更具体地说,涉及多模态关联构建模型的训练方法和多模态数据检索方法。


背景技术:

2.随着数据库信息的日益庞大以及多元化发展,数据库中包含的数据信息逐步呈现多模态的趋势,其中往往包含如照片等图像模态数据,论文期刊等文字内容数据等,因此对不同模态数据进行归类和整理的需求也在不断增加。
3.由于传统单模态检索由于只能在相同模态的内容间进行检索(如:文本检索文本),检索出的数据信息限制于与检索的内容模态一致的特性,即使数据库中存在与检索的内容更相似符合,语义一致性更高的其他模态数据信息,也无法通过传统单模态检索得到,因此传统单模态检索已经无法适应于此类包含多模态数据库,满足日益增加的多模态检索需求。
4.跨模态检索作为一种强大而有效的内容检索方式,它允许用户输入某一模态的数据作为检索内容并输出其他模态数据作为检索结果。近来,深度学习方法在跨模态检索领域取得了显著效果,主流的跨模态检索方法主要依赖成对跨模态样本的语义一致性,将同一语义、不同模态的数据统一映射入一个公共特征空间便于距离度量。然而,在实际应用中,多模态数据间存在纷繁复杂的联系,只利用成对关系会使模型很难捕捉到每个样本的准确涵义,提取到的特征也存在较大局限性,继而限制了跨模态检索的准确度。


技术实现要素:

5.有鉴于此,本技术提供了多模态关联构建模型的训练方法和多模态数据检索方法,以通过对不同模态下数据特征进行聚类处理从而得到的聚类损失函数值,以及将每一数据中心特征节点与邻居特征节点间特征融合得到成对损失函数值,从而训练得到能够生成融合多模态间数据特征的多模态数据训练关联图的多模态关联构建模型,并可通过多模态数据训练关联图得到多模态数据间的检索结果,相较于现有技术,本技术在进行跨模态检索时的检索结果准确度更高。
6.一种多模态关联构建模型的训练方法,包括:
7.获取训练样本数据库,所述训练样本数据库中包含若干多模态训练数据集,其中每一所述多模态训练数据集中包含至少两种不同模态的训练数据,各种所述训练数据的内容标签相同;
8.对于每一所述多模态训练数据集,分别提取其中每一模态的训练数据的数据特征,并利用k近邻算法构建所述每一模态的训练子图,所述每一模态的训练子图包含中心特征节点、邻居特征节点及特征节点间的关联关系,所述中心特征节点为表征每一模态的训练数据的数据特征的特征节点,所述邻居特征节点为表征所述训练样本数据库中与所述每一模态的训练数据的模态相同,且数据特征满足k近邻条件的各训练数据的特征节点;
9.基于每一所述多模态训练数据集中每一模态的训练子图,利用相似性传播生成多模态数据训练关联图,其中所述多模态数据训练关联图上每一特征节点的关联特征节点为以所述每一特征节点作为中心特征节点时的各个邻居特征节点,与所述每一特征节点对应的训练数据属于同一多模态训练数据集的各个模态的训练数据的特征节点,以及分别以与所述每一特征节点对应的训练数据属于同一多模态训练数据集的各个模态的训练数据作为中心特征节点时的各个邻居特征节点;
10.分别对所述多模态数据训练关联图中各个模态的特征节点对应的训练数据的数据特征进行维度标准化处理和聚类处理,得到各个不同模态的聚类训练图;
11.基于所述各个不同模态的聚类训练图中各个聚类集中的特征节点对应的特征向量以及对应的内容标签,确定聚类损失函数值;
12.对于每一所述多模态训练数据集中每一模态的训练数据的数据特征,从所述多模态数据训练关联图中与每一模态的训练数据对应的每一关联特征节点提取补充特征信息,对所述每一模态的训练数据的数据特征进行融合补充,得到每一模态的训练数据的综合训练特征,所述补充特征信息为从所述多模态数据训练关联图中与每一模态的训练数据对应的每一关联特征节点提取到的,对所述每一模态的训练数据的数据特征进行特征补充的信息,所述综合训练特征的内容标签与对应的所述每一模态的训练数据的内容标签一致;
13.基于所述每一所述多模态训练数据集中每一模态的综合训练特征,确定成对损失函数值;
14.基于所述聚类损失函数值和所述成对损失函数值,生成综合损失函数值;
15.以所述综合损失函数值满足预设条件为目标,更新所述多模态关联构建模型中的参数。
16.优选的,在对于每一所述多模态训练数据集中每一模态的中心特征节点,从所述多模态数据训练关联图中对应的每一关联特征节点提取补充特征信息,对所述中心特征节点的数据特征进行融合补充,得到每一模态的综合训练特征之后,还包括:
17.将所述每一模态的综合训练特征输入标签识别模型中,得到标签识别模型输出的预测标签;
18.基于所述每一所述多模态训练数据集中每一模态的综合训练特征的所述预测标签以及对应的内容标签,确定标签损失函数值;
19.生成综合损失函数值的过程,包括:
20.基于所述聚类损失函数值、所述成对损失函数值和所述标签损失函数值,生成综合损失函数值。
21.优选的,所述聚类损失函数值的计算公式为:
[0022][0023][0024]
其中,为聚类损失函数值,为训练数据的数据特征,为*模态中的第i个训练数据,v指代图像模态,t指代文本模态,n为多模态数据训练关联图中各个模态的特
征节点的数量,i
ij
为指示函数,当同一种模态下第i个特征节点和第j个特征节点的内容标签相同时i
ij
=1,否则为i
ij
=0。
[0025]
优选的,所述成对损失函数值的计算公式为:
[0026][0027]
其中,为成对损失函数值,n为多模态数据训练关联图中各个模态的特征节点的数量,为*模态中的第i个特征节点的综合训练特征,v指代图像模态,t指代文本模态。
[0028]
优选的,所述标签损失函数值的计算公式为:
[0029][0030]
其中,为标签损失函数值,n为多模态数据训练关联图中各个模态的特征节点的数量,yi为训练样本数据库中第i个多模态训练数据集的训练数据对应的内容标签,为将输入标签识别模型得到的预测标签,为*模态中的第i个特征节点的综合训练特征。
[0031]
优选的,所述基于所述聚类损失函数值、所述成对损失函数值和所述标签损失函数值,生成综合损失函数值的计算公式为:
[0032][0033]
其中,为综合损失函数值,为聚类损失函数值,为成对损失函数值,为标签损失函数值,α、β和γ为用于平衡各个损失函数的超参数。
[0034]
优选的,从所述多模态数据训练关联图中与每一模态的训练数据对应的每一关联特征节点提取补充特征信息,对所述每一模态的训练数据的数据特征进行融合补充,得到每一模态的训练数据的综合训练特征,包括:
[0035]
计算所述每一模态的训练数据的query向量,以及与每一模态的训练数据对应的每一关联特征节点的key向量和value向量;
[0036]
基于所述每一模态的训练数据的query向量、所述与每一模态的训练数据对应的每一关联特征节点的key向量和value向量,通过计算共注意力矩阵从所述与每一模态的训练数据对应的每一关联特征节点提取对所述每一模态的训练数据的补充特征信息;
[0037]
利用门融合网络,将每一所述补充特征信息与所述每一模态的训练数据的数据特征进行融合补充,生成每一模态的综合训练特征。
[0038]
优选的,所述基于所述每一模态的训练数据的query向量、所述与每一模态的训练数据对应的每一关联特征节点的key向量和value向量,通过计算共注意力矩阵从所述与每一模态的训练数据对应的每一关联特征节点提取对所述每一模态的训练数据的补充特征
信息的计算公式,包括:
[0039]
其中,
[0040]
为数据特征为的*模态的关联特征节点的共注意力矩阵,为从数据特征为的关联特征节点提取到的补充特征信息,softmax(
·
)为激活函数,为数据特征为的*模态的训练数据的query向量,和分别为数据特征为的关联特征节点的key向量和value向量,d为维度标准化处理后各模态数据特征的共同维度。
[0041]
优选的,所述利用门融合网络,将每一所述补充特征信息与所述每一模态的训练数据的数据特征进行融合补充,生成每一模态的综合训练特征,包括:
[0042]
利用门融合网络的融合网络层,通过直接相加的方式对每一所述补充特征信息进行融合,得到综合补充特征信息;
[0043]
利用门融合网络的门网络层,平衡所述所述每一模态的训练数据的数据特征和所述综合补充特征信息的比重,生成每一模态的综合训练特征。
[0044]
一种多模态数据检索方法,基于上述多模态关联构建模型的训练方法任一项所训练的多模态关联构建模型,包括:
[0045]
确定待检索数据和待检索数据库,所述待检索数据为所述待检索数据库中包含的数据,所述待检索数据库以多模态数据集的形式对数据进行存储,其中每一所述多模态数据集中包含至少两种不同模态但表征内容相同的数据;
[0046]
将所述待检索数据库中的所有数据输入到所述多模态关联构建模型中,利用所述多模态关联构建模型生成与所述待检索数据库中每一数据对应的综合数据特征,所述综合数据特征通过从所述每一数据对应的每一关联特征节点提取补充特征信息,对所述每一数据的数据特征进行融合补充得到;
[0047]
将所述待检索数据库中对应的综合数据特征与所述待检索数据的综合数据特征的特征差异符合预设范围的各个目标数据作为所述待检索数据在所述待检索数据库中的检索结果。
[0048]
从上述的技术方案可以看出,本技术实施例提供的多模态关联构建模型的训练方法,通过对获取的训练样本数据库的每一所述多模态训练数据集,分别提取其中每一模态的训练数据的数据特征,并利用k近邻算法构建所述每一模态的训练子图,利用相似性传播生成多模态数据训练关联图。基于所述多模态数据训练关联图进行维度标准化处理和聚类处理,确定聚类损失函数值;从所述多模态数据训练关联图中与每一模态的训练数据对应的每一关联特征节点提取补充特征信息,对所述每一模态的训练数据的数据特征进行融合补充,得到每一模态的训练数据的综合训练特征,确定成对损失函数值;其中聚类损失函数
用于提升多模态关联构建模型的聚类效果,使模态内相同内容标签的节点在特征空间中互相接近,不同内容标签节点互相远离。成对损失函数能够提升不同模态间数据的融合效果,使得相同内容标签的不同模态数据的综合训练特征尽可能一致。最后以所述聚类损失函数值和所述成对损失函数值生成的综合损失函数值满足预设条件为目标,更新所述多模态关联构建模型中的参数。
[0049]
本技术利用聚类损失函数和成对损失函数对多模态关联构建模型训练,多模态关联构建模型能够确定数据待检索数据库中每一数据的关联特征节点,并融合关联特征节点是数据特征,生成更准确体现每一数据的综合数据特征。本技术实施例提供的多模态数据检索方法,通过多模态关联构建模型构建多模态数据关联图,并生成待检索数据库中每一数据的综合数据特征,基于待检索数据的综合数据特征与待检索数据库中每一数据的综合数据特征的特征差异,确定待检索数据的检索结果。由于多模态关联构建模型能够融合不同模态间的数据特征,实现多模态数据间的特征补充,因此相较于现有技术,本技术在进行跨模态检索时的检索结果准确度更高。
附图说明
[0050]
为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0051]
图1为本技术公开的一种多模态关联构建模型的训练方法流程图;
[0052]
图2为本技术公开的一种多模态训练数据集内训练数据进行相似性传播的示意图;
[0053]
图3为本技术公开的一种多模态关联构建模型中维度标准化的设置方式的示意图;
[0054]
图4为本技术公开的一种图像模态数据进行聚类处理的示意图;
[0055]
图5为本技术公开的又一种多模态关联构建模型的训练方法流程图;
[0056]
图6为本技术公开的生成补充特征信息的示意图;
[0057]
图7为门融合网络对数据特征进行融合补充的示意图;
[0058]
图8为本技术公开的一种多模态关联构建模型的训练方法的实例示意图;
[0059]
图9为本技术公开的一种多模态数据检索方法流程图;
[0060]
图10为本技术公开的一种多模态数据关联图的示意图。
具体实施方式
[0061]
下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
[0062]
接下来介绍本技术方案,本技术提出如下技术方案,具体参见下文。
[0063]
图1为本技术实施例公开的一种多模态关联构建模型的训练方法流程图,该多模
态关联构建模型的训练方法可应用于多模态关联构建模型的训练装置,如图1所示,该方法可以包括:
[0064]
步骤a1、获取训练样本数据库。
[0065]
具体的,所述训练样本数据库中包含若干多模态训练数据集,其中每一所述多模态训练数据集中包含至少两种不同模态的训练数据,各种所述训练数据的内容标签相同。
[0066]
示例如,训练样本数据库中可能包含有600个多模态训练数据集,而其中的每一个多模态训练数据集中都包含至少两种不同模态的训练数据,且在同一个多模态训练数据集中的各种训练数据的内容标签相同,也就是说,同一个多模态训练数据集表征的含义相同。如某一个多模态训练数据集中包含一张鱼的照片和一段对鱼的文字描述,这个多模态训练数据集中两个训练数据的内容标签都是“鱼”,且鱼的照片为图像模态的训练数据,鱼的文字描述为文本模态的训练数据。
[0067]
本技术不限制一个多模态训练数据集中的训练数据的个数,也不限制其中每一种模态的训练数据的个数,但是至少要有两种不同的模态,也就是说,一个多模态训练数据集中可以存在包含2个文本模态的训练数据、1个图像模态的训练数据、1个视频模态的训练数据的情况。
[0068]
训练样本数据库中的每一个多模态训练数据集中的数据都通过人为打上内容标签,记录其中各个训练数据表征的含义。为使得多模态关联构建模型更为可靠,训练样本数据库中各个多模态训练数据集的设置,以及内容标签的设置最好通过人工分类设置的方式实现。
[0069]
步骤a2、对于每一所述多模态训练数据集,分别提取其中每一模态的训练数据的数据特征,并利用k近邻算法构建所述每一模态的训练子图。
[0070]
具体的,所述每一模态的训练子图包含中心特征节点、邻居特征节点及特征节点间的关联关系,所述中心特征节点为表征每一模态的训练数据的数据特征的特征节点,所述邻居特征节点为表征所述训练样本数据库中与所述每一模态的训练数据的模态相同,且数据特征满足k近邻条件的各训练数据的特征节点。
[0071]
对于训练样本数据库中的每一所述多模态训练数据集,可以用如vgg-19和sentence cnn提取其中每一模态的训练数据的数据特征,训练样本数据库中有多少个训练数据,将会对应生成提取到多少个数据特征,并通过特征节点表示这样数据特征,也就是说,一个节点对应一个数据特征,再对应一个训练数据,这三者是唯一对应的。
[0072]
对于每个训练数据,我们依次计算该训练数据的数据特征,并作为中心特征节点,计算中心特征节点对应的数据特征和其他同模态的训练数据的数据特征的余弦距离并取前k个距离最近的训练数据的特征节点作为其邻居特征节点,且构成特征节点间的关联关系,由邻居特征节点指向中心特征节点。
[0073]
如图2所示,其中虚线代表训练子图中构建的特征节点间的关联关系,多模态训练数据集中包含的两个训练数据,分别为图像模态和文本模态,对于图像模态的训练数据,提取其特征向量,作为中心特征节点1,计算中心特征节点1的特征向量与训练样本数据库中的其他同样为图像模态的训练数据的数据特征的余弦距离,并将满足k近邻条件的各图像模态的训练数据的特征节点作为邻居特征节点,图示存在5个满足k近邻条件的图像模态的训练数据,这5个图像模态的训练数据的特征节点分别为v1到v5,并构建特征节点间的关联
关系,由邻居特征节点v1至v5逐一指向中心特征节点1,此时构成了中心特征节点1对应的该图像模态的训练数据的训练子图。同样对多模态训练数据集中的文本模态的训练数据进行处理,提取其特征向量,作为中心特征节点2,计算中心特征节点2的特征向量与训练样本数据库中的其他同样为文本模态的训练数据的数据特征的余弦距离,并将满足k近邻条件的各文本模态的训练数据的特征节点作为邻居特征节点,图示存在6个满足k近邻条件的文本模态的训练数据,这6个文本模态的训练数据的特征节点分别为t1到t6,并构建特征节点间的关联关系,由邻居特征节点t1至t6逐一指向中心特征节点2,此时构成了中心特征节点2对应的该文本模态的训练数据的训练子图。
[0074]
步骤a3、基于每一所述多模态训练数据集中每一模态的训练子图,利用相似性传播生成多模态数据训练关联图。
[0075]
具体的,所述多模态数据训练关联图上每一特征节点的关联特征节点为以所述每一特征节点作为中心特征节点时的各个邻居特征节点,与所述每一特征节点对应的训练数据属于同一多模态训练数据集的各个模态的训练数据的特征节点,以及分别以与所述每一特征节点对应的训练数据属于同一多模态训练数据集的各个模态的训练数据作为中心特征节点时的各个邻居特征节点。
[0076]
在得到每一所述多模态训练数据集中每一模态的训练子图后,我们根据每一所述多模态训练数据集中每一模态的训练子图,构建多模态数据训练关联图。由于每一所述多模态训练数据集中不同模态的数据具有相同的语义信息,也就是表征相同的内容,因此我们将其作为连接训练子图的桥梁,即:对于每一多模态训练数据集中训练数据,可采用特征节点间的双向连接。
[0077]
如图2所示,对于图2中的中心特征节点1和中心特征节点2,其对应的训练数据是在同样多模态训练数据集中的,表征相同的内容,因此可采用相似性传播,将中心特征节点1和中心特征节点2之间相互连接,同时将中心特征节点1的邻居特征节点指向中心特征节点2,将中心特征节点2的邻居特征节点指向中心特征节点1。
[0078]
在图2中,中心特征节点1的关联特征节点包括中心特征节点1的各个邻居特征节点,分别为邻居特征节点v1至邻居特征节点v5,与中心特征节点1对应的训练数据属于同一多模态训练数据集的各个模态的训练数据的特征节点,即中心特征节点2,以及以与中心特征节点2作为中心特征节点时的各个邻居特征节点,分别为邻居特征节点t1至邻居特征节点t6。中心特征节点2的关联特征节点包括中心特征节点2的各个邻居特征节点,分别为邻居特征节点t1至邻居特征节点t6,与中心特征节点2对应的训练数据属于同一多模态训练数据集的各个模态的训练数据的特征节点,即中心特征节点1,以及以与中心特征节点1作为中心特征节点时的各个邻居特征节点,分别为邻居特征节点v1至邻居特征节点v5。
[0079]
对每一多模态训练数据集都采用相似性传播的方式,最后结合每一最终相似性传播后的每一所述多模态训练数据集的关联图,得到一个包含训练样本数据库中每一数据间关联关系的多模态数据训练关联图。
[0080]
步骤a4、分别对所述多模态数据训练关联图中各个模态的特征节点对应的训练数据的数据特征进行维度标准化处理和聚类处理,得到各个不同模态的聚类训练图。
[0081]
具体的,由于不同模态的数据特征的维度差异较大,如图像数据的数据特征可以为4096维特征向量,文本数据的数据特征可以为300维特征向量,不便于进行后续的聚类、
融合等操作,因此在进行需要对数据特征进行维度标准化处理,使得不同模态的训练数据的数据特征保持在同一维度上。维度标准化处理的方式可以是通过对高维度的模态的训练数据特征进行降维处理,使得其与低维度的模态的训练数据的数据特征的维度一致,还可以是通过对低维度的模态的训练数据特征进行升维处理,使得其与高维度的模态的训练数据的数据特征的维度一致。
[0082]
经过大量实验后,发现另一种效果较优的维度标准化处理方式为预设一个在高维度和低维度之间的中间维度,分别对高维度的模态的训练数据特征进行降维处理,以及对低维度的模态的训练数据特征进行升维处理,使得高维度和低维度的模态的训练数据的数据特征的均处于中间维度而保持维度一致。
[0083]
在实际设置上,可以通过设置可学习参数的全连接层对特征向量进行维度变换,例如图3中通过设置两个可学习参数的全连接层,分别对图像数据的数据特征和文本数据的数据特征进行维度标准化处理。其中,对于文本数据可通过对全连接层进行升维处理,对于图像数据可通过对全连接层进行降维处理,使文本数据和图像数据均变换为预设的中间维度数据。
[0084]
在维度标准化处理完成后,对多模态数据训练关联图中各个模态的特征节点对应的训练数据的数据特征进行聚类处理,得到各个不同模态的聚类训练图。如图4所示,在某一训练样本数据库中存在图像模态的训练数据30个,那么对应生成的多模态数据训练关联图中存在30个图像模态的特征节点。对于这30个特征节点的进行聚类处理后,形成了4个聚类。
[0085]
可以理解的是,同一模态内表征相同内容即存在相同内容标签的特征节点在特征空间中应该更为接近,表征不同内容即存在不同内容标签的特征节点在特征空间中应该互相远离。因此对于图4中形成的4个聚类,每个聚类中的特征节点的内容标签应该一致,或表征的内容接近,而不同的聚类中的特征节点的内容标签应该不同,或表征的内容毫无关联。为使得同一模态内相同内容标签的特征节点互相接近,不同内容标签的特征节点互相远离,本技术设置了聚类损失函数提升聚类效果。
[0086]
步骤a5、基于所述各个不同模态的聚类训练图中各个聚类集中的特征节点对应的特征向量以及对应的内容标签,确定聚类损失函数值。
[0087]
具体的,由于训练样本数据库中每一训练数据都带有表征其内容的内容标签,因此,可根据各模态的聚类训练图中,每个聚类集中的各特征节点的内容标签来确定每一模态的子聚类损失值,聚类损失函数值为每一模态对应的子聚类损失函数值的和。每一子聚类损失值为:
[0088][0089]
其中,其中,为训练数据的数据特征,为*模态中的第i个训练数据,n为多模态数据训练关联图中各个模态的特征节点的数量,i
ij
为指示函数,当同一种模态下第i个特征节点和第j个特征节点的内容标签相同时i
ij
=1,否则为i
ij
=0。
[0090]
可以理解的是,对于任一个模态的聚类训练图,若内容标签不一致却属于同一聚
类集中的特征节点的数量越多,那么该聚类训练图的聚类效果越差,聚类损失函数越大。如:
[0091]
情况一:第一聚类:鱼、鱼、鱼;第二聚类:花、花、鸟;第三聚类:鸟、鸟、花。
[0092]
情况二:第一聚类:鱼、鱼、鱼;第二聚类:花、花、花;第三聚类:鸟、鸟、鸟。
[0093]
其中,情况一的聚类损失函数应当大于情况二。
[0094]
步骤a6、对于每一所述多模态训练数据集中每一模态的训练数据的数据特征,从所述多模态数据训练关联图中与每一模态的训练数据对应的每一关联特征节点提取补充特征信息,对所述每一模态的训练数据的数据特征进行融合补充,得到每一模态的训练数据的综合训练特征。
[0095]
具体的,所述补充特征信息为从所述多模态数据训练关联图中与每一模态的训练数据对应的每一关联特征节点提取到的,对所述每一模态的训练数据的数据特征进行特征补充的信息,所述综合训练特征的内容标签与对应的所述每一模态的训练数据的内容标签一致。
[0096]
可以理解的是,利用单一训练数据提取到的数据特征往往不能充分体现该内容标签下的数据的全部特征,因此需要利用关联特征节点对每一模态的训练数据的数据特征进行特征补充,使得到的综合训练特征能够尽可能充分的体现对应的内容标签下的数据的全部特征。
[0097]
示例如,对于图2中的中心特征节点1,需要从中心特征节点1的关联特征节点,也就是邻居特征节点v1至邻居特征节点v5,中心特征节点2,以及邻居特征节点t1至邻居特征节点t6,共12个关联特征节点中,分别提取对中心特征节点1进行特征补充的补充特征信息,将补充特征信息与中心特征节点v1的数据特征进行融合,得到图像模态的综合训练特征。
[0098]
步骤a7、基于所述每一所述多模态训练数据集中每一模态的综合训练特征,确定成对损失函数值。
[0099]
具体的,由于每一多模态训练数据集中的训练数据的内容标签一致,也就是说在同一多模态训练数据集中的训练数据所表征的内容是一致的,且每一模态的综合训练特征都为融合了各个模态下的各个关联特征节点的补充特征信息得到的特征,应能够尽量体现该内容标签下的数据的全部特征,其中每一模态形成的综合训练特征应该尽可能相同,在本技术中利用成对损失函数进行调整。通过计算每一多模态训练集中,不同模态的综合训练特征之间差距可以确定成对损失函数值。
[0100]
步骤a8、基于所述聚类损失函数值和所述成对损失函数值,生成综合损失函数值。
[0101]
步骤a9、以所述综合损失函数值满足预设条件为目标,更新所述多模态关联构建模型中的参数。
[0102]
具体的,在将训练样本数据库输入多模态关联构建模型后,多模态关联构建模型构建出与训练样本数据库对应的多模态数据训练关联图,之后基于多模态数据训练关联图进行多模态特征融合,并确定综合损失函数值,通过最小化综合函数值来对模型进行训练,若综合函数值不满足预设条件,则调整所述多模态关联构建模型的参数,并对多模态特征融合结果进行更新,再次计算更新后的综合损失函数值,直到综合损失函数值满足预设条件为止,此时多模态关联构建模型为训练完成的多模态关联构建模型。
[0103]
从上述的技术方案可以看出,本技术实施例提供的多模态关联构建模型的训练方法,通过对获取的训练样本数据库的每一所述多模态训练数据集,分别提取其中每一模态的训练数据的数据特征,并利用k近邻算法构建所述每一模态的训练子图,利用相似性传播生成多模态数据训练关联图。基于所述多模态数据训练关联图进行维度标准化处理和聚类处理,确定聚类损失函数值;从所述多模态数据训练关联图中与每一模态的训练数据对应的每一关联特征节点提取补充特征信息,对所述每一模态的训练数据的数据特征进行融合补充,得到每一模态的训练数据的综合训练特征,确定成对损失函数值;其中聚类损失函数用于提升多模态关联构建模型的聚类效果,使模态内相同内容标签的节点在特征空间中互相接近,不同内容标签节点互相远离。成对损失函数能够提升不同模态间数据的融合效果,使得相同内容标签的不同模态数据的综合训练特征尽可能一致。最后以所述聚类损失函数值和所述成对损失函数值生成的综合损失函数值满足预设条件为目标,更新所述多模态关联构建模型中的参数。
[0104]
本技术利用聚类损失函数和成对损失函数对多模态关联构建模型训练,多模态关联构建模型能够确定数据待检索数据库中每一数据的关联特征节点,并融合关联特征节点是数据特征,生成更准确体现每一数据的综合数据特征。本技术实施例提供的多模态数据检索方法,通过多模态关联构建模型构建多模态数据关联图,并生成待检索数据库中每一数据的综合数据特征,基于待检索数据的综合数据特征与待检索数据库中每一数据的综合数据特征的特征差异,确定待检索数据的检索结果。由于多模态关联构建模型能够融合不同模态间的数据特征,实现多模态数据间的特征补充,因此相较于现有技术,本技术在进行跨模态检索时的检索结果准确度更高。
[0105]
图5为本技术实施例公开的又一种多模态关联构建模型的训练方法流程图,如图5所示,该方法可以包括:
[0106]
步骤b1、获取训练样本数据库,所述训练样本数据库中包含若干多模态训练数据集,其中每一所述多模态训练数据集中包含至少两种不同模态的训练数据,各种所述训练数据的内容标签相同。
[0107]
步骤b2、对于每一所述多模态训练数据集,分别提取其中每一模态的训练数据的数据特征并利用k近邻算法构建所述每一模态的训练子图,所述每一模态的训练子图包含中心特征节点、邻居特征节点及特征节点间的关联关系,所述中心特征节点为表征每一模态的训练数据的数据特征的特征节点,所述邻居特征节点为表征所述训练样本数据库中与所述每一模态的训练数据的模态相同,且数据特征满足k近邻条件的各训练数据的特征节点。
[0108]
步骤b3、基于每一所述多模态训练数据集中每一模态的训练子图,利用相似性传播生成多模态数据训练关联图。
[0109]
步骤b4、分别对所述多模态数据训练关联图中各个模态的特征节点对应的训练数据的数据特征进行维度标准化处理和聚类处理,得到各个不同模态的聚类训练图。
[0110]
步骤b5、基于所述各个不同模态的聚类训练图中各个聚类集中的特征节点对应的特征向量以及对应的内容标签,确定聚类损失函数值。
[0111]
步骤b6、对于每一所述多模态训练数据集中每一模态的训练数据的数据特征,从所述多模态数据训练关联图中与每一模态的训练数据对应的每一关联特征节点提取补充
特征信息,对所述每一模态的训练数据的数据特征进行融合补充,得到每一模态的训练数据的综合训练特征。
[0112]
步骤b7、将所述每一模态的综合训练特征输入标签识别模型中,得到标签识别模型输出的预测标签。
[0113]
步骤b8、基于所述每一所述多模态训练数据集中每一模态的综合训练特征的所述预测标签以及对应的内容标签,确定标签损失函数值。
[0114]
步骤b9、基于所述每一所述多模态训练数据集中每一模态的综合训练特征,确定成对损失函数值。
[0115]
步骤b10、基于所述聚类损失函数值、所述成对损失函数值和所述标签损失函数值,生成综合损失函数值。
[0116]
步骤b11、以所述综合损失函数值满足预设条件为目标,更新所述多模态关联构建模型中的参数。
[0117]
上述步骤b1至b6分别与实施例中步骤a1至a6相同,步骤b9与实施例中步骤a7相同,步骤b11与实施例中步骤a9相同,本处不再重复进行赘述。
[0118]
相较于上一实施例,本实施例增设了确定标签损失函数值的过程,并在后续基于所述聚类损失函数值、所述成对损失函数值和所述标签损失函数值,生成综合损失函数值,具体包括:
[0119]
在步骤b6、对于每一所述多模态训练数据集中每一模态的训练数据的数据特征,从所述多模态数据训练关联图中与每一模态的训练数据对应的每一关联特征节点提取补充特征信息,对所述每一模态的训练数据的数据特征进行融合补充,得到每一模态的训练数据的综合训练特征之后,还包括:
[0120]
步骤b7、将所述每一模态的综合训练特征输入标签识别模型中,得到标签识别模型输出的预测标签;
[0121]
步骤b8、基于所述每一所述多模态训练数据集中每一模态的综合训练特征的所述预测标签以及对应的内容标签,确定标签损失函数值;
[0122]
生成综合损失函数值的过程,包括:
[0123]
步骤b10、基于所述聚类损失函数值、所述成对损失函数值和所述标签损失函数值,生成综合损失函数值。
[0124]
具体的,本实施例增设了识别数据表征含义的功能,即确定数据的内容标签的功能。在本实施例中,增设了将所述每一模态的综合训练特征输入标签识别模型中,得到标签识别模型输出的预测标签的过程,然后通过所述每一所述多模态训练数据集中每一模态的综合训练特征的所述预测标签以及对应的内容标签,确定标签损失函数值,利用标签损失函数训练多模态关联构建模型对基于数据特征进行标签识别的能力。
[0125]
在训练过程中,基于所述聚类损失函数值、所述成对损失函数值和所述标签损失函数值,生成综合损失函数值,并以所述综合损失函数值满足预设条件为目标,更新所述多模态关联构建模型中的参数。
[0126]
进一步的,所述基于所述聚类损失函数值、所述成对损失函数值和所述标签损失函数值,生成综合损失函数值的计算公式为:
[0127]
[0128]
其中,为综合损失函数值,为聚类损失函数值,为成对损失函数值,为标签损失函数值,α、β和γ为用于平衡各个损失函数的超参数。
[0129]
其中,设置超参数目的为对各损失函数的权重进行平衡使得模型可以达到最好的训练效果。超参数值的确定主要基于实验,通过将每个超参数分别设为[0.2,0.4,0.6,0.8,1]在验证集上进行实验,取实验效果最好的一组参数作为超参数。
[0130]
在本技术的一些实施例中,对步骤a6中从所述多模态数据训练关联图中与每一模态的训练数据对应的每一关联特征节点提取补充特征信息,对所述每一模态的训练数据的数据特征进行融合补充,得到每一模态的训练数据的综合训练特征的过程进行介绍,具体可以包括:
[0131]
对于每一所述多模态训练数据集中每一模态的训练数据的综合训练特征,均可以通过下面的方式生成:
[0132]
步骤a61、计算所述每一模态的训练数据的query向量,以及与每一模态的训练数据对应的每一关联特征节点的key向量和value向量。
[0133]
步骤a62、基于所述每一模态的训练数据的query向量、所述与每一模态的训练数据对应的每一关联特征节点的key向量和value向量,通过计算共注意力矩阵从所述与每一模态的训练数据对应的每一关联特征节点提取对所述每一模态的训练数据的补充特征信息。
[0134]
步骤a63、利用门融合网络,将每一所述补充特征信息与所述每一模态的训练数据的数据特征进行融合补充,生成每一模态的综合训练特征。
[0135]
具体的,门融合网络可以包括融合网络层和门网络层:
[0136]

利用门融合网络的融合网络层,通过直接相加的方式对每一所述补充特征信息进行融合,得到综合补充特征信息;
[0137]

利用门融合网络的门网络层,平衡所述所述每一模态的训练数据的数据特征和所述综合补充特征信息的比重,生成每一模态的综合训练特征。
[0138]
如图6和图7所示,图6为从每一关联特征节点提取对所述每一模态的训练数据的补充特征信息的过程的示意图,图6中对于数据特征为的特征节点,存在k个关联特征节点,分别为数据特征为至的特征节点,计算得到与数据特征为的特征节点对应的query向量,以及数据特征为至的特征节点的key向量和value向量,通过计算共注意力矩阵提取对数据特征为的特征节点的补充特征信息,分别为info至info
[0139]
图7为门融合网络对数据特征进行融合补充的示意图,首先通过直接相加的方式对每一所述补充特征信息进行融合,得到综合补充特征信息,即对补充特征信息info至info进行融合,之后将数据特征与综合补充特征信息进行融合,得到综合训练特征。
[0140]
下面结合图8,以一个实例为对本技术进行说明:
[0141]
训练样本数据库中包含有n个多模态训练数据集,每个多模态训练数据集中包含有一个图像数据和一个文本数据。
[0142]
以其中一个内容标签为鸟的多模态训练数据集为例,其中包含鸟的图片和鸟的文
字描述,可以使用vgg-19模型提取多模态训练数据集中图像数据的4096维特征向量,以及可以使用文本卷积模型提取每一多模态训练数据集中文本数据的300维特征向量,并利用k近邻算法构建鸟的图片的训练子图,以及鸟的文字描述的训练子图。
[0143]
对与本示例中的鸟的图片和鸟的文字描述这一对数据假设鸟的图片对应的特征节点具有k个图像模态内的邻居特征节点,相似性传播会将鸟的图片的全部邻居特征节点,以及鸟的文字描述的全部邻居特征节点,以及鸟的文字描述的特征节点均作为鸟的图片的关联特征节点连接到鸟的图片对应的特征节点同样将鸟的图片的全部邻居特征节点,以及鸟的文字描述的全部邻居特征节点,以及鸟的图片描述的特征节点均作为鸟的文字描述的关联特征节点连接到鸟的文字描述的特征节点
[0144]
依次对训练样本数据库中的每一多模态训练数据集进行相同的处理,最后综合得到一个能够包含与训练样本数据库中每一训练数据对应的每一训练特征节点,以及训练特征节点间的关联关系的多模态数据训练关联图。
[0145]
在本示例中,训练样本数据库中包含有n个多模态训练数据集,且每个多模态训练数据集中仅包含有一个图像数据和一个文本数据,因此生成的多模态数据训练关联图中每一模态的特征节点的数量应该也为n。
[0146]
由于使用深度学习网络(如:vgg-19和文本卷积网络)提取的各个模态的数据特征存在噪声并且维度不同,为每个模态分别设置了一个模态特征生成器用于维度标准化处理和聚类处理。每个生成器由单层的全连接网络构成,激活函数为tanh函数。比如:输入某个*模态训练数据生成器g
*
输出的数据特征为其中d为维度标准化处理后各模态数据特征的共同维度。
[0147]
同时为使得同一模态内相同内容标签的特征节点互相接近,不同内容标签的特征节点互相远离,设置了聚类损失函数提升聚类效果。所述聚类损失函数值的计算公式为:
[0148][0149][0150]
其中,为聚类损失函数值,为训练数据的数据特征,为*模态中的第i个训练数据,v指代图像模态,t指代文本模态,n为多模态数据训练关联图中各个模态的特征节点的数量,i
ij
为指示函数,当同一种模态下第i个特征节点和第j个特征节点的内容标签相同时i
ij
=1,否则为i
ij
=0。
[0151]
得到维度标准化处理过的数据特征后,从多模态数据训练关联图中的鸟的图片的特征节点的关联特征节点提取对所述鸟的图片的特征节点进行特征补充的信息,同样从多模态数据训练关联图中的鸟的文字描述的特征节点的关联特征节点提取对所述鸟的文字
描述的特征节点进行特征补充的信息。具体为通过计算共注意力矩阵从所述每一邻居特征节点提取对所述中心特征节点的补充特征信息。可以理解的是,由于不同模态特征向量的分布空间是异构的,因此我们为每个模态分别设置了一组可学习参数,且每个模态的可学习参数不同(如:图像模态为文本模态为)。
[0152]
首先计算每一模态的训练数据的query向量和其关联特征节点的key向量和value向量:
[0153][0154][0155][0156]
共注意力矩阵为:
[0157][0158]
通过计算共注意力矩阵从所述与每一模态的训练数据对应的每一关联特征节点提取对所述每一模态的训练数据的补充特征信息计算公式为:
[0159][0160]
其中,为数据特征为的*模态的关联特征节点的共注意力矩阵,为从数据特征为的关联特征节点提取到的补充特征信息,softmax(
·
)为激活函数,为数据特征为的*模态的训练数据的query向量,和分别为数据特征为的关联特征节点的key向量和value向量,d为维度标准化处理后各模态数据特征的共同维度。
[0161]
利用门融合网络的融合网络层,基于融合共注意力机制确定的综合补充特征信息,具体为通过直接相加的方式对每一所述补充特征信息进行融合,并将融合后的信息送入单层全连接网络fc1(
·
)中,得到综合补充特征信息,其中激活函数为tanh函数。上述过程可以被表示为:
[0162][0163]
为了去除特征向量中的噪声信息,我们设置了一个门网络层,将和
[0164]
进行拼接并送入单层全连接网络fc2(
·
)中,输出得到一个门因子
[0165][0166]
其中,concatenate(
·
)为拼接操作,门因子用于平衡所述中心特征节点的数据特征和所述综合补充特征信息的比重。
[0167]
生成的每一模态的综合训练特征可表示为:
[0168][0169]
同时,通过设置成对损失函数和标签损失函数用于监督模型的学习。由于同一多模态训练数据集中的每个训练数据具有相同的语义信息,反映在特征空间中就是两个训练数据的数据特征分布距离相近。
[0170]
所述成对损失函数值的计算公式为:
[0171][0172]
其中,为成对损失函数值,n为多模态数据训练关联图中各个模态的特征节点的数量,为*模态中的第i个特征节点的综合训练特征,v指代图像模态,t指代文本模态。
[0173]
所述标签损失函数值的计算公式为:
[0174][0175]
其中,为标签损失函数值,n为多模态数据训练关联图中各个模态的特征节点的数量,yi为训练样本数据库中第i个多模态训练数据集的训练数据对应的内容标签,为将输入标签识别模型得到的预测标签,为*模态中的第i个特征节点的综合训练特征。
[0176]
图9为本技术实施例公开的一种多模态数据检索方法的流程图,该多模态数据检索方法基于基于上述实施例所训练的多模态关联构建模型,如图9所示,该方法可以包括:
[0177]
步骤c1、确定待检索数据和待检索数据库。
[0178]
具体的,所述待检索数据为所述待检索数据库中包含的数据,所述待检索数据库以多模态数据集的形式对数据进行存储,其中每一所述多模态数据集中包含至少两种不同模态但表征内容相同的数据。
[0179]
步骤c2、将所述待检索数据库中的所有数据输入到所述多模态关联构建模型中,利用所述多模态关联构建模型生成与所述待检索数据库中每一数据对应的综合数据特征。
[0180]
具体的,所述综合数据特征通过从所述每一数据对应的每一关联特征节点提取补充特征信息,对所述每一数据的数据特征进行融合补充得到。
[0181]
步骤c3、将所述待检索数据库中对应的综合数据特征与所述待检索数据的综合数据特征的特征差异符合预设范围的各个目标数据作为所述待检索数据在所述待检索数据库中的检索结果。
[0182]
具体的,如图10所示的多模态数据关联图,其中若待检索数据对应特征节点1,在多模态数据数据关联图中与特征节点1存在关联关系的关联特征节点有7个,分别为:特征节点2、特征节点3、特征节点4、特征节点5、特征节点6、特征节点7、特征节点8,从这7个关联特征节点提取补充特征信息,与特征节点1进行融合补充,得到待检索数据的综合数据特征,同样对其他特征节点进行处理,得到待检索数据库中每一数据对应的每一特征节点的综合数据特征,计算待检索数据的综合数据特征与待检索数据库中每一数据对应的每一特征节点的综合数据特征的特征差异,将其中特征差异符合预设范围的目标数据作为待检索数据在待检索数据库中的检索结果。
[0183]
本技术实施例提供的多模态数据检索方法,通过多模态关联构建模型构建多模态数据关联图,并生成待检索数据库中每一数据的综合数据特征,基于待检索数据的综合数据特征与待检索数据库中每一数据的综合数据特征的特征差异,确定待检索数据的检索结果。由于多模态关联构建模型能够融合不同模态间的数据特征,实现多模态数据间的特征补充,因此相较于现有技术,本技术在进行跨模态检索时的检索结果准确度更高。
[0184]
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0185]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
[0186]
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献