跨模态对齐方法、装置、电子设备和存储介质与流程
未命名
08-15
阅读:129
评论:0
1.本公开涉及机器学习技术领域,尤其涉及一种跨模态对齐方法、跨模态对齐装置、电子设备和计算机可读存储介质。
背景技术:
2.现有技术中存在通过多模态预训练模型来实现多种多模态下游任务(例如文字检索视频)的技术。预训练模型的训练过程需要投入大量的低成本收集的数据。例如,针对视频任务,预训练过程需要投入视频和与之对应的解说文本或字幕文本等。但是,这样的视频和文字之间的对应关系或对齐效果非常微弱,存在大量噪声,导致后续的预训练效果不佳。因此,本领域亟需一种能够加强两种模态信息之间的对齐效果,从而提升多模态模型的训练或预训练效果的技术。
技术实现要素:
3.为此,本公开致力于提供一种跨模态对齐方法、跨模态对齐装置、电子设备和计算机可读存储介质,其能够强化两种模态信息之间的对应关系,尽量减小不相关的噪声部分的影响,从而实现更好的后续模型训练或预训练效果。
4.在一方面,本公开提供一种跨模态对齐方法,包括:获取第一模态信息和第二模态信息,并将第一模态信息分解成多个第一元素,将第二模态信息分解成多个第二元素;根据第二模态信息的第二特征信息,计算每个第一元素与第二模态信息的第一相似度,并根据第一模态信息的第一特征信息,计算每个第二元素与第一模态信息的第二相似度;根据多个第一元素的多个第一相似度和多个第二元素的多个第二相似度,计算第一和第二模态信息的整体相似度;根据整体相似度,对齐第一和第二模态信息。
5.根据本方面,通过将两种模态信息分解为多个元素,并针对每个元素计算相似度,能够使得与另一模态信息相关的元素凸显出来,不相关的元素得到抑制。这样,在后续计算整体相似度的时候,相关元素能够产生更大影响,不相关元素对计算结果影响较小,从而使得两种模态信息的相似度计算更加准确,实现更好的对齐效果。
6.根据本公开一特别实施例,第一特征信息包括第一特征向量矩阵,第一特征向量矩阵每行由每个第一元素的特征向量对应生成,第二特征信息包括第二特征向量矩阵,第二特征向量矩阵每行由每个第二元素的特征向量对应生成。
7.根据本实施例,通过针对元素构建特征向量,并针对模态信息构建特征向量矩阵,能够通过数学工具将模态信息的特征表现出来,便于通过算法来实现模态信息及其元素的处理和利用。
8.根据本公开一特别实施例,根据第二模态信息的第二特征信息,计算每个第一元素与第二模态信息的第一相似度,并根据第一模态信息的第一特征信息,计算每个第二元素与第一模态信息的第二相似度,包括:计算每个第一元素与每个第二元素之间的相似度,得到交叉相似度矩阵;将交叉相似度矩阵每行及每列中的多个相似度数值转化成权重系
数,得到第一权重系数矩阵及第二权重系数矩阵;采用第一权重系数矩阵对第二特征向量矩阵进行加权计算,得到第二加权特征向量矩阵;采用第二权重系数矩阵对第一特征向量矩阵进行加权计算,得到第一加权特征向量矩阵;计算第二加权特征向量矩阵中的行向量与第一特征向量矩阵中对应的行向量之间的相似度,得到每个第一元素与第二模态信息的第一相似度;计算第一加权特征向量矩阵中的行向量与第二特征向量矩阵中对应的行向量之间的相似度,得到每个第二元素与第一模态信息的第二相似度。
9.根据本实施例,通过矩阵运算计算元素的特征向量和模态信息的特征向量矩阵之间的相似度,能够利用成熟的数学计算方法得出每个元素与另一模态信息之间的准确相似度,从而为后续计算做好准备。
10.根据本公开一特别实施例,根据多个第一元素的多个第一相似度和多个第二元素的多个第二相似度,计算第一和第二模态信息的整体相似度,包括:根据多个第一相似度,优化第一特征信息;根据多个第二相似度,优化第二特征信息;根据优化后的第一和第二特征信息,计算整体相似度。
11.根据本实施例,根据相似度来优化特征信息,从而根据优化后的特征信息来计算整体相似度,能够利用相似度所反映出来的数学关系,改变特征信息的数值,从而改变最终计算出的整体相似度,使得整体相似度更能反映出元素与元素之间相似度的大小关系,凸显出相似度较大的元素对整体相似度的影响力。
12.根据本公开一特别实施例,根据多个第一相似度,优化第一特征信息,包括:根据多个第一相似度,优化第一特征信息的第一特征向量矩阵,得到第一模态信息的第一全局特征向量。其中,根据多个第二相似度,优化第二特征信息,包括:根据多个第二相似度,优化第二特征信息的第二特征向量矩阵,得到第二模态信息的第二全局特征向量。其中,根据优化后的第一和第二特征信息,计算整体相似度,包括:根据第一和第二全局特征向量,计算整体相似度。
13.根据本实施例,通过计算全局特征向量,并将全局特征向量作为优化后的特征信息,能够使得模态信息的特征信息得到降维和简化,从而更加便于后续的整体相似度的计算。
14.根据本公开一特别实施例,根据多个第一相似度,优化第一特征向量矩阵,得到第一模态信息的第一全局特征向量,包括:将多个第一相似度转化为权重系数,得到第一权重系数向量;采用第一权重系数向量对第一特征向量矩阵进行加权计算,得到第一全局特征向量。其中,根据多个第二相似度,优化第二特征向量矩阵,得到第二模态信息的第二全局特征向量,包括:将多个第二相似度转化为权重系数,得到第二权重系数向量;采用第二权重系数向量对第二特征向量矩阵进行加权计算,得到第二全局特征向量。
15.根据本实施例,通过将相似度转化为权重系数,以对模态信息的特征向量矩阵进行加权计算,能够使得模态信息的特征向量矩阵中与另一模态信息相似度较高的部分得到凸显,相似度较低的部分得到抑制,从而在后续计算中能够更加准确地反映模态信息之间的相似性。
16.根据本公开一特别实施例,根据整体相似度,对齐第一和第二模态信息,包括:采用整体相似度标注第一和第二模态信息的对齐指数;基于对齐指数将第二模态信息与第一模态信息进行对齐。
17.根据本实施例,通过将整体相似度作为第一和第二模态信息之间对齐性的标注,有利于改变模型训练效果,通过标注更加准确的数据实现更好的模型训练,提升模型在跨模态任务中的表现。
18.根据本公开一特别实施例,第一模态信息包括文本,第一元素包括词,第二模态信息包括视频,第二元素包括帧。
19.根据本实施例,本公开技术方案特别适用于文本和视频之间的对齐。视频当中存在大量噪声帧,即大量视频帧没有对应的文字描述,因此适合于通过本公开的技术方案进行去噪和提纯,从而更好地实现文本与视频两种模态之间的对齐。
20.在另一方面,本公开提供一种跨模态对齐装置,包括:获取模块,用于获取第一模态信息和第二模态信息,并将第一模态信息分解成多个第一元素,将第二模态信息分解成多个第二元素;第一计算模块,用于根据第二模态信息的第二特征信息,计算每个第一元素与第二模态信息的第一相似度,并根据第一模态信息的第一特征信息,计算每个第二元素与第一模态信息的第二相似度;第二计算模块,用于根据多个第一元素的多个第一相似度和多个第二元素的多个第二相似度,计算第一和第二模态信息的整体相似度;对齐模块,用于根据整体相似度,对齐第一和第二模态信息。
21.根据本公开一特别实施例,第一特征信息包括第一特征向量矩阵,第一特征向量矩阵每行由每个第一元素的特征向量对应生成,第二特征信息包括第二特征向量矩阵,第二特征向量矩阵每行由每个第二元素的特征向量对应生成。
22.根据本公开一特别实施例,装置还包括:第三计算模块,用于根据第一和第二特征向量矩阵,计算每个第一元素与每个第二元素之间的相似度,得到交叉相似度矩阵,交叉相似度矩阵每行表示每个第一元素与多个第二元素之间的多个相似度数值,每列表示每个第二元素与多个第一元素之间的多个相似度数值。其中,第一计算模块被进一步配置成:将交叉相似度矩阵每行中的多个相似度数值转化成权重系数,得到第一权重系数矩阵;采用第一权重系数矩阵对第二特征向量矩阵进行加权计算,得到第二加权特征向量矩阵;计算第二加权特征向量矩阵中的行向量与第一特征向量矩阵中对应的行向量之间的相似度,得到每个第一元素与第二模态信息的第一相似度。其中,第一计算模块被进一步配置成:将交叉相似度矩阵每列中的多个相似度数值转化成权重系数,得到第二权重系数矩阵;采用第二权重系数矩阵对第一特征向量矩阵进行加权计算,得到第一加权特征向量矩阵;计算第一加权特征向量矩阵中的行向量与第二特征向量矩阵中对应的行向量之间的相似度,得到每个第二元素与第一模态信息的第二相似度。
23.根据本公开一特别实施例,第二计算模块被进一步配置成:根据多个第一相似度,优化第一特征信息;根据多个第二相似度,优化第二特征信息;根据优化后的第一和第二特征信息,计算整体相似度。
24.根据本公开一特别实施例,第二计算模块被进一步配置成:根据多个第一相似度,优化第一特征信息的第一特征向量矩阵,得到第一模态信息的第一全局特征向量。其中,第二计算模块被进一步配置成:根据多个第二相似度,优化第二特征信息的第二特征向量矩阵,得到第二模态信息的第二全局特征向量。其中,第二计算模块被进一步配置成:根据第一和第二全局特征向量,计算整体相似度。
25.根据本公开一特别实施例,第二计算模块被进一步配置成:将多个第一相似度得
分转化为权重系数,得到第一权重系数向量;采用第一权重系数向量对第一特征向量矩阵进行加权计算,得到第一全局特征向量。其中,第二计算模块被进一步配置成:将多个第二相似度得分转化为权重系数,得到第二权重系数向量;采用第二权重系数向量对第二特征向量矩阵进行加权计算,得到第二全局特征向量。
26.根据本公开一特别实施例,对齐模块被进一步配置成:采用整体相似度标注第一和第二模态信息的对齐指数;基于对齐指数将第二模态信息与第一模态信息进行对齐。
27.在另一方面,本公开提供一种电子设备,包括存储器和处理器,存储器中存储有可执行代码,处理器执行可执行代码时,实现上述跨模态对齐方法。
28.在另一方面,本公开提供一种计算机可读存储介质,其上存储有计算机程序,当计算机程序在计算机中执行时,令计算机执行上述跨模态对齐方法。
附图说明
29.以下,结合附图详细描述本公开的具体实施方式,其中:
30.图1示出根据本公开一实施例的跨模态对齐方法的流程示意图;
31.图2示出根据本公开另一实施例的跨模态对齐方法的流程示意图;
32.图3示出根据本公开另一实施例的跨模态对齐方法所采用的视频和文本的示意图;
33.图4示出根据图3实施例的跨模态对齐方法的流程示意图;
34.图5示出根据本公开一实施例的跨模态对齐装置的结构示意图;
35.图6示出根据本公开一实施例的电子设备的结构示意图。
具体实施方式
36.下面结合附图和实施例,对本公开提供的技术方案做进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
37.在本文中,术语“一”、“一个”和其它类似词语并不意在表示只存在一个所述事物,而是表示有关描述仅仅针对所述事物中的一个,所述事物可能具有一个或多个。在本文中,术语“包含”、“包括”和其它类似词语意在表示逻辑上的相互关系,而不能视作表示空间结构上的关系。例如,“a包括b”意在表示在逻辑上b属于a,而不表示在空间上b位于a的内部。另外,术语“包含”、“包括”和其它类似词语的含义应视为开放性的,而非封闭性的。例如,“a包括b”意在表示b属于a,但是b不一定构成a的全部,a还可能包括c、d、e等其它元素。
38.在本文中,术语“第一”、“第二”和其它类似词语并不意在暗示任何顺序、数量和重要性,而是仅仅用于对不同的元件进行区分。在本文中,术语“实施例”、“本实施例”、“一实施例”、“一个实施例”并不表示有关描述仅仅适用于一个特定的实施例,而是表示这些描述还可能适用于另外一个或多个实施例中。本领域技术人员应理解,在本文中,任何针对某一个实施例所做的描述都可以与另外一个或多个实施例中的有关描述进行替代、组合、或者以其它方式结合,所述替代、组合、或者以其它方式结合所产生的新实施例是本领域技术人员能够容易想到的,属于本公开的保护范围。
39.在本公开各实施例中,模态在机器学习领域中可以是指信息的一种表现形式,具有某种表现形式的数据或信息就是一种模态的信息。例如,视频可以是一种模态的信息,文字可以是另一种模态的信息。多模态可以是指多种表现形式,多模态信息可以是指具有多种表现形式(同时相互关联)的信息。例如,视频和对视频内容进行解说的字幕共同向观众传达一段信息,该信息可以理解为多模态信息。
40.在本公开各实施例中,对齐或跨模态对齐可以是指确定两种或两种以上模态的信息之间的关联关系的行为。在一些实施例中,对齐可以包括显示对齐和隐式对齐。如果一个模型的优化目标是最大化多模态数据的子元素的对齐程度,则称为显示对齐。如果模型的最终优化目标不是对齐任务,对齐过程仅仅是某个中间(或隐式)步骤,则称为隐式对齐。确定两种模态信息之间的关联关系之后,可以用于后续的模型训练,例如多模态预训练模型的训练。
41.本领域一些技术,针对视频-文本对齐,通常直接采用图像-文本的对齐方法。但是,相较于图-文数据,视频-文本数据明显存在更多的数据噪声和信息冗余。数据噪声造成,视频文本很少能完全对齐,视频/文本中可能存在另一模态中不包含的信息。数据冗余造成,视频信息更多更冗杂,关键信息容易被其他信息淹没。这些问题进而导致,在训练/预训练阶段,不严格对齐的视频文本对特征学习是有害的,在测试阶段,视频文本冗余/噪声/不严格对齐给检索和识别带来很大困难。
42.本公开一些实施例提供如何实现例如视频-文本之间的跨模态特征对齐方法。通过更细颗粒度的、跨模态相互引导的对齐方法,大幅提升了图文模型在视频任务上的表现。总体可以分为三步:1)视频和文本对齐颗粒度的细化;2)获取对于每一帧视频来说最佳的文本特征,和对于文本中每个词来说最佳的视频特征;3)获取全局的文本和视频特征,即对于当前整个视频来说的最佳文本特征,和对于整段文本来说的最佳视频特征。
43.图1示出根据本公开一实施例的跨模态对齐方法的流程示意图。
44.根据本实施例,跨模态对齐方法包括步骤s110至s140,以下详述各步骤。
45.s110、获取第一模态信息和第二模态信息,并将第一模态信息分解成多个第一元素,将第二模态信息分解成多个第二元素。
46.在本实施例中,模态信息可以是指以某种模态形式呈现的信息,或者具有某种模态的信息。例如,模态信息可以是视频、图像、文本、音频等。第一模态信息与第二模态信息可以是指两种分别具有不同模态的信息。例如,第一模态信息可以是视频,第二模态信息可以是文本。又例如,第一模态信息可以是音频,第二模态信息可以是图片。第一和第二模态信息的其它模态形式也是可以想到的。
47.在本实施例中,模态信息的元素可以是指构成模态信息的包含一定特征的基本单元。例如,当模态信息为视频时,元素可以是视频的帧。又例如,当模态信息为文本时,元素可以是构成文本的词(包括标点等符号)。再例如,当模态信息为图像时,元素可以是图像中的区域(比如通过语义识别出的显示特定物体的区域)。还例如,当模态信息为音频时,元素可以是某一振动频率的分量。
48.作为示例,第一模态信息包括文本,第一元素包括词,第二模态信息包括视频,第二元素包括帧。
49.在本实施例中,文本可以是指通过人类自然语言或人造语言中的基本单元或字符
构成的信息。例如,一个文本可以是一个词、一句话、一个段落、一个篇章或者一本书的内容。词可以是指构成文本的基本单元,例如汉字(中文)、假名(日语)、字母、单词(英语)、标点符号等。在一些实施例中,词可以是指文本经过语言模型处理而得到的token(令牌)。
50.在本实施例中,视频可以是指将一系列静态影像以电信号的方式加以捕捉、记录、处理、储存、传送与重现的各种技术。例如,一段视频可以是一个动态图、一部电影、一集电视剧、一个课程录像等。帧可以是指构成视频的多个图像,这些图像通过在短时间内连续播放形成动态效果,从而让人类看到运动画面。
51.在本实施例中,将模态信息分解成元素,可以通过解析或其它技术手段,将模态信息分解成具有一定特征的基本单元。例如,对于视频,可以解析视频数据,将其分解成多个视频帧。例如,对于文本,可以通过分词技术或其它手段,将其分解成多个词或字符。其它将模态信息分解成元素的技术手段也是可以想到的。
52.s120、根据第二模态信息的第二特征信息,计算每个第一元素与第二模态信息的第一相似度,并根据第一模态信息的第一特征信息,计算每个第二元素与第一模态信息的第二相似度。
53.在本实施例中,特征信息可以是指能够体现模态信息的特征或特点的信息。例如,特征信息可以直接从模态信息中抽取,例如对于图像信息,特征信息可以是整个图像每个像素点的灰度值的集合。又例如,特征信息可以通过计算或编码得到,例如对于文本信息,可以将文本映射到特征空间中,得到文本特征向量,作为其特征信息。
54.作为示例,第一特征信息包括第一特征向量矩阵,第一特征向量矩阵每行由每个第一元素的特征向量对应生成,第二特征信息包括第二特征向量矩阵,第二特征向量矩阵每行由每个第二元素的特征向量对应生成。
55.在本实施例中,特征向量可以是指用于表征模态信息的元素的特征或特点的向量。例如,在自然语言处理技术中,词的特征向量可以是token的embedding。
56.在本实施例中,特征向量矩阵可以是指由多个特征向量构成的矩阵,该矩阵的每行或每列的多个数值与相应的特征向量所包含的多个数值相同。
57.s130、根据多个第一元素的多个第一相似度和多个第二元素的多个第二相似度,计算第一和第二模态信息的整体相似度。
58.在本实施例中,多个第一元素的多个第一相似度可以是指针对多个第一元素分别计算得到的多个第一相似度,其中每个第一相似度对应一个第一元素。多个第二元素的多个第二相似度可以是指针对多个第二元素分别计算得到的多个第二相似度,其中每个第二相似度对应一个第二元素。
59.在本实施例中,整体相似度可以是指整个第一模态信息(例如整个视频)与整个第二模态信息(例如与该视频相关的所有文本)之间的相似度,体现两种模态信息整体上是否相似的关系。
60.作为示例,s130的具体实现方式可以是:根据多个第一相似度,优化第一特征信息;根据多个第二相似度,优化第二特征信息;根据优化后的第一和第二特征信息,计算整体相似度。
61.在本实施例中,优化特征信息可以是指,将特征信息所体现的模态信息的特征或特点改变,使其强化某些方面的特征,同时弱化另一些方面的特征。
62.作为示例,优化第一特征信息的过程可以是:根据多个第一相似度,优化第一特征信息的第一特征向量矩阵,得到第一模态信息的第一全局特征向量。优化第二特征信息的过程可以是:根据多个第二相似度,优化第二特征信息的第二特征向量矩阵,得到第二模态信息的第二全局特征向量。计算整体相似度的过程可以是:根据第一和第二全局特征向量,计算整体相似度。
63.在本实施例中,全局特征向量可以是指能够体现整个模态信息的全局特征或整体特点的向量。
64.s140、根据整体相似度,对齐第一和第二模态信息。
65.作为示例,s140的具体实现方式可以是:采用整体相似度标注第一和第二模态信息的对齐指数;基于对齐指数将第二模态信息与第一模态信息进行对齐。
66.在本实施例中,采用整体相似度标注对齐指数,并基于对齐指数将两种模态信息进行对齐,可以是指,将整体相似度作为第一和第二模态信息之间对齐程度的数值体现,确定第一和第二模态信息之间的对应关系。例如,当整体相似度高于一定阈值时,则将第一和第二模态信息看作是对齐(或相似)的两种模态信息,可以作为对比学习的正例。当整体相似度低于一定阈值时,则将第一和第二模态信息看作是不对齐(或不相似)的两种模态信息,可以不用于模型训练,也可以作为对比学习的反例。其它根据整体相似度标注对齐指数的方法也是可以想到的。
67.在本实施例中,两种模态信息对齐之后,可以将两种模态信息连同它们之间的对齐指数作为输入数据投入模型(例如多模态预训练模型)中进行训练,从而得到能够完成跨模态任务的机器学习模型。
68.图2示出根据本公开一实施例的跨模态对齐方法的流程示意图。
69.根据本实施例,跨模态对齐方法包括步骤s210至s260,以下详述各步骤。
70.s210、获取第一模态信息和第二模态信息,并将第一模态信息分解成多个第一元素,将第二模态信息分解成多个第二元素。
71.具体地,第一模态被分解成m个第一元素,第二模态信息被分解成n个第二元素,m和n均为大于或等于2的整数。
72.关于s210的其它细节,参见图1实施例对s110的详细描述,这里不再赘述。
73.s220、根据第一和第二特征向量矩阵,计算每个第一元素与每个第二元素之间的相似度,得到交叉相似度矩阵,第一特征向量矩阵每行由每个第一元素的特征向量对应生成,第二特征向量矩阵每行由每个第二元素的特征向量对应生成。
74.在本实施例中,交叉相似度矩阵可以是指多个第一元素中的每个第一元素与多个第二元素中的每个第二元素交叉计算的相似度数值所构成的矩阵,通过该矩阵表示元素尺度上的第一和第二模态信息之间的相似度关系。
75.作为示例,交叉相似度矩阵每行表示每个第一元素与多个第二元素之间的多个相似度数值,每列表示每个第二元素与多个第一元素之间的多个相似度数值。
76.具体地,m个第一元素的具有d维的特征向量构成具有m行和d列的第一特征向量矩阵,n个第二元素的具有d维的特征向量构成具有n行和d列的第二特征向量。d为大于或等于2的整数,其具体数值由处理文本或图像的模型或编码器决定,例如为512或768。第一特征向量和第二特征向量进行矩阵乘法(叉乘),得到具有m行和n列的交叉相似度矩阵。在交叉
相似度矩阵中,第m行第n列的数值表示第m个第一元素和第n个第二元素之间的相似度。
77.s231、将交叉相似度矩阵每行中的多个相似度数值转化成权重系数,得到第一权重系数矩阵。
78.具体地,通过softmax函数,将具有m行和n列的交叉相似度矩阵的m行中每行的n个相似度数值转化为权重系数,使得每行的权重系数的和为1。这样得到的m行和n列的矩阵为第一权重系数矩阵。
79.s232、采用第一权重系数矩阵对第二特征向量矩阵进行加权计算,得到第二加权特征向量矩阵。
80.具体地,将具有m行和n列的第一权重系数矩阵与具有n行和d列的第二特征向量矩阵进行矩阵乘法,得到具有m行和d列的第二加权特征向量矩阵,其表示经过加权计算的第二特征向量矩阵。
81.s233、计算第二加权特征向量矩阵中的行向量与第一特征向量矩阵中对应的行向量之间的相似度,得到每个第一元素与第二模态信息的第一相似度。
82.具体地,将具有m行和d列的第二加权特征向量矩阵中的具有d维的行向量,与具有m行和d列的第一特征向量矩阵中的具有d维的相应行向量,进行点乘,得到一个数值,即第一特征向量矩阵中的该行所表示的第一元素与第二模态信息的第一相似度。对每行进行这样的计算,可以得到m个第一相似度。
83.s234、将多个第一相似度转化为权重系数,得到第一权重系数向量。
84.具体地,通过softmax函数,将m个第一相似度转化为权重系数,使得该m个权重系数的和为1,再将该m个权重系数构成一个具有m维的第一权重系数向量。
85.s235、采用第一权重系数向量对第一特征向量矩阵进行加权计算,得到第一全局特征向量。
86.具体地,将该m维的第一权重系数向量与具有m行和d列的第一特征向量矩阵进行矩阵乘法,得到d维的第一全局特征向量。
87.s241、将交叉相似度矩阵每列中的多个相似度数值转化成权重系数,得到第二权重系数矩阵。
88.具体地,通过softmax函数,将具有m行和n列的交叉相似度矩阵的n列中每列的m个相似度数值转化为权重系数,使得每列的相似度数值的和为1。这样得到的m行和n列的矩阵为第二权重系数矩阵。
89.s242、采用第二权重系数矩阵对第一特征向量矩阵进行加权计算,得到第一加权特征向量矩阵。
90.具体地,将具有m行和n列的第二权重系数矩阵与具有m行和d列的第一特征向量矩阵进行矩阵乘法,得到具有n行和d列的第一加权特征向量矩阵,其表示经过加权计算的第一特征向量矩阵。
91.s243、计算第一加权特征向量矩阵中的行向量与第二特征向量矩阵中对应的行向量之间的相似度,得到每个第二元素与第一模态信息的第二相似度。
92.具体地,将具有n行和d列的第二加权特征向量矩阵中的具有d维的行向量,与具有n行和d列的第二特征向量矩阵中的具有d维的相应行向量,进行点乘,得到一个数值,即第二特征向量矩阵中的该行所表示的第二元素与第一模态信息的第二相似度。对每行进行这
样的计算,可以得到n个第一相似度。
93.s244、将多个第二相似度转化为权重系数,得到第二权重系数向量。
94.具体地,通过softmax函数,将n个第二相似度转化为权重系数,使得该n个权重系数的和为1,再将该n个权重系数构成一个具有n维的第二权重系数向量。
95.s245、采用第二权重系数向量对第二特征向量矩阵进行加权计算,得到第二全局特征向量。
96.具体地,将该n维的第二权重系数向量与具有n行和d列的第一特征向量矩阵进行矩阵乘法,得到d维的第二全局特征向量。
97.s250、计算第一全局特征向量与第二全局特征向量之间的相似度,得到整体相似度。
98.具体地,将具有d维的第一全局特征向量和具有d维的第二全局特征向量进行点乘,得到整体相似度。
99.s260、根据整体相似度,对齐第一和第二模态信息。
100.关于s260的细节,参见图1实施例对s140的详细描述,这里不再赘述。
101.图3和图4示出根据本公开另一实施例的跨模态对齐方法,其中图3示出根据本实施例的跨模态对齐方法所使用的视频和文本,图4示出根据本实施例的跨模态对齐方法的流程示意图。
102.参见图3,本实施例的跨模态对齐方法所采用的两种模态信息分别是视频和文本。其中,视频包括4帧,显示一名背着书包的学生从左往右步行经过一座围有栅栏的房屋的过程。文本包括一句英文解说,即“a student passes by a house.”,中文含义是“一名学生经过一座房屋。”103.参见图4,视频被分解成4帧,并被送入图像编码器,得到多个帧特征向量。文本被分解为多个词,并被送入文本编码器,得到多个词特征向量(例如多个token的embedding(嵌入))。多个帧特征向量和多个词特征向量进行融合(例如通过矩阵乘法),得到交叉相似度矩阵。
104.一方面,针对交叉相似度矩阵的帧的维度进行softmax函数处理,得到权重系数矩阵。该权重系数矩阵的每行表示对某一帧来说,哪些词的价值更大(相似度更高)。例如,对于第2帧来说,student和house两个词的权重较大。而对于无内容的噪声帧,各词的权重会比较均匀。
105.将该权重系数矩阵与词特征向量构成的矩阵进行矩阵乘法,得到文本加权特征向量矩阵。
106.将文本加权特征向量矩阵中每一行(即每个行向量)与每一帧的特征向量进行点乘,得到该帧与整个文本的相似度得分。汇总起来得到多个相似度得分,得分的数量与帧的数量相同。
107.对这多个相似度得分采用softmax函数进行计算,加权聚合中凸显出响应值比较大的视频帧,得到帧的权重系数向量。
108.将帧的权重系数向量对多个帧特征向量进行加权计算,得到视频全局特征向量。
109.另一方面,针对交叉相似度矩阵的词的维度进行softmax函数处理,得到权重系数矩阵。该权重系数矩阵的每行表示对某一词来说,哪些帧的价值更大(相似度更高)。例如,
对于house这个词来说,第2帧和第3帧的权重较大。
110.将该权重系数矩阵与帧特征向量构成的矩阵进行矩阵乘法,得到视频加权特征向量矩阵。
111.将视频加权特征向量矩阵中每一行(即每个行向量)与每一词的特征向量进行点乘,得到该词与整个视频的相似度得分。汇总起来得到多个相似度得分,得分的数量与词的数量相同。
112.对这多个相似度得分采用softmax函数进行计算,加权聚合中凸显出响应值比较大的词,得到词的权重系数向量。
113.将词的权重系数向量对多个词特征向量进行加权计算,得到文本全局特征向量。
114.计算视频全局特征向量与文本全局特征向量之间的相似度,得到整体相似度,从而对齐图3所示的视频和文本。
115.图5示出根据本公开一实施例的跨模态对齐装置的结构示意图。
116.根据本实施例,跨模态对齐装置500包括:获取模块510,用于获取第一模态信息和第二模态信息,并将第一模态信息分解成多个第一元素,将第二模态信息分解成多个第二元素;第一计算模块520,用于根据第二模态信息的第二特征信息,计算每个第一元素与第二模态信息的第一相似度,并根据第一模态信息的第一特征信息,计算每个第二元素与第一模态信息的第二相似度;第二计算模块530,用于根据多个第一元素的多个第一相似度和多个第二元素的多个第二相似度,计算第一和第二模态信息的整体相似度;对齐模块540,用于根据整体相似度,对齐第一和第二模态信息。
117.下面参考图6,其示出了适于用来执行根据图1实施例的跨模态对齐方法的电子设备600的结构示意图。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
118.如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(rom)602中的程序或者从存储装置608加载到随机访问存储器(ram)603中的程序而执行各种适当的动作和处理。在ram603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、rom602以及ram603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。
119.通常,以下装置可以连接至i/o接口605:包括例如触摸屏、触摸板、键盘、鼠标等的输入装置606;包括例如液晶显示器(lcd,liquid crystal display)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图6中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
120.特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行图1所示的跨模态对齐方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从rom602被安装。在该计算机程序被处理装置601执行时,执行本公开的
跨模态对齐方法中限定的上述功能。
121.本公开还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行图1所示的跨模态对齐方法。
122.需要说明的是,本说明书的实施例所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本说明书的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本说明书的实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(radio frequency,射频)等等,或者上述的任意合适的组合。
123.上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该服务器执行时,使得该电子设备:获取第一模态信息和第二模态信息,并将第一模态信息分解成多个第一元素,将第二模态信息分解成多个第二元素;根据第二模态信息的第二特征信息,计算每个第一元素与第二模态信息的第一相似度,并根据第一模态信息的第一特征信息,计算每个第二元素与第一模态信息的第二相似度;根据多个第一元素的多个第一相似度和多个第二元素的多个第二相似度,计算第一和第二模态信息的整体相似度;根据整体相似度,对齐第一和第二模态信息。
124.可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言——诸如java、smalltalk、c++,还包括常规的过程式程序设计语言——诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
125.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于存储介质和计算设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
126.本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明实施例所描
述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
127.以上所述的具体实施方式,对本发明实施例的目的、技术方案和有益效果进行了进一步的详细说明。所应理解的是,以上所述仅为本发明实施例的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
技术特征:
1.一种跨模态对齐方法,包括:获取第一模态信息和第二模态信息,并将所述第一模态信息分解成多个第一元素,将所述第二模态信息分解成多个第二元素;根据所述第二模态信息的第二特征信息,计算每个所述第一元素与所述第二模态信息的第一相似度,并根据所述第一模态信息的第一特征信息,计算每个所述第二元素与所述第一模态信息的第二相似度;根据所述多个第一元素的多个第一相似度和所述多个第二元素的多个第二相似度,计算所述第一模态信息和所述第二模态信息的整体相似度;根据所述整体相似度,对齐所述第一模态信息和所述第二模态信息。2.根据权利要求1所述的跨模态对齐方法,其中,所述第一特征信息包括第一特征向量矩阵,所述第一特征向量矩阵每行由每个第一元素的特征向量对应生成,所述第二特征信息包括第二特征向量矩阵,所述第二特征向量矩阵每行由每个第二元素的特征向量对应生成。3.根据权利要求2所述的跨模态对齐方法,其中,所述根据所述第二模态信息的第二特征信息,计算每个所述第一元素与所述第二模态信息的第一相似度,并根据所述第一模态信息的第一特征信息,计算每个所述第二元素与所述第一模态信息的第二相似度,包括:计算每个第一元素与每个第二元素之间的相似度,得到交叉相似度矩阵;将所述交叉相似度矩阵每行及每列中的多个相似度数值转化成权重系数,得到第一权重系数矩阵及第二权重系数矩阵;采用所述第一权重系数矩阵对所述第二特征向量矩阵进行加权计算,得到第二加权特征向量矩阵;采用所述第二权重系数矩阵对所述第一特征向量矩阵进行加权计算,得到第一加权特征向量矩阵;计算所述第二加权特征向量矩阵中的行向量与所述第一特征向量矩阵中对应的行向量之间的相似度,得到每个所述第一元素与所述第二模态信息的第一相似度;计算所述第一加权特征向量矩阵中的行向量与所述第二特征向量矩阵中对应的行向量之间的相似度,得到每个所述第二元素与所述第一模态信息的第二相似度。4.根据权利要求1所述的跨模态对齐方法,其中,所述根据所述多个第一元素的多个第一相似度和所述多个第二元素的多个第二相似度,计算所述第一模态信息和所述第二模态信息的整体相似度,包括:根据所述多个第一相似度,优化所述第一特征信息;根据所述多个第二相似度,优化所述第二特征信息;根据优化后的所述第一特征信息和所述第二特征信息,计算所述整体相似度。5.根据权利要求4所述的跨模态对齐方法,其中,其中,所述根据所述多个第一相似度,优化所述第一特征信息,包括:根据所述多个第一相似度,优化所述第一特征信息的第一特征向量矩阵,得到所述第一模态信息的第一全局特征向量;其中,所述根据所述多个第二相似度,优化所述第二特征信息,包括:根据所述多个第二相似度,优化所述第二特征信息的第二特征向量矩阵,得到所述第二模态信息的第二全局特征向量;
其中,所述根据优化后的所述第一和第二特征信息,计算所述整体相似度,包括:根据所述第一全局特征向量和所述第二全局特征向量,计算所述整体相似度。6.根据权利要求5所述的跨模态对齐方法,其中,所述根据所述多个第一相似度,优化所述第一特征向量矩阵,得到所述第一模态信息的第一全局特征向量,包括:将所述多个第一相似度转化为权重系数,得到第一权重系数向量;采用所述第一权重系数向量对所述第一特征向量矩阵进行加权计算,得到第一全局特征向量;其中,所述根据所述多个第二相似度,优化所述第二特征向量矩阵,得到所述第二模态信息的第二全局特征向量,包括:将所述多个第二相似度转化为权重系数,得到第二权重系数向量;采用所述第二权重系数向量对所述第二特征向量矩阵进行加权计算,得到第二全局特征向量。7.根据权利要求1所述的跨模态对齐方法,其中,所述根据所述整体相似度,对齐所述第一模态信息和所述第二模态信息,包括:采用所述整体相似度标注所述第一模态信息和所述第二模态信息的对齐指数;基于所述对齐指数将所述第二模态信息与所述第一模态信息进行对齐。8.根据权利要求1至7中任一项所述的跨模态对齐方法,其中,所述第一模态信息包括文本,所述第一元素包括词,所述第二模态信息包括视频,所述第二元素包括帧。9.一种跨模态对齐装置,包括:获取模块,用于获取第一模态信息和第二模态信息,并将所述第一模态信息分解成多个第一元素,将所述第二模态信息分解成多个第二元素;第一计算模块,用于根据所述第二模态信息的第二特征信息,计算每个所述第一元素与所述第二模态信息的第一相似度,并根据所述第一模态信息的第一特征信息,计算每个所述第二元素与所述第一模态信息的第二相似度;第二计算模块,用于根据所述多个第一元素的多个第一相似度和所述多个第二元素的多个第二相似度,计算所述第一模态信息和所述第二模态信息的整体相似度;对齐模块,用于根据所述整体相似度,对齐所述第一模态信息和所述第二模态信息。10.一种电子设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-8中任一项所述的跨模态对齐方法。11.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令所述计算机执行权利要求1-8中任一项所述的跨模态对齐方法。
技术总结
本公开提供一种跨模态对齐方法、跨模态对齐装置、电子设备和计算机可读存储介质。方法包括:获取第一模态信息和第二模态信息,并将第一模态信息分解成多个第一元素,将第二模态信息分解成多个第二元素;根据第二模态信息的第二特征信息,计算每个第一元素与第二模态信息的第一相似度,并根据第一模态信息的第一特征信息,计算每个第二元素与第一模态信息的第二相似度;根据多个第一元素的多个第一相似度和多个第二元素的多个第二相似度,计算第一和第二模态信息的整体相似度;根据整体相似度,对齐第一和第二模态信息。根据本公开,能够强化两种模态信息之间的对应关系,减小不相关的噪声部分的影响,实现更好的后续模型训练效果。果。果。
技术研发人员:柳儒杨 黄靖佳 何栋梁 吴兴龙
受保护的技术使用者:北京字跳网络技术有限公司
技术研发日:2023.05.23
技术公布日:2023/8/13
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
