本发明涉及跨模态检索领域,具体涉及一种基于文本注意力的跨模态表征模型构建方法及检索方法。
背景技术:
1、跨模态检索任务(如图文检索,文本图像行人重识别)是指以一个模态的数据作为查询,检索另一个模态数据集合中感兴趣的目标。近些年来,下游的跨模态检索任务大多基于大规模视觉语言预训练(vlp)模型展开。如何更好地对齐跨模态特征表示、防止vlp模型在下游任务上过拟合成为该领域的主要研究目标。现今主流的方法在将vlp用在下游检索任务上时采用了掩码语言建模(mlm:masked language modeling)模块,该模块将文本的部分单词替换成统一的[mask]标志,利用文本和图像信息来共同预测原始单词,通过这种方式,被掩盖的单词相当于作为枢轴,从而更好地对齐文本上下文和图像之间相关语义,该方法在诸多下游任务上取得了不错的效果。
2、现有的多模态表征学习框架主要存在两个主要问题。首先,主流的方法使用mlm模块来进行跨模态表征对齐时均采用随机掩盖策略,这意味着一段文本描述中的每个单词都有同等的概率被选中进行掩盖,然而一些无实际意义的词如(‘with’,‘the’)等在图像和其文本上下文中并没有实际语义与之对应,因而,如果这些词被掩盖,mlm模块预测这些词的过程中对跨模态的语义特征对齐并没有任何帮助,甚至还会在一定程度上丧失vlp原本的强大表征能力。另外一方面,相较于vlp模型所用的训练数据集(以clip模型为例,其文本图像对数据规模为4亿),下游的跨模态检索数据集通常非常小(以文本图像行人重识别数据集cuhk-pedes为例,其规模只有8万左右),并且在规模本就不大的下游数据集中,还存在众多人为因素带来的文本描述不准确、用词单一等问题,在下游这种规模较小且存在很多噪声的下游数据集上训练很容易导致vlp模型过拟合。
技术实现思路
1、本发明的目的在于提供一种基于文本注意力的跨模态表征模型构建方法及检索方法,以解决vlp模型在下游较小的数据集上丧失强大的表征能力以及数据集中文本描述用词单一且存在错误等问题,提高检索准确率。
2、为实现上述目的,本发明采用的技术方案是:
3、一种基于文本注意力的跨模态表征模型构建方法,所述方法采用的跨模态表征模型框架由具有相同模型架构的在线模型和动量模型组成,动量模型是在线模型的平滑稳定版本;在线模型和动量模型的架构均包括图像编码器、文本编码器、跨模态编码器;所述在线模型则运用了图像文本对比学习模块、图像文本匹配学习模块、掩码语言建模模块,并增加了注意力引导的掩码建模模块和文本增强模块来进行训练;
4、具体地,所述方法通过在线模型参数的指数移动平均更新动量模型,然后使用动量模型编码的特征作为伪标签来指导在线模型进行更好地表征学习;其中,在线模型的学习训练过程步骤如下:
5、步骤1、对于给定数据集中的图像文本对,将图像和文本分别输入到图像编码器和文本编码器中,获得图像编码特征、文本编码特征和文本编码过程中的注意力权重,其中,和分别是图像块和文本单词的数量,和作为全局特征表示;
6、步骤2、图像文本对比学习模块根据图像编码特征和文本编码特征计算图像文本的对比学习损失,即itc损失;
7、步骤3、将文本和步骤1得到的文本编码过程中的注意力权重输入至注意力引导的掩码建模模块,注意力引导的掩码建模模块根据注意力权重对文本t中的单词进行选中并替换为[mask]标志,得到替换了[mask]标志的文本;将替换了[mask]标志的文本输入至文本编码器,得到替换了[mask]标志的文本编码特征;
8、步骤4、将步骤1得到的文本编码特征和图像编码特征将送入跨模态编码器,文本编码特征作为查询向量,图像编码特征作为键向量和值向量,跨模态编码器的最后一层的编码向量作为跨模态编码器的输出特征;将跨模态编码器的输出特征输入图像文本匹配学习模块计算itm损失;
9、步骤5、将步骤1得到的图像编码特征以及步骤3得到的替换了[mask]标记的文本编码特征输入至跨模态编码器,替换了[mask]标记的文本编码特征作为查询向量,图像编码特征作为键向量和值向量,跨模态编码器的最后一层的编码向量作为跨模态编码器的输出;将跨模态编码器的输出特征输入注意力引导的掩码建模模块,注意力引导的掩码建模模块对替换成了[mask]标记的文本编码特征送入一个全连接层,输出是该位置的词属于词库当中任意词的概率大小logit,根据logit和被替换成[mask]标记前原始的单词计算mlm损失;
10、步骤6、将步骤5得到的logit值输入文本增强模块,文本增强模块根据logit值对原始描述中替换成[mask]标记的单词以一定概率替换为logit值较高的词,对文本当中所有被替换成[mask]标记的词进行了上述替换操作之后得到新的文本,然后将新的文本作为对应图像的正样本;
11、步骤7、利用itc,itm,mlm损失之和作为总损失,以及将动量模型编码的结果作为伪标签引导在线模型更新;具体地,总损失梯度回传更新在线模型的文本编码器、图像编码器以及跨模态编码器,动量模型根据在线模型进行更新,不需要通过梯度回传进行更新;
12、步骤8、迭代数据集中的图像文本对,并重复步骤1-7,进行在线模型的学习训练,直到达到预设训练次数或者训练结束条件,训练结束后,在线模型中的图像编码器和文本编码器共同构成跨模态表征模型。
13、所述步骤2中,itc损失计算如下:
14、
15、其中,和表示真实的one-hot标签,h()代表的是熵函数;为图像到文本的相似度,为文本到图像相似度,其计算如下:
16、
17、其中,表示温度参数,表示相似度函数。
18、所述步骤3中,注意力引导的掩码建模模块根据注意力权重对文本t中的单词进行选中并替换为[mask]标志具体如下:
19、对于文本,将其在每一层的[cls]标记的注意力权重表示为:
20、
21、其中,acls代表文本编码器所有层的[cls]标记对应的注意力权重集合,指的是i层中的[cls]标记对应的注意力权重,是文本编码器中的层数;
22、注意力引导的掩码建模模块采用了指数移动平均值来联合文本编码器不同层的注意力权重:
23、
24、其中,为设定值,,表是指第k层文本编码器中的[cls]标记的注意力权重,,、、、、是通过加权得到中间结果,最终的[cls]标记对应注意力权重;
25、将注意力权重重新进行softmax操作,表示如下:
26、
27、其中,i个单词的对应注意力权重,是用来动态调整softmax结果的范围和间隔的温度参数,是输入的总数量;
28、softmax操作后的值作为参考来屏蔽相应的单词,具体地,屏蔽第i个单词的概率表示为:
29、
30、其中,是偏移量,是幅度;
31、最终,根据得到的概率来选中词替换为特殊的[mask]标记。
32、所述步骤4中,itm损失计算如下:
33、
34、其中,yitm表示真实标签,如果文本图像是对应的则为1,若文本图像不对应则为0;pitm表示模型输出该文本和图像是否对应的概率,最终优化的目标就是让模型对正样本对的输出接近1,负样本对接近0;h()代表的是熵函数;
35、所述步骤5中,mlm损失计算如下:
36、
37、其中,ymsk表示被替换为[mask]标记的词对应的原始词的真实标签,pmsk表示模型输出的对应该真实词的概率,表示被替换了[mask]标记的文本。
38、一种基于跨模态表征模型的实例检索方法,所述检索方法包括以下步骤:
39、步骤一、先将图片库的所有图片输入到跨模态表征模型的图像编码器中进行编码,获得图片表征,将所有图片表征存入向量数据库;
40、步骤二、将感兴趣目标图像的自然语言描述输入到跨模态表征模型的文本编码器中作为查询,得到文本表征;
41、步骤三、将步骤二得到的文本表征和向量数据库中的图片表征计算距离,输出和文本描述最相似的n张图片;
42、所述跨模态表征模型采用如上所述的一种基于文本注意力的跨模态表征模型构建方法获得。
43、采用上述方案后,本发明在在线模型中增加了两个极具创新性的模块:注意力引导的掩码建模模块和文本增强模块。其中,注意力引导的掩码建模模块以文本编码前向过程中的注意力为参考,对文本描述中的单词进行自适应掩盖,通过这种方式,具有实际意义的词相较于没有实际意义的词会有更高的概率被选中进行掩盖,这样一来,掩码语言建模模块在预测掩盖词的过程中,能够捕获与掩盖词相关联的语义进行对齐,从而更高效地对齐跨模态表征,防止vlp强大的语义理解能力丧失。文本增强模块则以一种轻量化的方式来对下游任务数据集中的文本描述进行了扩充。具体地,掩码语言建模模块在预测原始被掩盖的词的过程中,会产生该词属于词库中每个词的概率值,得益于vlp强大的语义理解能力以及在预测过程中看到了图像的信息,概率值高的词也能很好地描述原始图像中的内容,甚至更加符合图像当中对应的语义,于是,文本增强模块取高概率值对应的词替换被掩盖的词,用来作为图像的新文本描述,从而解决了数据集中文本描述用词单一且存在错误等问题,提高了检索准确率。
1.一种基于文本注意力的跨模态表征模型构建方法,其特征在于:所述方法采用的跨模态表征模型框架由具有相同模型架构的在线模型和动量模型组成,动量模型是在线模型的平滑稳定版本;在线模型和动量模型的架构均包括图像编码器、文本编码器、跨模态编码器;所述在线模型则运用了图像文本对比学习模块、图像文本匹配学习模块、掩码语言建模模块,并增加了注意力引导的掩码建模模块和文本增强模块来进行训练;
2.根据权利要求1所述的一种基于文本注意力的跨模态表征模型构建方法,其特征在于:所述步骤2中,itc损失计算如下:
3.根据权利要求1所述的一种基于文本注意力的跨模态表征模型构建方法,其特征在于:所述步骤3中,注意力引导的掩码建模模块根据注意力权重对文本t中的单词进行选中并替换为[mask]标志具体如下:
4.根据权利要求1所述的一种基于文本注意力的跨模态表征模型构建方法,其特征在于:所述步骤4中,itm损失计算如下:
5.一种基于跨模态表征模型的实例检索方法,其特征在于:所述检索方法包括以下步骤: