CN111353076A - 训练跨模态检索模型的方法、跨模态检索的方法和相关装置 - Google Patents
训练跨模态检索模型的方法、跨模态检索的方法和相关装置 Download PDFInfo
- Publication number
- CN111353076A CN111353076A CN202010108535.6A CN202010108535A CN111353076A CN 111353076 A CN111353076 A CN 111353076A CN 202010108535 A CN202010108535 A CN 202010108535A CN 111353076 A CN111353076 A CN 111353076A
- Authority
- CN
- China
- Prior art keywords
- data
- cross
- modal
- training
- similar
- 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.)
- Granted
Links
- 238000012549 training Methods 0.000 title claims abstract description 259
- 238000000034 method Methods 0.000 title claims abstract description 147
- 230000015654 memory Effects 0.000 claims description 77
- 238000012545 processing Methods 0.000 claims description 46
- 238000004364 calculation method Methods 0.000 claims description 22
- 238000013140 knowledge distillation Methods 0.000 abstract description 9
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 238000013528 artificial neural network Methods 0.000 description 66
- 230000000875 corresponding effect Effects 0.000 description 62
- 230000008569 process Effects 0.000 description 32
- 238000004891 communication Methods 0.000 description 28
- 230000006870 function Effects 0.000 description 23
- 239000013598 vector Substances 0.000 description 21
- 239000011159 matrix material Substances 0.000 description 19
- 238000004590 computer program Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 14
- 238000013527 convolutional neural network Methods 0.000 description 13
- 230000001537 neural effect Effects 0.000 description 12
- 210000002569 neuron Anatomy 0.000 description 11
- 238000007781 pre-processing Methods 0.000 description 11
- 238000004422 calculation algorithm Methods 0.000 description 8
- 238000013500 data storage Methods 0.000 description 8
- 238000011176 pooling Methods 0.000 description 8
- 230000004913 activation Effects 0.000 description 7
- 230000004927 fusion Effects 0.000 description 5
- MHABMANUFPZXEB-UHFFFAOYSA-N O-demethyl-aloesaponarin I Natural products O=C1C2=CC=CC(O)=C2C(=O)C2=C1C=C(O)C(C(O)=O)=C2C MHABMANUFPZXEB-UHFFFAOYSA-N 0.000 description 4
- 238000013459 approach Methods 0.000 description 4
- 239000000872 buffer Substances 0.000 description 4
- 238000013480 data collection Methods 0.000 description 4
- 241000282472 Canis lupus familiaris Species 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 241000282326 Felis catus Species 0.000 description 2
- 241000287828 Gallus gallus Species 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 238000004821 distillation Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000003042 antagnostic effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000037361 pathway Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/907—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Library & Information Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了训练跨模态检索模型的方法、跨模态检索的方法和相关装置。涉及人工智能领域。该方法包括利用无监督学习确定参考模型;基于该参考模型和训练数据进行知识蒸馏,得到训练数据的相似数据;利用训练数据的相似数据和训练数据,可以进行有监督学习,从而得到跨模态检索模型。本申请能够实现在不需要人工标注有监督学习使用的训练数据的标签的情况下,还能够保证训练出的跨模态检索模型的较高的准确率。
Description
技术领域
本申请涉及人工智能领域,更具体地,涉及训练跨模态检索模型的方法、跨模态检索的方法和相关装置。
背景技术
早期的检索都是基于文本到文本的检索。例如,利用搜索引擎(例如谷歌(Google)、必应(Bing)等),通过关键词检索网页。但是随着多媒体业务的快速增长,这种基于文本到文本的在同一模态中的检索已经不能满足需求。跨模态检索获得了业界越来越多的关注。文本、图片、视频等每一种多媒体数据都可以看做是一种模态(modal)。利用跨模态检索可以实现利用文本检索图片、利用图片检索文本或者利用文本检索视频等功能。
目前,常见的用于训练跨模态检索模型的方法可以分为有监督方法和无监督方法。
有监督方法是利用标签挖掘存在于跨模态数据中的相关信息来训练用于进行跨模态检索的模型。利用有监督方法训练跨模态检索模型时使用的训练数据集中的每个训练数据都有对应的标签。训练数据的标签通常是人工标注的。因此,对大规模的数据进行标注需要耗费大量的人力和时间。因此,利用有监督方法训练跨模态检索模型在实际应用中受到了限制。
无监督方法训练跨模态检索模型时虽然不需要标注标签,但是利用无监督方法训练出的跨模态检索模型通常不如利用有监督方法训练出的跨模态检索模型的准确率高。
发明内容
本申请提供一种训练跨模态检索模型的方法、跨模态检索的方法和相关装置,能够得到准确率较高的跨模态检索模型。
第一方面,本申请实施例提供一种训练跨模态检索模型的方法,该方法包括:利用跨模态数据集进行无监督学习,得到参考模型,其中该跨模态数据集包括M组跨模态数据,该M组跨模态数据中的每组跨模态数据包括N个训练数据,该N个训练数据是相关的,该N个训练数据分别属于N个模态,N为大于或等于2的正整数,M为大于或等于1的正整数;根据K个训练数据和该参考模型,确定K个相似数据组,该K个相似数据组与该K训练数据一一对应,该K个相似数据组中的每个相似数据组包括至少一个与对应的训练数据相似的数据,其中该K个训练数据分别属于该M组跨模态数据中的K组跨模态数据且该K个训练数据的模态相同,K为大于或等于2且小于或等于M的正整数;利用该K组跨模态数据和该K个相似数据组对初始跨模态检索模型进行训练,得到跨模态检索模型,其中该K个相似数据组在进行训练时分别作为该K组跨模态数据的相似信息。
上述技术方案利用无监督学习确定参考模型;基于该参考模型和训练数据进行知识蒸馏,得到训练数据的相似数据;利用训练数据的相似数据和训练数据,可以进行有监督学习,从而得到跨模态检索模型。本申请能够实现在不需要人工标注有监督学习使用的训练数据的标签的情况下,还能够保证训练出的跨模态检索模型的较高的准确率。
结合第一方面,在第一方面的一种可能的实现方式中,该根据K个训练数据和该参考模型,确定K个相似数据组,包括,将该K个训练数据分别输入该参考模型,得到K个特征数据;根据该K个特征数据,确定该K个相似数据组。
结合第一方面,在第一方面的一种可能的实现方式中,该根据该K个特征数据,确定该K个相似数据组,包括:根据该K个特征数据中的第i个特征数据和Ki个特征数据,确定Ki个相似度,其中该Ki个特征数据为该K个特征数据中除该第i个特征数据以外的K-1个特征数据,i=1,…,K;根据该Ki个相似度,确定相似数据组Ki,该相似数据组Ki为该K个相似数据组中对应于该第i个特征数据的相似数据组。
结合第一方面,在第一方面的一种可能的实现方式中,该根据该K个特征数据中的第i个特征数据和Ki个特征数据,确定Ki个相似度,包括:根据以下公式确定该Ki个相似度中的第j个相似度,j=1,…,K-1:
Si,j=(2-|fi-fj|2)/2,
其中,Si,j表示该第j个相似度,fi表示该第i个特征数,j表示该Ki个特征数据中的第j个特征数据,符号||2表示求L2范数。
结合第一方面,在第一方面的一种可能的实现方式中,该K个训练数据的模态为图像。利用模态为图像的训练数据得到的相似数据组可以使得最终确定的跨模态检索模型能够实现较高的准确率。
结合第一方面,在第一方面的一种可能的实现方式中,该根据该Ki个相似度,确定相似数据组Ki,包括:确定该Ki个相似度中最大的L个相似度对应的数据为该相似数据组Ki中的相似数据,L为大于或等于1且小于Ki的正整数;或者,确定该Ki个相似度中大于预设相似度阈值的至少一个相似度对应的数据为该相似数据组Ki中的相似数据。
结合第一方面,在第一方面的一种可能的实现方式中,该利用该K组跨模态数据和该K个相似数据组进行训练,得到跨模态检索模型,包括:确定多个参考数据组,该多个参考数据组中的每个参考数据组包括一个训练数据和至少一个相似数据,该每个参考数据组中的训练数据属于该K组跨模态数据中的一组跨模态数据,该每个参考数据组中的至少一个相似数据属于该K个相似数据组中的一个相似数据组,该每个参考数据组中的训练数据所属的跨模态数据与该每个参考数据组中的至少一个相似数据所属的相似数据组对应;利用该多个参考数据组对该初始跨模态检索模型进行训练,得到该跨模态检索模型。
第二方面,本申请实施例提供一种跨模态检索方法,该方法包括:获取输入数据;根据跨模态检索模型,确定对应于该输入数据的输出数据,其中该跨模态检索模型是利用如第一方面或第一方面的任一种可能的实现方式得到的;确定该输出数据与检索集合中所有样本的相似性,得到该输出数据与该所有样本的相似度;根据该输出数据与该所有样本的相似度,确定检索结果。
第三方面,本申请实施例提供一种训练装置,该训练装置包括用于实现上述第一方面或第一方面的任意一种可能的实现方式的单元。该训练装置可以为训练设备或者用于训练设备的部件(例如芯片、电路等)。
第四方面,本申请实施例提供一种跨模态检索装置,该跨模态检索装置包括用于实现上述第二方面所述方法的单元。该跨模态检索装置可以为跨模态检索设备或者用于跨模态检索设备的部件(例如芯片、电路等)。
第五方面,本申请实施例提供一种训练设备,包括收发器和处理器。可选地,该训练设备还包括存储器。该处理器用于控制收发器收发信号,该存储器用于存储计算机程序,该处理器用于从存储器中调用并运行该计算机程序,使得该训练设备执行上述第一方面或第一方面的任一种可能的实现方式的方法。
第六方面,本申请实施例提供一种跨模态检索设备,包括收发器和处理器。可选地,该跨模态检索设备还包括存储器。该处理器用于控制收发器收发信号,该存储器用于存储计算机程序,该处理器用于从存储器中调用并运行该计算机程序,使得该跨模态检索设备执行上述第二方面的方法。
第七方面,本申请实施例提供一种数据处理系统,该系统包括上述第五方面的训练设备和第六方面跨模态检索设备。
第八方面,本申请实施例提供一种电子装置,该电子装置可以为用于实现上述第一方面或第一方面的任一种可能的实现方式中的训练设备,或者为设置在训练设备中的芯片。该电子装置包括:处理器,与存储器耦合,可用于执行存储器中的指令和/或程序代码,以实现上述第一方面或第一方面的任一种可能的实现方式中的方法。可选地,该电子装置还包括存储器。可选地,该电子装置还包括通信接口,处理器与通信接口耦合。
当该电子装置为训练设备时,该通信接口可以是收发器,或,输入/输出接口。
当该电子装置为配置于训练设备中的芯片时,该通信接口可以是输入/输出接口。
可选地,该收发器可以为收发电路。可选地,该输入/输出接口可以为输入/输出电路。
第九方面,本申请实施例提供一种电子装置,该电子装置可以为用于实现上述第二方面方法设计中的跨模态检索设备,或者为设置在跨模态检索设备中的芯片。该电子装置包括:处理器,与存储器耦合,可用于执行存储器中的指令和/或程序代码,以实现上述第二方面的方法。可选地,该电子装置还包括存储器。可选地,该电子装置还包括通信接口,处理器与通信接口耦合。
当该电子装置为跨模态检索设备时,该通信接口可以是收发器,或,输入/输出接口。
当该电子装置为配置于跨模态检索设备中的芯片时,该通信接口可以是输入/输出接口。
可选地,该收发器可以为收发电路。可选地,该输入/输出接口可以为输入/输出电路。
第十方面,本申请实施例提供一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行上述第一方面或第一方面的任一种可能的实现方式的方法。
第十一方面,本申请实施例提供一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行上述第二方面的方法。
第十二方面,本申请实施例提供一种计算机可读介质,所述计算机可读介质存储有程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行上述第一方面或第一方面的任一种可能的实现方式的方法。
第十三方面,本申请实施例提供一种计算机可读介质,所述计算机可读介质存储有程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行上述第二方面的方法。
附图说明
图1是一个本申请实施例提供的系统架构的示意图。
图2示出了三组跨模态数据。
图3为本发明实施例提供的一种芯片硬件结构。
图4是本申请实施例提供的一种用于训练跨模态检索模型的方法的示意性流程图。
图5是本申请实施例提供的一种无监督学习的示意性流程图。
图6是本申请实施例提供的一种知识蒸馏过程的示意性流程图。
图7是本申请实施例提供的有监督学习的示意性流程图。
图8是根据本申请实施例提供的跨模态检索方法的示意性流程图。
图9是根据本申请实施例提供的一种跨模态检索模型的训练方法的示意性流程图。
图10是根据本申请实施例提供的一种训练装置的示意性结构框图。
图11是本申请实施例提供的一种训练设备的示意性结构框图。
图12是根据本申请实施例提供的一种跨模态检索装置的示意性结构框图。
图13是本申请实施例提供的一种跨模态检索设备的示意性结构框图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
另外,在本申请实施例中,“示例的”、“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用示例的一词旨在以具体方式呈现概念。
本申请实施例中,“相应的(corresponding,relevant)”和“对应的(corresponding)”有时可以混用,应当指出的是,在不强调其区别时,其所要表达的含义是一致的。
本申请实施例中,有时候下标如W1可能会笔误为非下标的形式如W1,在不强调其区别时,其所要表达的含义是一致的。
本申请实施例描述的网络架构以及业务场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
由于本申请实施例涉及大量神经网络的应用,为了便于理解,下面先对本申请实施例涉及的相关术语及神经网络等相关概念进行介绍。
(1)神经网络
神经网络可以是由神经单元组成的,神经单元可以是指以xs和截距1为输入的运算单元,该运算单元的输出可以为:
其中,s=1、2、……n,n为大于1的自然数,Ws为xs的权重,b为神经单元的偏置。f为神经单元的激活函数(activation functions),用于将非线性特性引入神经网络中,来将神经单元中的输入信号转换为输出信号。该激活函数的输出信号可以作为下一层卷积层的输入。激活函数可以是sigmoid函数。神经网络是将许多个上述单一的神经单元联结在一起形成的网络,即一个神经单元的输出可以是另一个神经单元的输入。每个神经单元的输入可以与前一层的局部接受域相连,来提取局部接受域的特征,局部接受域可以是由若干个神经单元组成的区域。
(2)深度神经网络
深度神经网络(Deep Neural Network,DNN),也称多层神经网络,可以理解为具有很多层隐含层的神经网络,这里的“很多”并没有特别的度量标准。从DNN按不同层的位置划分,DNN内部的神经网络可以分为三类:输入层,隐含层,输出层。一般来说第一层是输入层,最后一层是输出层,中间的层数都是隐含层。层与层之间是全连接的,也就是说,第i层的任意一个神经元一定与第i+1层的任意一个神经元相连。虽然DNN看起来很复杂,但是就每一层的工作来说,其实并不复杂,简单来说就是如下线性关系表达式:其中,是输入向量,是输出向量,是偏移向量,W是权重矩阵(也称系数),α()是激活函数。每一层仅仅是对输入向量经过如此简单的操作得到输出向量由于DNN层数多,则系数W和偏移向量的数量也就很多了。这些参数在DNN中的定义如下所述:以系数W为例:假设在一个三层的DNN中,第二层的第4个神经元到第三层的第2个神经元的线性系数定义为上标3代表系数W所在的层数,而下标对应的是输出的第三层索引2和输入的第二层索引4。总结就是:第L-1层的第k个神经元到第L层的第j个神经元的系数定义为需要注意的是,输入层是没有W参数的。在深度神经网络中,更多的隐含层让网络更能够刻画现实世界中的复杂情形。理论上而言,参数越多的模型复杂度越高,“容量”也就越大,也就意味着它能完成更复杂的学习任务。训练深度神经网络的也就是学习权重矩阵的过程,其最终目的是得到训练好的深度神经网络的所有层的权重矩阵(由很多层的向量W形成的权重矩阵)。
(3)卷积神经网络
卷积神经网络(CNN,Convolutional Neuron Network)是一种带有卷积结构的深度神经网络。卷积神经网络包含了一个由卷积层和子采样层构成的特征抽取器。该特征抽取器可以看作是滤波器,卷积过程可以看作是使用一个可训练的滤波器与一个输入的图像或者卷积特征平面(feature map)做卷积。卷积层是指卷积神经网络中对输入信号进行卷积处理的神经元层。在卷积神经网络的卷积层中,一个神经元可以只与部分邻层神经元连接。一个卷积层中,通常包含若干个特征平面,每个特征平面可以由一些矩形排列的神经单元组成。同一特征平面的神经单元共享权重,这里共享的权重就是卷积核。共享权重可以理解为提取图像信息的方式与位置无关。这其中隐含的原理是:图像的某一部分的统计信息与其他部分是一样的。即意味着在某一部分学习的图像信息也能用在另一部分上。所以对于图像上的所有位置,都能使用同样的学习得到的图像信息。在同一卷积层中,可以使用多个卷积核来提取不同的图像信息,一般地,卷积核数量越多,卷积操作反映的图像信息越丰富。
卷积核可以以随机大小的矩阵的形式初始化,在卷积神经网络的训练过程中卷积核可以通过学习得到合理的权重。另外,共享权重带来的直接好处是减少卷积神经网络各层之间的连接,同时又降低了过拟合的风险。
(4)循环神经网络(RNN,Recurrent Neural Networks)是用来处理序列数据的。在传统的神经网络模型中,是从输入层到隐含层再到输出层,层与层之间是全连接的,而对于每一层层内之间的各个节点是无连接的。这种普通的神经网络虽然解决了很多难题,但是却仍然对很多问题却无能无力。例如,你要预测句子的下一个单词是什么,一般需要用到前面的单词,因为一个句子中前后单词并不是独立的。RNN之所以称为循环神经网路,即一个序列当前的输出与前面的输出也有关。具体的表现形式为网络会对前面的信息进行记忆并应用于当前输出的计算中,即隐含层本层之间的节点不再无连接而是有连接的,并且隐含层的输入不仅包括输入层的输出还包括上一时刻隐含层的输出。理论上,RNN能够对任何长度的序列数据进行处理。对于RNN的训练和对传统的CNN或DNN的训练一样。同样使用误差反向传播算法,不过有一点区别:即,如果将RNN进行网络展开,那么其中的参数,如W,是共享的;而如上举例上述的传统神经网络却不是这样。并且在使用梯度下降算法中,每一步的输出不仅依赖当前步的网络,还依赖前面若干步网络的状态。该学习算法称为基于时间的反向传播算法Back propagation Through Time(BPTT)。
既然已经有了卷积神经网络,为什么还要循环神经网络?原因很简单,在卷积神经网络中,有一个前提假设是:元素之间是相互独立的,输入与输出也是独立的,比如猫和狗。但现实世界中,很多元素都是相互连接的,比如股票随时间的变化,再比如一个人说了:我喜欢旅游,其中最喜欢的地方是云南,以后有机会一定要去。这里填空,人类应该都知道是填“云南”。因为人类会根据上下文的内容进行推断,但如何让机器做到这一步?RNN就应运而生了。RNN旨在让机器像人一样拥有记忆的能力。因此,RNN的输出就需要依赖当前的输入信息和历史的记忆信息。
(5)损失函数
在训练深度神经网络的过程中,因为希望深度神经网络的输出尽可能的接近真正想要预测的值,所以可以通过比较当前网络的预测值和真正想要的目标值,再根据两者之间的差异情况来更新每一层神经网络的权重向量(当然,在第一次更新之前通常会有初始化的过程,即为深度神经网络中的各层预先配置参数),比如,如果网络的预测值高了,就调整权重向量让它预测低一些,不断的调整,直到深度神经网络能够预测出真正想要的目标值或与真正想要的目标值非常接近的值。因此,就需要预先定义“如何比较预测值和目标值之间的差异”,这便是损失函数(loss function)或目标函数(objective function),它们是用于衡量预测值和目标值的差异的重要方程。其中,以损失函数举例,损失函数的输出值(loss)越高表示差异越大,那么深度神经网络的训练就变成了尽可能缩小这个loss的过程。
(6)反向传播算法
卷积神经网络可以采用误差反向传播(back propagation,BP)算法在训练过程中修正初始的超分辨率模型中参数的大小,使得超分辨率模型的重建误差损失越来越小。具体地,前向传递输入信号直至输出会产生误差损失,通过反向传播误差损失信息来更新初始的超分辨率模型中参数,从而使误差损失收敛。反向传播算法是以误差损失为主导的反向传播运动,旨在得到最优的超分辨率模型的参数,例如权重矩阵。
(7)生成式对抗网络
生成式对抗网络(GAN,Generative Adversarial Networks)是一种深度学习模型。该模型中至少包括两个模块:一个模块是生成模型(Generative Model),另一个模块是判别模型(Discriminative Model),通过这两个模块互相博弈学习,从而产生更好的输出。生成模型和判别模型都可以是神经网络,具体可以是深度神经网络,或者卷积神经网络。GAN的基本原理如下:以生成图片的GAN为例,假设有两个网络,G(Generator)和D(Discriminator),其中G是一个生成图片的网络,它接收一个随机的噪声z,通过这个噪声生成图片,记做G(z);D是一个判别网络,用于判别一张图片是不是“真实的”。它的输入参数是x,x代表一张图片,输出D(x)代表x为真实图片的概率,如果为1,就代表100%是真实的图片,如果为0,就代表不可能是真实的图片。在对该生成式对抗网络进行训练的过程中,生成网络G的目标就是尽可能生成真实的图片去欺骗判别网络D,而判别网络D的目标就是尽量把G生成的图片和真实的图片区分开来。
利用本申请实施例提供的方法得到的跨模态检索模型可以应用到跨模态检索的场景。具体而言,当需要检索某一模态数据(可以称为输入数据)的另一模态的相关数据(可以称为检索结果)时,可以将该输入数据输入至该跨模态检索模型,得到对应于该输入数据的哈希编码。然后,利用该哈希编码确定该输入数据的检索结果。
图1是一个本申请实施例提供的系统架构的示意图。如系统架构100所示,数据采集设备160用于采集训练数据。本申请实施例中的训练数据是跨模态数据。跨模态数据中包括多个模态的数据,该多个模态的数据之间是相关的。假设该跨模态数据中包括两个模态的数据且两个模态为图片和文本。那么该文本是用于描述图片的。例如,图2示出了三组跨模态数据。跨模态数据1中的图片是一只猫。因此,跨模态数据1中的文本可以是“猫”。跨模态数据2中的图片是一只小柯基犬。因此,跨模态数据2中的文本可以是“狗”、“小狗”和“柯基”。跨模态数据3中的图片是一只小鸡。因此,跨模态数据3中的文本可以是“鸡”和“小鸡”。
数据采集设备160采集到的跨模态数据可以存储数据库130。存入到数据库130中的多组跨模态数据可以统称为跨模态数据集。训练设备120基于数据库130中的跨模态数据集训练得到跨模态检索模型101。
在实际的应用中,所述数据库130中维护的跨模态数据不一定都来自于数据采集设备160的采集,也有可能是从其他设备接收得到的。另外需要说明的是,训练设备120也不一定完全基于数据库130维护的跨模态数据进行的训练,也有可能从云端或其他地方获取跨模态数据进行模型训练,上述描述不应该作为对本申请实施例的限定。
根据训练设备120训练得到的跨模态检索模型101可以应用于不同的系统或设备中,如应用于图1所示的执行设备110,所述执行设备110可以是终端,如手机终端,平板电脑,笔记本电脑,车载终端等,还可以是服务器或者云端等。在图1中,执行设备110配置有输入/输出(Input/Output,I/O)接口112,用于与外部设备进行数据交互,用户可以通过客户设备140向I/O接口112输入数据,所述输入数据在本申请实施例中可以包括:与跨模态检索模型101对应的模态的数据。例如,若跨模态检索模型101是基于包含有图片和文本的跨模态数据训练的到的,那么所述输入数据可以是图片或者文本。若跨模态检索模型101是基于包含有图片、文本和视频的跨模态数据训练得到的,那么所述输入数据可以是图片、文本或者视频。
在一些实施例中,系统架构100可以包括预处理模块113。预处理模块113用于根据I/O接口112接收到的输入数据进行预处理。在一些实施例中,用户输入的输入数据可能是一句或者一段话。在此情况下,预处理模块113可以对该输入数据进行分词处理并确定该输入数据的有用信息。例如,用户输入的输入数据是:“我想搜索一张小狗的图片”。预处理模块113对该输入数据进行预处理后得到的处理后数据可以是:“小狗,图片”。在另一些实施例中,训练设备120训练跨模态检索模型101可能只能用于处理灰度图。但是用户输入的数据是一张彩色图。在此情况下,预处理模块113可以将用户输入的彩色图转换为灰度图。预处理模块113将进行预处理后得到的数据输入到计算模块111。
在另一些实施例中,输入到计算模块111的数据可以不需要进行预处理。在此情况下,系统架构100中也可以不包括预处理模块。在此情况下,输入数据可以直接输入到计算模块111。
计算模块111用于将输入数据(或者预处理后的输入数据)输入至跨模态检索模型101,得到对应于该输入数据的哈希编码。计算模块111计算该哈希编码与检索集合中所有样本的相似性,得到一个检索列表。检索表中包括检索集合中的所有样本与该哈希编码的相似度。确定该检索列表中相似度排名靠前的一个或多个相似度对应的样本或者相似度大于一个预设阈值的样本作为该输入数据的检索结果。
在执行设备110对输入数据进行预处理,或者在执行设备110的计算模块111执行计算等相关的处理过程中,执行设备110可以调用数据存储系统150中的数据、代码等以用于相应的处理,也可以将相应处理得到的数据、指令等存入数据存储系统150中。
最后,I/O接口112将计算模块111得到的检索结果作为输出结果返回给客户设备140,从而提供给用户。
值得说明的是,训练设备120可以针对不同的目标或称不同的任务,基于不同的训练数据生成相应的跨模态检索模型101,该相应的跨模态检索模型101即可以用于实现上述目标或完成上述任务,从而为用户提供所需的结果。
在图1中所示情况下,用户可以手动给定输入数据,该手动给定可以通过I/O接口112提供的界面进行操作。另一种情况下,客户设备140可以自动地向I/O接口112发送输入数据,如果要求客户设备140自动发送输入数据需要获得用户的授权,则用户可以在客户设备140中设置相应权限。用户可以在客户设备140查看执行设备110输出的结果,具体的呈现形式可以是显示、声音、动作等具体方式。客户设备140也可以作为数据采集端,采集如图所示输入I/O接口112的输入数据及输出I/O接口112的输出结果作为新的样本数据,并存入数据库130。当然,也可以不经过客户设备140进行采集,而是由I/O接口112直接将如图所示输入I/O接口112的输入数据及输出I/O接口112的输出结果,作为新的样本数据存入数据库130。
值得注意的是,图1仅是本发明实施例提供的一种系统架构的示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制,例如,在附图1中,数据存储系统150相对执行设备110是外部存储器,在其它情况下,也可以将数据存储系统150置于执行设备110中。
如图1所示,根据训练设备120训练得到跨模态检索模型101,该跨模态检索模型101在本申请实施例中可以包括多个深度神经网络。该多个深度神经网络分别对应于不同的模态。例如,假设跨模态检索模型101可以用于进行文本和图片的跨模态检索,那么跨模态检索模型101可以包括对应于图片的深度神经网络(可以称为图片模态神经网络)和对应于文本的深度神经网络(可以称为文本模态神经网络)。
在一些实施例中,该图片模态神经网络可以是一个19层的深度神经网络。该图片模态神经网络中的前18层与视觉几何组(Visual Geometry Group,VGG)VGG 19模型类似。表1示出了VGG 19模型的网络结构。
表1
conv3-64 |
conv3-64 |
maxpool |
conv3-128 |
conv3-128 |
maxpool |
conv3-256 |
conv3-256 |
conv3-256 |
conv3-256 |
maxpool |
conv3-512 |
conv3-512 |
conv3-512 |
conv3-512 |
maxpool |
conv3-512 |
conv3-512 |
conv3-512 |
conv3-512 |
maxpool |
FC-4096 |
FC-4096 |
FC-1000 |
soft-max |
如表1所示的conv表示卷积层,conv3表示卷积层使用3×3的卷积核,conv3-64表示深度64。相应的conv3-128表示深度128,conv3-256表示深度256,conv3-512表示深度512。maxpool表示最大池化层。FC表示全连接(Fully Connected)层。FC-4096表示输出层连接4096个神经元的全连接层。相应的,FC-1000表示输出层连接1000个神经元的全连接层。soft-max表示softmax操作,即使用softmax函数进行数值处理。
在输入至跨模态检索模型101的输入数据是图片的情况下,跨模态检索模型101中的图片模态神经网络会负责处理该图片。该图片会依次经过该图片模态神经网络的第一层至第18层的处理,得到样本特征。图片神经网络的第19层是输出层。该输出层可以获取第18层输出的样本特征,将该样本特征映射到汉明空间,从而得到该图片(即输入数据)的哈希编码。该哈希编码可以是长度为16比特(bit)、32bit、64bit或128bit等的二值化编码。表2是与VGG 19类似的图片模态神经网络的示意。
表2
conv3-64 |
conv3-64 |
maxpool |
conv3-128 |
conv3-128 |
maxpool |
conv3-256 |
conv3-256 |
conv3-256 |
conv3-256 |
maxpool |
conv3-512 |
conv3-512 |
conv3-512 |
conv3-512 |
maxpool |
conv3-512 |
conv3-512 |
conv3-512 |
conv3-512 |
maxpool |
FC-4096 |
FC-4096 |
输出层 |
如表2所示,该图片模态神经网络的前18层(不包含maxpool)与VGG 19的前18层(不包含maxpool)一致,最后一层为用于将该样本特征映射到汉明空间的输出层。
在另一些实施例中,该图片模态神经网络可以是其他结构的神经网络。例如,该图片模态神经网络可以是具有与VGG 16、深度残差网络(deep residual network,ResNet)等类似的网络结构的神经网络。以VGG 16为例,该图片模态神经网络的前15层(不包含maxpool)与VGG 16的前15层(不包含maxpool)相同,第16层是用于将该样本特征映射到汉明空间的输出层。
在一些实施例中,文本模态神经网络可以是一个多尺度融合模型(multi-scalefusion model)。该多尺度融合模型包括多个平均池化层(average pooling layer)、一个卷积层以及一个输出层。
例如,在一些实施例中,该多尺度融合模型可以依次包括5个平均池化层、一个卷积核为1×1的卷积层以及一个哈希层。
又如,在另一些实施例中,该多尺度融合模型可以依次包括7个平均池化层、一个卷积核为1×1的卷积层以及一个输出层。
在输入至跨模态检索模型101的输入数据是文本的情况下,跨模态检索模型101中的文本模态神经网络会负责处理该文本。该文本会依次经过该文本模态神经网络的多个平均池化层和卷积层,得到样本特征。文本神经网络的输出层获取卷积层输出的样本特征,将该样本特征映射到汉明空间,从而得到该文本(即输入数据)的哈希编码。该哈希编码可以是长度为16比特(bit)、32bit、64bit或128bit等的二值化编码。
该文本模态神经网络也可以是其他结构的神经网络。例如,在一些实施例中可以是一个两层全连接结构的神经网络。第一层为输入层,第二层为输出层。第一层用于根据输入的文本确定样本特征,第二层用于将该样本特征映射到汉明空间。又如,在另一些实施例中,该文本模态神经网络可以是一个由word2vector和输出层组成的神经网络。word2vector用于根据输入的文本确定样本特征,输出层用于将该样本特征输出到汉明空间。
图3为本发明实施例提供的一种芯片硬件结构,该芯片包括神经网络处理器30。该芯片可以被设置在如图1所示的执行设备110中,用以完成计算模块111的计算工作。该芯片也可以被设置在如图1所示的训练设备120中,用以完成训练设备120的训练工作并输出跨模态检索模型101。上述神经网络中各层的算法均可在如图3所示的芯片中得以实现。
神经网络处理器30可以是神经网络处理器(Neural-network Processing Unit,NPU),张量处理单元(Tensor Processing Unit,TPU),或者图形处理器(GraphicsProcessing Unit,GPU)等一切适合用于大规模异或运算处理的处理器。以NPU为例:NPU可以作为协处理器挂载到主CPU(Host CPU)上,由主CPU为其分配任务。NPU的核心部分为运算电路303,通过控制器304控制运算电路303提取存储器(301和302)中的矩阵数据并进行乘加运算。
在一些实现中,运算电路303内部包括多个处理单元(Process Engine,PE)。在一些实现中,运算电路303是二维脉动阵列。运算电路303还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。在一些实现中,运算电路303是通用的矩阵处理器。
举例来说,假设有输入矩阵A,权重矩阵B,输出矩阵C。运算电路303从权重存储器302中取矩阵B的权重数据,并缓存在运算电路303中的每一个PE上。运算电路303从输入存储器301中取矩阵A的输入数据,根据矩阵A的输入数据与矩阵B的权重数据进行矩阵运算,得到的矩阵的部分结果或最终结果,保存在累加器(accumulator)308中。
统一存储器306用于存放输入数据以及输出数据。权重数据直接通过存储单元访问控制器(DMAC,Direct Memory Access Controller)305,被搬运到权重存储器302中。输入数据也通过DMAC被搬运到统一存储器306中。
总线接口单元(BIU,Bus Interface Unit)310,用于DMAC和取指存储器(Instruction Fetch Buffer)309的交互;总线接口单元301还用于取指存储器309从外部存储器获取指令;总线接口单元301还用于存储单元访问控制器305从外部存储器获取输入矩阵A或者权重矩阵B的原数据。
DMAC主要用于将外部存储器DDR中的输入数据搬运到统一存储器306中,或将权重数据搬运到权重存储器302中,或将输入数据搬运到输入存储器301中。
向量计算单元307多个运算处理单元,在需要的情况下,对运算电路303的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。向量计算单元307主要用于神经网络中非卷积层,或全连接层(FC,fully connected layers)的计算,具体可以处理:池化(Pooling),归一化(Normalization)等的计算。例如,向量计算单元307可以将非线性函数应用到运算电路303的输出,例如累加值的向量,用以生成激活值。在一些实现中,向量计算单元307生成归一化的值、合并值,或二者均有。
在一些实现中,向量计算单元307将经处理的向量存储到统一存储器306。在一些实现中,经向量计算单元307处理过的向量能够用作运算电路303的激活输入,例如用于神经网络中后续层中的使用。
控制器304连接的取指存储器(instruction fetch buffer)309,用于存储控制器304使用的指令;
统一存储器306,输入存储器301,权重存储器302以及取指存储器309均为On-Chip存储器。外部存储器独立于该NPU硬件架构。
图4是本申请实施例提供的一种用于训练跨模态检索模型的方法的示意性流程图。如图4所示,该跨模态检索模型的训练方法可以分为三个步骤。
401,无监督学习。
402,知识蒸馏。
403,有监督学习。
下面结合图5至图7,对步骤401至步骤403进行详细描述。
图5是本申请实施例提供的一种无监督学习的示意性流程图。
501,获取跨模态数据集。该跨模态数据集包括M组跨模态数据,该M组跨模态数据中的每组跨模态数据包括N个训练数据。该N个训练数据是相关。该N个训练数据分别属于N个模态,N为大于或等于2的正整数,M为大于或等于1的正整数。
为了便于描述,以下以文本和图片两个模态的跨模态检索为例对本申请进行描述。在此情况下,该M组跨模态数据中的每组跨模态数据可以包括两个训练数据,这里两个训练数据分别为文本训练数据和图片训练数据。
502,根据该跨模态数据集,进行无监督学习,得到参考模型。
可选的,该参考模型可以是利用无监督生成式对抗跨模态哈希(UnsupervisedGenerative Adversarial Cross-modal Hashing,UGACH)方法确定的。在一些实施例中,利用UGACH确定该参考模型可以包括:确定生成网络和判决网络。步骤502中确定的参考模型就是该判决网络。该生成网络和该判决网络均由两层全连接网络构成。第一层网络将输入的数据映射到共同的特征空间,第二层将特征表示映射到汉明空间。该生成网络的目标是基于输入数据尽可能生成真实样本对去欺骗判别判决网络,而判别网络的目标就是尽量把生成网络生成的挑战样本对和真实样本对区分开来。具体地,生成网络可以为输入的样本(可以称为询问(query)样本)挑选相关样本,具体做法也是将询问样本和所有候选样本通过网络映射为特征表示,再计算他们之间的相似性,选出相似的样本对。该询问样本和该候选样本都来自于该跨模态数据集。判决网络接收到生成网络生成的样本对和挑选自相关关系图的样本对,然后尝试分辨两者。换句话说,生成网络试图生成和挑选自相关关系图的样本对相似的样本对,判决网络判断样本对是生成网络生成的还是挑选自自相关关系图的样本对。UGACH利用图片、文本这些数据的原始特征来计算样本之间的距离,从而为各个模态的数据分别构建相关关系图(认为距离该样本最近的一些样本为其相关样本,所以称为最近邻关系)。这种方法扩充了跨模态数据集中原本存在的相关关系(样本对)。这样,生成网络和判决网络就构成了一个动态的“博弈”过程,也即“生成式对抗网络”中的“对抗”。最后博弈的结果,在理想的状态下,判决网络可以确定一个样本对是由生成网络生成的还是来挑选自自相关关系图的。
例如,来自于生成网络的样本对为<图片1,文本1>,来自于自相关关系图的样本对为<图片1,文本3>。这两个样本对输入到判决网络后,判决网络可以分别确定对应于图片1的特征(可以称为特征1)、对应于文本1的特征(可以称为特征2)和对应于文本3的特征(可以称为特征3)。判决网络确定特征1和特征2之间的距离(例如汉明距离)和特征1和特征3之间的距离。判决网络的目的是要使得特征1和特征3之间的距离小于特征1和特征2之间的距离。最终训练得到的判决网络在获取到一个样本对(例如<图片x,文本y>后,确定对应于图片x的特征(可以称为特征x)和对应于文本y的特征(可以称为特征y),确定特征x和特征y之间的距离,根据确定的距离来确定<图片x,文本y>是来自于生成网络还是自相关关系图。可选的,在另一些实施例中,该可以利用该跨模态数据集中的跨模态数据对初始参考模型进行训练,得到该参考模型。例如,首先对该初始参考模型中的每层的参数进行初始化(即,为每个参数赋予一个初始值),进而利用该跨模态数据集中的跨模态数据对该初始参考模型进行训练,直到该初始参考模型中的损失函数收敛或者该跨模态数据集中所有的跨模态数据被用于训练,则认为训练完成,训练后的模型称为参考模型。该初始参考模型可采用业界现有的一些无监督学习模型,例如:无监督相关哈希(Unsupervised ConcatenationHashing,UCH)、跨视图哈希(Cross-view Hashing,CVH)、复合相关量化(CompositeCorrelation Quantization,CCQ)等。
利用该参考模型,可以进行知识蒸馏。该知识蒸馏可以包括:根据该跨模态数据集中的跨模态数据和该参考模型,确定多个相似数据组。该多个相似数据组可以进行后续的有监督学习。
下面结合图6对知识蒸馏进行详细描述。
图6是本申请实施例提供的一种知识蒸馏过程的示意性流程图。
601,将K个训练数据分别输入该参考模型,得到K个特征数据,K为大于或等于1的正整数。
如上所述,在一些实施例中,该参考模型可以是判别网络。在此情况下,训练数据输入该判别网络后可以得到对应于该训练数据的特征数据。该特征数据可以是长度为16比特(bit)、32bit、64bit或128bit等的二值化编码。
该K个训练数据分别属于K组跨模态数据。该K组跨模态数据属于该跨模态数据集。
可选的,在一些实施例中,该K组跨模态数据可以是该跨模态数据集中的部分跨模态数据。在此情况下,若该跨模态数据集包括M组跨模态数据,则K为大于或等于且小于M的正整数。
可选的,在另一些实施例中,该K组跨模态数据可以是该跨模态数据集中的全部跨模态数据。在此情况下,若该跨模态数据集包括M组跨模态数据,则K等于M。
可选的,在一些实施例中,该K个训练数据的模态相同。换句话说,该K个训练数据中的任意两个训练数据的模态相同。例如,在一些实施例中,该K个训练数据是跨模态数据中的文本。在另一些实施例中,该K个训练数据是跨模态数据中的图片。
可选的,在一些实施例中,该K个训练数据中的模态可以不完全相同。例如,在一些实施例中,该K个训练数据中的部分训练数据是跨模态数据中的文本,在另一些实施例中该K个训练数据是跨模态数据中的图片。
602,根据该K个特征数据,确定K个相似数据组。
可选的,在一些实施例中,该根据该K个特征数据,确定K个相似数据组可以包括:根据该K个特征数据中的第i个特征数据和Ki个特征数据,确定Ki个相似度;根据该Ki个相似度,确定相似数据组Ki。
Ki个特征数据是K个特征数据中除第i个特征数据以外的K-1个特征数据。例如,假设K的值为5。f1、f2、f3、f4和f5分别表示五个特征数据。若i=1,那么根据该K个特征数据中的第i个特征数据和Ki个特征数据,确定Ki个相似度可以是:根据f1以及f2至f5确定4个相似度;若i=2,那么根据该K个特征数据中的第i个特征数据和Ki个特征数据,确定Ki个相似度可以是:根据f2以及f1、f3至f5确定4个相似度,以此类推。
相似数据组Ki表示K个相似数据组中对应于第i个特征数据的相似数据组。还以K=5为例,相似数据组K1是对应于f1(即第一个特征数据)的相似数据组,相似数据组K2是对应于f2(即第二个特征数据)的相似数据组,相似数据组K3是对应于f3的相似数据组,相似数据组K4是对应于f4的相似数据,相似数据组K5是对应于f5的相似数据组。
为了便于描述,以下以fi表示K个特征数据中的第i个特征数据,fj表示Ki个特征数据中的第j个特征数据,Si,j表示根据fi和fj确定的相似度,j=1,…,K-1。由于fj表示Ki个特征数据中的第j个特征数据,那么根据fi和fj确定的相似度Si,j是Ki个相似度中的第j个相似度。
可选的,在一些实施例中,Si,j、fi和fj满足以下关系:
Si,j=(2-|fi-fj|2)/2, (公式1.2)
符号||2表示求L2范数。
在此情况下,公式1.1可以表示为:
在此情况下,公式1.1可以表示为:
可选的,在另一些实施例中,在知识蒸馏的过程中,除了将K个训练数据输入至该参考模型外,还可以将于该K个训练数据属于同一跨模态数据的K个训练数据也输入至该参考模型,得到K个特征数据。还以包括图片和文本两个模态的跨模态数据为例。在此情况下,输入至参考模型的训练数据包括K组跨模态数据中的K个文本训练数据和K个图片训练数据。在此情况下,该Ki个相似度中的第j个相似度可以根据以下公式确定:
其中,表示根据K组跨模态数据中的第i组跨模态数据中的图片训练数据确定的特征数据,表示根据Ki组跨模态数据中的第j组跨模态数据中的图片训练数据确定的特征数据,表示根据K组跨模态数据中的第i组跨模态数据中的训练数据确定的特征数据,表示根据Ki组跨模态数据中的第j组跨模态数据中的图片训练数据确定的特征数据。Ki组跨模态数据是K组跨模态数据中除了第i组跨模态数据以外的K-1组跨模态数据。
根据公式1.1至公式1.4确定的相似度的值越大,表示对应的两个训练数据越相似。例如,若S1,2大于S1,3,则表示与训练数据3相比,训练数据1和训练数据2更为相似。
可选的,在一些实施例中,在确定了Ki个相似度后,可以按照相似度由大到小进行排列,确定排名前L个相似度。该L个相似度对应的数据为相似数据组Ki中的相似数据。相似度对应的数据是训练数据,该训练数据输入到该参考模型后得到用于确定该相似度的Ki个特征数据中的特征数据。L为大于或等于1且小于Ki的正整数。
假设训练数据vi输入到该参考模型后得到的特征数据为fi。还以K=5为例,假设L等于2,若S1,2>S1,3>S1,4>S1,5,则相似数据组K1中的相似数据包括v2和v3。
可选的,另一些实施例中,在确定了Ki个相似度后,可以确定大于预设相似度阈值的至少一个相似度为相似数据组Ki中的相似数据。
假设训练数据vi输入到该参考模型后得到的特征数据为fi。还以K=5为例,假设STH表示该预设相似度阈值,若S1,2>S1,3>S1,4>STH>S1,5,则相似数据组K1中的相似数据包括v2、v3和v4。
可选的,在一些实施例中,若Ki个相似度均小于该预设相似度阈值,那么可以确定相似数据组Ki中包括Ki个相似度中最大的相似度。
在得到了K个相似数据组后,可以利用K个相似数据组和K组跨模态数据进行训练,得到该跨模态检索模型。利用所述K组跨模态数据和所述K个相似数据组进行训练的过程就是图4中所称的有监督学习。下面结合图7对有监督学习进行进一步描述。
图7是本申请实施例提供的有监督学习的示意性流程图。
701,确定多个参考数据组,该多个参考数据组中的每个参考数据组包括一个训练数据和至少一个相似数据。
该每个参考数据组中的训练数据属于该K组跨模态数据中的一组跨模态数据,该每个参考数据组中的至少一个相似数据属于该K个相似数据组中的一个相似数据组,该每个参考数据组中的训练数据所属的跨模态数据与每个参考数据组中的至少一个相似数据所属的相似数据组对应。
例如,图片训练数据1是步骤601中输入到参考模型中的一个训练数据。相似数据组1是对应于图片训练数据1的相似数据组。相似数据组1中包括图片训练数据2、图片训练数据3和图片训练数据4。那么图片训练数据1可以作为一个参考数据组(可以称为参考数据组1)中的训练数据。该参考数据组1中还可以包括图片训练数据2、图片训练数据3和图片训练数据4中的一个或者多个。包含有图片训练数据1的跨模态数据中包括文本训练数据1。那么,文本训练数据1可以作为另一个参考数据组(可以称为参考数据组2)中的训练数据。该参考数据组2中共还可以包括图片训练数据2、图片训练数据3和图片训练数据4中的一个或多个。
702,利用该多个参考数据组对初始跨模态检索模型进行训练,得到该跨模态检索模型。
例如,在一些实施例中,可以通过深度跨模态哈希(Deep Cross-modal Hashing,DCM)的方法训练得到该跨模态检索模型。利用DCM方法训练得到的该跨模态检索模型可以包括上述19层的图片模态神经网络以及多尺度融合模型的文本模态神经网络。
除了利用DCM方法训练得到该跨模态检索模型外,还可以利用其他方法得到该跨模态检索模型,例如用于跨模态检索的注意力感知深度对抗哈希(Attention-aware DeepAdversarial Hashing for Cross-Modal Retrieval)、跨模态检索的深度对抗度量学习(Deep adversarial metric learning for cross-modal retrieval)等。
跨模态检索模型的具体过程与常规的神经网络模型的训练过程类似。例如,首先对该初始跨模态检索模型中的每层的参数进行初始化(即,为每个参数赋予一个初始值),进而利用该多个参考数据组中的数据对该初始跨模态检索模型进行训练,直到该初始跨模态检索模型中的损失函数收敛或者该多个参考数据组中所有的数据被用于训练,则认为训练完成,训练后的模型就是该跨模态检索模型。
在利用上述方法训练该跨模态检索模型的过程中,参考数据组中的至少一个相似数据可以作为该参考数据组中的训练数据的相似信息进行有监督训练。传统的有监督学习中,标签的作用是用来得到样本之间的相似关系。图7所示的方法在进行有监督学习时,利用知识蒸馏过程得到的相似数据就可以表示样本之间的相似关系。因此,基于本申请实施例提供的方法,可以不需要用人工标注训练数据的标签,但是又能实现有监督学习过程。因此,本申请实施例提供的训练跨模态检索模型的方法可以减少标注标签所耗费的人力和时间,并且可以取得较好的跨模态检索准确率。例如表3是利用本申请实施例得到的跨模态检索模型的准确率和一些传统方法的准确率。
表3
表3中的CMSSH对应的一行表示使用相似性敏感哈希的跨模态度量学习(cross-modality metric learning using similarity-sensitive hashing,CMSSH)得到的不同数据集的不同长度二值化编码的准确率。
SCM对应的一行表示使用语义相关最大化(semantic correlationmaximization,SCM)得到的不同数据集的不同长度二值化编码的准确率。
DCMH对应的一行表示使用深度跨模态哈希(deep cross-modal hashing,DCMH)得到的不同数据集的不同长度二值化编码的准确率。
SSAH对应的一行表示使用自监督对抗哈希(Self-supervised adversarialhashing,SSAH)得到的不同数据集的不同长度二值化编码的准确率。
CVH对应的一行表示使用学习哈希函数以进行跨视图相似性搜索(Learning hashfunctions for cross-view similarity search,CVH)得到的不同数据集的不同长度二值化编码的准确率。
PDH对应的一行表示使用可预测的双视图哈希(Predictable dual-viewhashing,PDH)得到的不同数据集的不同长度二值化编码的准确率。
CMFH对应的一行表示使用复合相关量化(Composite correlationquantization,CMFH)得到的不同数据集的不同长度二值化编码的准确率。
UGACH对应的一行表示使用UGACH得到的不同数据集的不同长度二值化编码的准确率。
CCQ对应的一行表示使用CCQ得到的不同数据集的不同长度二值化编码的准确率。
UKD-US对应的一行表示使用无监督知识提炼-无监督学生(unsupervisedknowledge distillation-unsupervised student,UKD-US)得到的不同数据集的不同长度二值化编码的准确率。
UKD-SS无监督知识提炼-有监督学生(unsupervised knowledge distillation-supervised student,UKD-SS)(即本申请提供的方案)得到的不同数据集的不同长度二值化编码的准确率。
表3中MIRFlickr-25K表示利用公开数据集MIRFlickr-25K作为训练数据,NUS-WIDE表示利用公开数据集NUS-WIDE作为训练数据。16表示压缩为长度为16bit的二值化编码。32表示压缩为长度为32bit的二值化编码。64表示压缩为长度为64bit的二值化编码。128表示压缩为长度为128bit的二值化编码。“图片->文本”表示输入到跨模态检索模型中的数据的模态是图片,该跨模态检索模型输出的检索结果的模态为文本。“文本->图片”表示输入到跨模态检索模型中的数据的模态是文本,该跨模态检索模型输出的检索结果的模态为图片。UKD-SS是利用本申请实施例得到的跨模态检索模型对应的准确率。例如,在训练数据集是MIRFlickr-25K,压缩长度为16bit的二值化编码,输入数据的模态为图片,检索结果的模态为文本时,利用本申请实施例得到的跨模态检索模型的准确率是0.714,而利用UGACH得到的跨模态检索模型的准确率是0.676。又如,在训练数据集是NUS-WIDE,压缩长度为16bit的二值化编码,输入数据的模态为图片,检索结果的模态为文本时,利用本申请实施例得到的跨模态检索模型的准确率是0.630,而利用UGACH得到的跨模态检索模型的准确率是0.602。
从表3中可以看出,利用本申请提供的方法得到的跨模态检索模型的准确率仅低于利用SSAH确定的跨模态检索模型的准确率。但是SSAH是基于有监督学习的。因此,需要花费大量人工对训练数进行标注。从表3中可以看出,本申请实施例提供的方法得到的跨模态检索模型的准确率高于利用无监督学习的方法得到的跨模态检索模型的准确率。此外,本申请实施例提供的得到的跨模态检索模型的准确率与利用有监督学习的方法得到的跨模态检索模型的准确率也基本相似,并且本申请实施例在训练跨模态检索模型的过程中不需要对训练数据进行标注,从而节省了大量的人力成本和时间成本。
图8是根据本申请实施例提供的跨模态检索方法的示意性流程图。
801,获取输入数据。
802,将该输入数据输入跨模态检索模型,得到对应于该输入数据的输出数据。该跨模态检索模型是基于图4至图7所示的方法训练得到的。该输出数据可以是一个特地长度的二值化编码,例如长度为16bit、32bit、64bit或128bit等的二值化编码。
803,确定该输出数据与检索集合中所有样本的相似性,得到该输出数据与所有样本的相似度。
该检索集合是一个多个样本的数据库。
在一些实施例中,该检索集合中保存的样本可以是样本(例如图片或文本)的原始数据。在此情况下,确定该输出数据与该检索集合中所有样本的相似性可以包括:利用该跨模态检索模型,确定该检索集合中所有样本的二值化编码;根据该输出数据和该所有样本的二值化编码,确定该输出数据与该检索集合中所有样本的相似性,得到该输出数据与所有样本的相似度。
在另一些实施例中,该检索集合中保存的样本可以是样本的原始数据以及二值化编码。样本的二值化编码可以是根据该跨模态检索模型确定的。在此情况下,在此情况下,确定该输出数据与该检索集合中所有样本的相似性可以包括:根据该输出数据和该所有样本的二值化编码,确定该输出数据与该检索集合中所有样本的相似性,得到该输出数据与所有样本的相似度。
该检索集合可以保存在如图1所示的数据存储系统150中。在一些实施例中,数据存储系统150可以保存多个检索集合,不同的检索集合中样本的模态相同。例如,数据存储系统150中可以保存两个检索集合,分别为检索集合1和检索集合2。检索集合1保存的样本的模态是文本,检索集合2保存的样本的模态是图片。如果步骤801中的输入数据的模态是图片,且检索任务是利用图片检索文本,那么步骤803中的检索集合为该检索集合1。
例如,该检索集合中包括T个样本,那么可以确定T个相似度,该T个相似度与T个样本一一对应,T为大于或等于1的正整数。该T个相似度中的每个相似度是对应样本与输出数据的相似度。
804,根据该输出数据与所有样本的相似度,确定检索结果。
在一些实施例中,该根据该输出数据与所有样本的相似度,确定检索结果可以包括:确定该检索列表中相似度排名靠前的一个或多个相似度对应的样本为检索结果。
在另一些实施例中,该根据该输出数据与所有样本的相似度,确定检索结果可以包括:确定相似度大于一个预设阈值的样本作为该输入数据的检索结果。
在一些实施例中,如果该输出数据与所有样本的相似度均小于该预设阈值,那么可以确定相似度最大的样本为该输入数据的检索结果。
在另一些实施例中,如果该输出数据与所有样本的相似度均小于该预设阈值,那么可以确定该输入数据的检索结果为空。
图9是根据本申请实施例提供的一种跨模态检索模型的训练方法的示意性流程图。
901,利用跨模态数据集进行无监督学习,得到参考模型,其中该跨模态数据集包括M组跨模态数据,该M组跨模态数据中的每组跨模态数据包括N个训练数据,该N个训练数据是相关的,该N个训练数据分别属于N个模态,N为大于或等于2的正整数,M为大于或等于1的正整数。
902,根据K个训练数据和该参考模型,确定K个相似数据组,该K个相似数据组与该K训练数据一一对应,该K个相似数据组中的每个相似数据组包括至少一个与对应的训练数据相似的数据,其中该K个训练数据分别属于该M组跨模态数据中的K组跨模态数据且该K个训练数据的模态相同,K为大于或等于2且小于或等于M的正整数。
903,利用该K组跨模态数据和该K个相似数据组对初始跨模态检索模型进行训练,得到跨模态检索模型,其中该K个相似数据组在进行训练时分别作为该K组跨模态数据的相似信息。
可选的,在一些实施例中,该根据K个训练数据和该参考模型,确定K个相似数据组,包括,将该K个训练数据分别输入该参考模型,得到K个特征数据;根据该K个特征数据,确定该K个相似数据组。
可选的,在一些实施例中,该根据该K个特征数据,确定该K个相似数据组,包括:根据该K个特征数据中的第i个特征数据和Ki个特征数据,确定Ki个相似度,其中该Ki个特征数据为该K个特征数据中除该第i个特征数据以外的K-1个特征数据,i=1,…,K;根据该Ki个相似度,确定相似数据组Ki,该相似数据组Ki为该K个相似数据组中对应于该第i个特征数据的相似数据组。
可选的,在一些实施例中,该根据该K个特征数据中的第i个特征数据和Ki个特征数据,确定Ki个相似度,包括:根据以下公式确定该Ki个相似度中的第j个相似度,j=1,…,K-1:
Si,j=(2-|fi-fj|2)/2,
其中,Si,j表示该第j个相似度,fi表示该第i个特征数,j表示该Ki个特征数据中的第j个特征数据,符号||2表示求L2范数。
可选的,在一些实施例中,该K个训练数据的模态为图像。
可选的,在一些实施例中,该根据该Ki个相似度,确定相似数据组Ki,包括:确定该Ki个相似度中最大的L个相似度对应的数据为该相似数据组Ki中的相似数据,L为大于或等于1且小于Ki的正整数;或者,确定该Ki个相似度中大于预设相似度阈值的至少一个相似度对应的数据为该相似数据组Ki中的相似数据。
可选的,在一些实施例中,该利用该K组跨模态数据和该K个相似数据组进行训练,得到跨模态检索模型,包括:确定多个参考数据组,该多个参考数据组中的每个参考数据组包括一个训练数据和至少一个相似数据,该每个参考数据组中的训练数据属于该K组跨模态数据中的一组跨模态数据,该每个参考数据组中的至少一个相似数据属于该K个相似数据组中的一个相似数据组,该每个参考数据组中的训练数据所属的跨模态数据与该每个参考数据组中的至少一个相似数据所属的相似数据组对应;利用该多个参考数据组对该初始跨模态检索模型进行训练,得到该跨模态检索模型。
图9所示方法的具体实现方式可以参考图4至图7所示的实施例,为了简洁,在此就不再赘述。
图4至图7,和图9所示的方法可以由图1所示的训练设备120执行。图4至图7,和图9所示方法中的跨模态数据集中的跨模态数据可以是如图1所示的数据库130中维护的数据。可选的,图5至图7所示的方法中的部分或全部,或者图9所示的方法的部分或全部步骤可以在训练设备120中执行,也可以在训练设备120之前由其他功能模块预先执行,即先从数据库130中接收或获取到的训练数据进行预处理。例如,无监督学习(即图5所示的方法)和/或知识蒸馏(即图6所示的方法)过程可以由其他功能模块实现。然后将知识蒸馏过程获得的相似数据组作为训练设备120的输入,并由训练设备120执行有监督学习过程(即图7所示的方法)。
可选的,图4至图7,和图9所示的方法可以由CPU处理,也可以由CPU和GPU共同处理,也可以不适用GPU,而使用其他适合用于神经网络计算的处理器,本申请不做限制。
图8所示的方法可以由图1所示的执行设备110执行。图8所示方法中的检索集合可以保存在图1所示的数据存储系统150中。图8所示的方法可以由CPU处理,也可以由其他可以实现相应功能的硬件进行处理,例如,微处理器、应用专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、GPU或者一个或多个集成电路等处理,本申请不做限制。
图10是根据本申请实施例提供的一种训练装置的示意性结构框图。如图10所示的训练装置1000用于训练跨模态检索模型。如图10所示的训练装置1000可以是如图1所示的训练设备120或者训练设备120中的(例如芯片或者电路等)。如图10所示的训练装置1000包括接收单元1001和处理单元1002。
接收单元1001,用于获取跨模态数据集。
处理单元1002,用于利用跨模态数据集进行无监督学习,得到参考模型,其中该跨模态数据集包括M组跨模态数据,该M组跨模态数据中的每组跨模态数据包括N个训练数据,该N个训练数据是相关的,该N个训练数据分别属于N个模态,N为大于或等于2的正整数,M为大于或等于1的正整数。
处理单元1002,还用于根据K个训练数据和该参考模型,确定K个相似数据组,该K个相似数据组与该K训练数据一一对应,该K个相似数据组中的每个相似数据组包括至少一个与对应的训练数据相似的数据,其中该K个训练数据分别属于该M组跨模态数据中的K组跨模态数据且该K个训练数据的模态相同,K为大于或等于2且小于或等于M的正整数。
处理单元1002,还用于利用该K组跨模态数据和该K个相似数据组对初始跨模态检索模型进行训练,得到跨模态检索模型,其中该K个相似数据组在进行训练时分别作为该K组跨模态数据的相似信息。
可选的,在一些实施例中,处理单元1002,具体用于将该K个训练数据分别输入该参考模型,得到K个特征数据;根据该K个特征数据,确定该K个相似数据组。
可选的,在一些实施例中,处理单元1002,具体用于根据该K个特征数据中的第i个特征数据和Ki个特征数据,确定Ki个相似度,其中该Ki个特征数据为该K个特征数据中除该第i个特征数据以外的K-1个特征数据,i=1,…,K;根据该Ki个相似度,确定相似数据组Ki,该相似数据组Ki为该K个相似数据组中对应于该第i个特征数据的相似数据组。
可选的,在一些实施例中,处理单元1002,具体用于根据以下公式确定该Ki个相似度中的第j个相似度,j=1,…,K-1:
Si,j=(2-|fi-fj|2)/2,
其中,Si,j表示该第j个相似度,fi表示该第i个特征数,j表示该Ki个特征数据中的第j个特征数据,符号||2表示求L2范数。
可寻的,在一些实施例中,该K个训练数据的模态为图像。
可选的,在一些实施例中,处理单元1002,具体用于确定该Ki个相似度中最大的L个相似度对应的数据为该相似数据组Ki中的相似数据,L为大于或等于1且小于Ki的正整数;或者,确定该Ki个相似度中大于预设相似度阈值的至少一个相似度对应的数据为该相似数据组Ki中的相似数据。
可选的,在一些实施例中,处理单元1002,具体用于确定多个参考数据组,该多个参考数据组中的每个参考数据组包括一个训练数据和至少一个相似数据,该每个参考数据组中的训练数据属于该K组跨模态数据中的一组跨模态数据,该每个参考数据组中的至少一个相似数据属于该K个相似数据组中的一个相似数据组,该每个参考数据组中的训练数据所属的跨模态数据与该每个参考数据组中的至少一个相似数据所属的相似数据组对应;利用该多个参考数据组对该初始跨模态检索模型进行训练,得到该跨模态检索模型。
图11是本申请实施例提供的一种训练设备的示意性结构框图。图11所示的训练设备1100(该设备1100具体可以是一种计算机设备)包括存储器1101、处理器1102、通信接口1103以及总线1104。其中,存储器1101、处理器1102、通信接口1103通过总线1104实现彼此之间的通信连接。如图11所示的训练设备1100可以是如图1所示的训练设备120。
存储器1101可以是只读存储器(Read Only Memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(Random Access Memory,RAM)。存储器1101可以存储程序,当存储器1101中存储的程序被处理器1102执行时,处理器1102和通信接口1103用于执行本申请实施例的跨模态检索模型的训练方法的各个步骤。
处理器1102可以采用通用的中央处理器(Central Processing Unit,CPU),微处理器,应用专用集成电路(Application Specific Integrated Circuit,ASIC),图形处理器(graphics processing unit,GPU)或者一个或多个集成电路,用于执行相关程序,以实现本申请实施例的跨模态检索模型的训练设备中的单元所需执行的功能,或者执行本申请方法实施例的跨模态检索模型的训练方法。
处理器1102还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请的跨模态检索模型的训练方法的各个步骤可以通过处理器1102中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1102还可以是通用处理器、数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(ASIC)、现成可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1101,处理器1102读取存储器1101中的信息,结合其硬件完成本申请实施例的跨模态检索模型的训练设备中包括的单元所需执行的功能,或者执行本申请方法实施例的跨模态检索模型的训练方法。
通信接口1103使用例如但不限于收发器一类的收发装置,来实现训练设备1100与其他设备或通信网络之间的通信。例如,可以通过通信接口1103获取训练数据(上述实施例中的跨模态数据)。
总线1104可包括在训练设备1100各个部件(例如,存储器1101、处理器1102、通信接口1103)之间传送信息的通路。
应理解,训练装置1000中的接收单元1001可以相当于训练设备1100中的通信接口1103,训练装置1000中的处理单元1002可以相当于处理器1102。
图12是根据本申请实施例提供的一种跨模态检索装置的示意性结构框图。如图12所示的跨模态检索装置1200可以是如图1所示的执行设备110或者执行设备110中的部件(例如芯片或者电路等)。如图12所示的跨模态检索装置1200包括输入单元1201、处理单元1202和输出单元1203。
输入单元1201,用于获取输入数据。
处理单元1202,用于将该输入数据输入跨模态检索模型,得到对应于该输入数据的输出数据。
该跨模态检索模型是基于图4至图7所示的方法训练得到的。该输出数据可以是一个特地长度的二值化编码,例如长度为16bit、32bit、64bit或128bit等的二值化编码。
处理单元1202,还用于确定该输出数据与检索集合中所有样本的相似性,得到该输出数据与所有样本的相似度。
例如,该检索集合中包括T个样本,那么可以确定T个相似度,该T个相似度与T个样本一一对应,T为大于或等于1的正整数。该T个相似度中的每个相似度是对应样本与输出数据的相似度。
处理单元1202,还用于根据该输出数据与所有样本的相似度,确定检索结果。
输出单元1203,用于输出该检索结果。
图13是本申请实施例提供的一种跨模态检索设备的示意性结构框图。图13所示的跨模态检索设备1300(该装置1300具体可以是一种计算机设备)包括存储器1301、处理器1302、通信接口1303以及总线1304。其中,存储器1301、处理器1302、通信接口1303通过总线1304实现彼此之间的通信连接。如图13所示的跨模态检索设备1100可以是如图1所示的执行设备110。
存储器1301可以是只读存储器(Read Only Memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(Random Access Memory,RAM)。存储器1301可以存储程序,当存储器1301中存储的程序被处理器1302执行时,处理器1302和通信接口1303用于执行本申请实施例的跨模态检索方法的各个步骤。
处理器1302可以采用通用的中央处理器(Central Processing Unit,CPU),微处理器,应用专用集成电路(Application Specific Integrated Circuit,ASIC),图形处理器(graphics processing unit,GPU)或者一个或多个集成电路,用于执行相关程序,以实现本申请实施例的跨模态检索设备中的单元所需执行的功能,或者执行本申请方法实施例的跨模态检索方法。
处理器1302还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请的跨模态检索方法的各个步骤可以通过处理器1302中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1302还可以是通用处理器、数字信号处理器(DigitalSignal Processing,DSP)、专用集成电路(ASIC)、现成可编程门阵列(Field ProgrammableGate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1301,处理器1302读取存储器1301中的信息,结合其硬件完成本申请实施例的跨模态检索设备中包括的单元所需执行的功能,或者执行本申请方法实施例的跨模态检索方法。
通信接口1303使用例如但不限于收发器一类的收发装置,来实现跨模态检索设备1300与其他设备或通信网络之间的通信。例如,可以通过通信接口1303获取检索集合中的样本。
总线1304可包括在跨模态检索设备1300各个部件(例如,存储器1301、处理器1302、通信接口1303)之间传送信息的通路。
应理解,跨模态检索装置1200中的输入单元1201和输出单元1203可以相当于跨模态检索设备1300中的通信接口1303,跨模态检索装置1200中的处理单元1202可以相当于处理器1302。
在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
应注意,本申请实施例中的处理器可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
可以理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(directrambus RAM,DR RAM)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
根据本申请实施例提供的方法,本申请还提供一种计算机程序产品,该计算机程序产品包括:计算机程序代码,当该计算机程序代码在计算机上运行时,使得该计算机执行图4至图9所示实施例中任意一个实施例的方法。
根据本申请实施例提供的方法,本申请还提供一种计算机可读介质,该计算机可读介质存储有程序代码,当该程序代码在计算机上运行时,使得该计算机执行图4至图9所示实施例中任意一个实施例的方法。
根据本申请实施例提供的方法,本申请还提供一种系统,其包括前述的训练设备和跨模态检索设备。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (18)
1.一种训练跨模态检索模型的方法,其特征在于,所述方法包括:
利用跨模态数据集进行无监督学习,得到参考模型,其中所述跨模态数据集包括M组跨模态数据,所述M组跨模态数据中的每组跨模态数据包括N个训练数据,所述N个训练数据是相关的,所述N个训练数据分别属于N个模态,N为大于或等于2的正整数,M为大于或等于1的正整数;
根据K个训练数据和所述参考模型,确定K个相似数据组,所述K个相似数据组与所述K个训练数据一一对应,所述K个相似数据组中的每个相似数据组包括至少一个与对应的训练数据相似的数据,其中所述K个训练数据分别属于所述M组跨模态数据中的K组跨模态数据,且所述K个训练数据的模态相同,K为大于或等于2且小于或等于M的正整数;
利用所述K组跨模态数据和所述K个相似数据组对初始跨模态检索模型进行训练,得到跨模态检索模型,其中所述K个相似数据组在进行训练时分别作为所述K组跨模态数据的相似信息。
2.如权利要求1所述的方法,其特征在于,所述根据K个训练数据和所述参考模型,确定K个相似数据组,包括,
将所述K个训练数据分别输入所述参考模型,得到K个特征数据;
根据所述K个特征数据,确定所述K个相似数据组。
3.如权利要求2所述的方法,其特征在于,所述根据所述K个特征数据,确定所述K个相似数据组,包括:
根据所述K个特征数据中的第i个特征数据和Ki个特征数据,确定Ki个相似度,其中所述Ki个特征数据为所述K个特征数据中除所述第i个特征数据以外的K-1个特征数据,i=1,…,K;
根据所述Ki个相似度,确定相似数据组Ki,所述相似数据组Ki为所述K个相似数据组中对应于所述第i个特征数据的相似数据组。
4.如权利要求3所述的方法,其特征在于,所述根据所述K个特征数据中的第i个特征数据和Ki个特征数据,确定Ki个相似度,包括:
根据以下公式确定所述Ki个相似度中的第j个相似度,j=1,…,K-1:
Si,j=(2-|fi-fj|2)/2,
其中,Si,j表示所述第j个相似度,fi表示所述第i个特征数,j表示所述Ki个特征数据中的第j个特征数据,符号||2表示求L2范数。
5.如权利要求1至4中任一项所述的方法,其特征在于,所述K个训练数据的模态为图像。
6.如权利要求3或4所述的方法,其特征在于,所述根据所述Ki个相似度,确定相似数据组Ki,包括:
确定所述Ki个相似度中最大的L个相似度对应的数据为所述相似数据组Ki中的相似数据,L为大于或等于1且小于Ki的正整数;或者,
确定所述Ki个相似度中大于预设相似度阈值的至少一个相似度对应的数据为所述相似数据组Ki中的相似数据。
7.如权利要求1至6中任一项所述的方法,其特征在于,所述利用所述K组跨模态数据和所述K个相似数据组进行训练,得到跨模态检索模型,包括:
确定多个参考数据组,所述多个参考数据组中的每个参考数据组包括一个训练数据和至少一个相似数据,所述每个参考数据组中的训练数据属于所述K组跨模态数据中的一组跨模态数据,所述每个参考数据组中的至少一个相似数据属于所述K个相似数据组中的一个相似数据组,所述每个参考数据组中的训练数据所属的跨模态数据与所述每个参考数据组中的至少一个相似数据所属的相似数据组对应;
利用所述多个参考数据组对所述初始跨模态检索模型进行训练,得到所述跨模态检索模型。
8.一种跨模态检索方法,其特征在于,所述方法包括:
获取输入数据;
根据跨模态检索模型,确定对应于所述输入数据的输出数据,其中所述跨模态检索模型是利用如权利要求1至7中任一项所述的方法得到的;
确定所述输出数据与检索集合中所有样本的相似性,得到所述输出数据与所述所有样本的相似度;
根据所述输出数据与所述所有样本的相似度,确定检索结果。
9.一种训练装置,其特征在于,所述训练装置包括:
接收单元,用于获取跨模态数据集;
处理单元,用于利用所述跨模态数据集进行无监督学习,得到参考模型,其中所述跨模态数据集包括M组跨模态数据,所述M组跨模态数据中的每组跨模态数据包括N个训练数据,所述N个训练数据是相关的,所述N个训练数据分别属于N个模态,N为大于或等于2的正整数,M为大于或等于1的正整数;
所述处理单元,还用于根据K个训练数据和所述参考模型,确定K个相似数据组,所述K个相似数据组与所述K训练数据一一对应,所述K个相似数据组中的每个相似数据组包括至少一个与对应的训练数据相似的数据,其中所述K个训练数据分别属于所述M组跨模态数据中的K组跨模态数据且所述K个训练数据的模态相同,K为大于或等于2且小于或等于M的正整数;
所述处理单元,还用于利用所述K组跨模态数据和所述K个相似数据组对初始跨模态检索模型进行训练,得到跨模态检索模型,其中所述K个相似数据组在进行训练时分别作为所述K组跨模态数据的相似信息。
10.如权利要求9所述的装置,其特征在于,所述处理单元,具体用于将所述K个训练数据分别输入所述参考模型,得到K个特征数据;根据所述K个特征数据,确定所述K个相似数据组。
11.如权利要求9所述的装置,其特征在于,所述处理单元,具体用于根据所述K个特征数据中的第i个特征数据和Ki个特征数据,确定Ki个相似度,其中所述Ki个特征数据为所述K个特征数据中除所述第i个特征数据以外的K-1个特征数据,i=1,…,K;
根据所述Ki个相似度,确定相似数据组Ki,所述相似数据组Ki为所述K个相似数据组中对应于所述第i个特征数据的相似数据组。
12.如权利要求11所述的装置,其特征在于,所述处理单元,具体用于根据以下公式确定所述Ki个相似度中的第j个相似度,j=1,…,K-1:
Si,j=(2-|fi-fj|2)/2,
其中,Si,j表示所述第j个相似度,fi表示所述第i个特征数,j表示所述Ki个特征数据中的第j个特征数据,符号||2表示求L2范数。
13.如权利要求9至12任一项所述的装置,其特征在于,所述K个训练数据的模态为图像。
14.如权利要求11或12所述的装置,其特征在于,所述处理单元,具体用于确定所述Ki个相似度中最大的L个相似度对应的数据为所述相似数据组Ki中的相似数据,L为大于或等于1且小于Ki的正整数;或者,
确定所述Ki个相似度中大于预设相似度阈值的至少一个相似度对应的数据为所述相似数据组Ki中的相似数据。
15.如权利要求9至14中任一项所述的装置,其特征在于,所述处理单元,具体用于确定多个参考数据组,所述多个参考数据组中的每个参考数据组包括一个训练数据和至少一个相似数据,所述每个参考数据组中的训练数据属于所述K组跨模态数据中的一组跨模态数据,所述每个参考数据组中的至少一个相似数据属于所述K个相似数据组中的一个相似数据组,所述每个参考数据组中的训练数据所属的跨模态数据与所述每个参考数据组中的至少一个相似数据所属的相似数据组对应;利用所述多个参考数据组对所述初始跨模态检索模型进行训练,得到所述跨模态检索模型。
16.一种跨模态检索装置,其特征在于,所述跨模态检索装置包括:
输入单元,用于获取输入数据;
处理单元,用于根据跨模态检索模型,确定对应于所述输入数据的输出数据,其中所述跨模态检索模型是利用如权利要求1至7中任一项所述的方法得到的;
所述处理单元,还用于确定所述输出数据与检索集合中所有样本的相似性,得到所述输出数据与所述所有样本的相似度;
所述处理单元,还用于根据所述输出数据与所述所有样本的相似度,确定检索结果;
输出单元,用于输出所述检索结果。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于设备执行程序代码,所述程序代码包括用于执行如权利要求1至7或者如权利要求8中任一项所述的方法。
18.一种芯片,其特征在于,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,以执行如权利要求1至7或者如权利要求8中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010108535.6A CN111353076B (zh) | 2020-02-21 | 2020-02-21 | 训练跨模态检索模型的方法、跨模态检索的方法和相关装置 |
PCT/CN2021/077109 WO2021164772A1 (zh) | 2020-02-21 | 2021-02-20 | 训练跨模态检索模型的方法、跨模态检索的方法和相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010108535.6A CN111353076B (zh) | 2020-02-21 | 2020-02-21 | 训练跨模态检索模型的方法、跨模态检索的方法和相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111353076A true CN111353076A (zh) | 2020-06-30 |
CN111353076B CN111353076B (zh) | 2023-10-10 |
Family
ID=71192389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010108535.6A Active CN111353076B (zh) | 2020-02-21 | 2020-02-21 | 训练跨模态检索模型的方法、跨模态检索的方法和相关装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111353076B (zh) |
WO (1) | WO2021164772A1 (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111898682A (zh) * | 2020-07-31 | 2020-11-06 | 平安科技(深圳)有限公司 | 基于多个源模型修正新模型的方法、装置以及计算机设备 |
CN112287134A (zh) * | 2020-09-18 | 2021-01-29 | 中国科学院深圳先进技术研究院 | 检索模型的训练和识别方法、电子设备及存储介质 |
CN112836068A (zh) * | 2021-03-24 | 2021-05-25 | 南京大学 | 一种基于带噪标签学习的无监督跨模态哈希检索方法 |
CN112990297A (zh) * | 2021-03-10 | 2021-06-18 | 北京智源人工智能研究院 | 多模态预训练模型的训练方法、应用方法及装置 |
CN113157739A (zh) * | 2021-04-23 | 2021-07-23 | 平安科技(深圳)有限公司 | 跨模态检索方法、装置、电子设备及存储介质 |
WO2021164772A1 (zh) * | 2020-02-21 | 2021-08-26 | 华为技术有限公司 | 训练跨模态检索模型的方法、跨模态检索的方法和相关装置 |
CN113590852A (zh) * | 2021-06-30 | 2021-11-02 | 北京百度网讯科技有限公司 | 多模态识别模型的训练方法、多模态识别方法及装置 |
CN114491115A (zh) * | 2022-02-17 | 2022-05-13 | 重庆邮电大学 | 一种基于深度哈希的多模型融合的集成图像检索方法 |
CN114708471A (zh) * | 2022-06-06 | 2022-07-05 | 中国科学院自动化研究所 | 跨模态图像生成方法、装置、电子设备与存储介质 |
WO2022155994A1 (zh) * | 2021-01-21 | 2022-07-28 | 深圳大学 | 基于注意力的深度跨模态哈希检索方法、装置及相关设备 |
CN114998777A (zh) * | 2022-04-22 | 2022-09-02 | 北京爱奇艺科技有限公司 | 一种针对跨模态视频检索模型的训练方法及装置 |
CN115063640A (zh) * | 2022-08-15 | 2022-09-16 | 阿里巴巴(中国)有限公司 | 交互检测方法、交互检测模型的预训练方法及设备 |
CN115619647A (zh) * | 2022-12-20 | 2023-01-17 | 北京航空航天大学 | 一种基于变分推断的跨模态超分辨率重建方法 |
WO2023231458A1 (zh) * | 2022-05-30 | 2023-12-07 | 华为云计算技术有限公司 | 一种模型训练方法及装置 |
WO2024051730A1 (zh) * | 2022-09-07 | 2024-03-14 | 华为技术有限公司 | 跨模态检索方法、装置、设备、存储介质及计算机程序 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113886607B (zh) * | 2021-10-14 | 2022-07-12 | 哈尔滨工业大学(深圳) | 基于图神经网络的哈希检索方法、装置、终端及存储介质 |
CN114398980A (zh) * | 2022-01-13 | 2022-04-26 | 腾讯科技(深圳)有限公司 | 跨模态哈希模型的训练方法、编码方法、装置及电子设备 |
CN116594994B (zh) * | 2023-03-30 | 2024-02-23 | 重庆师范大学 | 视觉语言知识蒸馏在跨模态哈希检索的应用方法 |
CN117315617B (zh) * | 2023-09-06 | 2024-06-07 | 武汉理工大学 | 基于师徒模式的网络优化方法、系统、电子设备及介质 |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8463053B1 (en) * | 2008-08-08 | 2013-06-11 | The Research Foundation Of State University Of New York | Enhanced max margin learning on multimodal data mining in a multimedia database |
CN105205096A (zh) * | 2015-08-18 | 2015-12-30 | 天津中科智能识别产业技术研究院有限公司 | 一种跨文本模态和图像模态的数据检索方法 |
JP2017021613A (ja) * | 2015-07-13 | 2017-01-26 | 国立大学法人 筑波大学 | クロスモーダル感覚分析システム、提示情報決定システム、情報提示システム、クロスモーダル感覚分析プログラム、提示情報決定プログラムおよび情報提示プログラム |
CN108595636A (zh) * | 2018-04-25 | 2018-09-28 | 复旦大学 | 基于深度跨模态相关性学习的手绘草图的图像检索方法 |
CN108647350A (zh) * | 2018-05-16 | 2018-10-12 | 中国人民解放军陆军工程大学 | 一种基于双通道网络的图文关联检索方法 |
CN109299216A (zh) * | 2018-10-29 | 2019-02-01 | 山东师范大学 | 一种融合监督信息的跨模态哈希检索方法和系统 |
CN109299342A (zh) * | 2018-11-30 | 2019-02-01 | 武汉大学 | 一种基于循环生成式对抗网络的跨模态检索方法 |
US20190137604A1 (en) * | 2017-11-09 | 2019-05-09 | Vadum, Inc. | Target Identification and Clutter Mitigation in High Resolution Radar Systems |
CN109840530A (zh) * | 2017-11-24 | 2019-06-04 | 华为技术有限公司 | 训练多标签分类模型的方法和装置 |
WO2019148898A1 (zh) * | 2018-02-01 | 2019-08-08 | 北京大学深圳研究生院 | 基于受限文本空间的对抗性跨媒体检索方法 |
CN110110122A (zh) * | 2018-06-22 | 2019-08-09 | 北京交通大学 | 基于多层语义深度哈希算法的图像-文本跨模态检索 |
CN110188210A (zh) * | 2019-05-10 | 2019-08-30 | 山东师范大学 | 一种基于图正则化与模态独立的跨模态数据检索方法及系统 |
CN110188209A (zh) * | 2019-05-13 | 2019-08-30 | 山东大学 | 基于层次标签的跨模态哈希模型构建方法、搜索方法及装置 |
CN110309331A (zh) * | 2019-07-04 | 2019-10-08 | 哈尔滨工业大学(深圳) | 一种基于自监督的跨模态深度哈希检索方法 |
US20200005134A1 (en) * | 2018-06-28 | 2020-01-02 | Microsoft Technology Licensing, Llc | Generating supervised embeddings using unsupervised embeddings |
CN110647904A (zh) * | 2019-08-01 | 2020-01-03 | 中国科学院信息工程研究所 | 一种基于无标记数据迁移的跨模态检索方法及系统 |
CN110765281A (zh) * | 2019-11-04 | 2020-02-07 | 山东浪潮人工智能研究院有限公司 | 一种多语义深度监督跨模态哈希检索方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111353076B (zh) * | 2020-02-21 | 2023-10-10 | 华为云计算技术有限公司 | 训练跨模态检索模型的方法、跨模态检索的方法和相关装置 |
-
2020
- 2020-02-21 CN CN202010108535.6A patent/CN111353076B/zh active Active
-
2021
- 2021-02-20 WO PCT/CN2021/077109 patent/WO2021164772A1/zh active Application Filing
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8463053B1 (en) * | 2008-08-08 | 2013-06-11 | The Research Foundation Of State University Of New York | Enhanced max margin learning on multimodal data mining in a multimedia database |
JP2017021613A (ja) * | 2015-07-13 | 2017-01-26 | 国立大学法人 筑波大学 | クロスモーダル感覚分析システム、提示情報決定システム、情報提示システム、クロスモーダル感覚分析プログラム、提示情報決定プログラムおよび情報提示プログラム |
CN105205096A (zh) * | 2015-08-18 | 2015-12-30 | 天津中科智能识别产业技术研究院有限公司 | 一种跨文本模态和图像模态的数据检索方法 |
US20190137604A1 (en) * | 2017-11-09 | 2019-05-09 | Vadum, Inc. | Target Identification and Clutter Mitigation in High Resolution Radar Systems |
CN109840530A (zh) * | 2017-11-24 | 2019-06-04 | 华为技术有限公司 | 训练多标签分类模型的方法和装置 |
WO2019148898A1 (zh) * | 2018-02-01 | 2019-08-08 | 北京大学深圳研究生院 | 基于受限文本空间的对抗性跨媒体检索方法 |
CN108595636A (zh) * | 2018-04-25 | 2018-09-28 | 复旦大学 | 基于深度跨模态相关性学习的手绘草图的图像检索方法 |
CN108647350A (zh) * | 2018-05-16 | 2018-10-12 | 中国人民解放军陆军工程大学 | 一种基于双通道网络的图文关联检索方法 |
CN110110122A (zh) * | 2018-06-22 | 2019-08-09 | 北京交通大学 | 基于多层语义深度哈希算法的图像-文本跨模态检索 |
US20200005134A1 (en) * | 2018-06-28 | 2020-01-02 | Microsoft Technology Licensing, Llc | Generating supervised embeddings using unsupervised embeddings |
CN109299216A (zh) * | 2018-10-29 | 2019-02-01 | 山东师范大学 | 一种融合监督信息的跨模态哈希检索方法和系统 |
CN109299342A (zh) * | 2018-11-30 | 2019-02-01 | 武汉大学 | 一种基于循环生成式对抗网络的跨模态检索方法 |
CN110188210A (zh) * | 2019-05-10 | 2019-08-30 | 山东师范大学 | 一种基于图正则化与模态独立的跨模态数据检索方法及系统 |
CN110188209A (zh) * | 2019-05-13 | 2019-08-30 | 山东大学 | 基于层次标签的跨模态哈希模型构建方法、搜索方法及装置 |
CN110309331A (zh) * | 2019-07-04 | 2019-10-08 | 哈尔滨工业大学(深圳) | 一种基于自监督的跨模态深度哈希检索方法 |
CN110647904A (zh) * | 2019-08-01 | 2020-01-03 | 中国科学院信息工程研究所 | 一种基于无标记数据迁移的跨模态检索方法及系统 |
CN110765281A (zh) * | 2019-11-04 | 2020-02-07 | 山东浪潮人工智能研究院有限公司 | 一种多语义深度监督跨模态哈希检索方法 |
Non-Patent Citations (2)
Title |
---|
樊花等: "基于哈希方法的跨模态检索研究进展", 《数据通信》 * |
樊花等: "基于哈希方法的跨模态检索研究进展", 《数据通信》, no. 03, 28 June 2018 (2018-06-28), pages 39 - 45 * |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021164772A1 (zh) * | 2020-02-21 | 2021-08-26 | 华为技术有限公司 | 训练跨模态检索模型的方法、跨模态检索的方法和相关装置 |
CN111898682B (zh) * | 2020-07-31 | 2023-08-25 | 平安科技(深圳)有限公司 | 基于多个源模型修正新模型的方法、装置以及计算机设备 |
CN111898682A (zh) * | 2020-07-31 | 2020-11-06 | 平安科技(深圳)有限公司 | 基于多个源模型修正新模型的方法、装置以及计算机设备 |
CN112287134A (zh) * | 2020-09-18 | 2021-01-29 | 中国科学院深圳先进技术研究院 | 检索模型的训练和识别方法、电子设备及存储介质 |
CN112287134B (zh) * | 2020-09-18 | 2021-10-15 | 中国科学院深圳先进技术研究院 | 检索模型的训练和识别方法、电子设备及存储介质 |
WO2022155994A1 (zh) * | 2021-01-21 | 2022-07-28 | 深圳大学 | 基于注意力的深度跨模态哈希检索方法、装置及相关设备 |
CN112990297A (zh) * | 2021-03-10 | 2021-06-18 | 北京智源人工智能研究院 | 多模态预训练模型的训练方法、应用方法及装置 |
CN112990297B (zh) * | 2021-03-10 | 2024-02-02 | 北京智源人工智能研究院 | 多模态预训练模型的训练方法、应用方法及装置 |
CN112836068A (zh) * | 2021-03-24 | 2021-05-25 | 南京大学 | 一种基于带噪标签学习的无监督跨模态哈希检索方法 |
CN112836068B (zh) * | 2021-03-24 | 2023-09-26 | 南京大学 | 一种基于带噪标签学习的无监督跨模态哈希检索方法 |
CN113157739A (zh) * | 2021-04-23 | 2021-07-23 | 平安科技(深圳)有限公司 | 跨模态检索方法、装置、电子设备及存储介质 |
CN113590852B (zh) * | 2021-06-30 | 2022-07-08 | 北京百度网讯科技有限公司 | 多模态识别模型的训练方法、多模态识别方法及装置 |
CN113590852A (zh) * | 2021-06-30 | 2021-11-02 | 北京百度网讯科技有限公司 | 多模态识别模型的训练方法、多模态识别方法及装置 |
CN114491115A (zh) * | 2022-02-17 | 2022-05-13 | 重庆邮电大学 | 一种基于深度哈希的多模型融合的集成图像检索方法 |
CN114998777A (zh) * | 2022-04-22 | 2022-09-02 | 北京爱奇艺科技有限公司 | 一种针对跨模态视频检索模型的训练方法及装置 |
CN114998777B (zh) * | 2022-04-22 | 2024-08-13 | 北京爱奇艺科技有限公司 | 一种针对跨模态视频检索模型的训练方法及装置 |
WO2023231458A1 (zh) * | 2022-05-30 | 2023-12-07 | 华为云计算技术有限公司 | 一种模型训练方法及装置 |
CN114708471B (zh) * | 2022-06-06 | 2022-09-06 | 中国科学院自动化研究所 | 跨模态图像生成方法、装置、电子设备与存储介质 |
CN114708471A (zh) * | 2022-06-06 | 2022-07-05 | 中国科学院自动化研究所 | 跨模态图像生成方法、装置、电子设备与存储介质 |
CN115063640A (zh) * | 2022-08-15 | 2022-09-16 | 阿里巴巴(中国)有限公司 | 交互检测方法、交互检测模型的预训练方法及设备 |
WO2024051730A1 (zh) * | 2022-09-07 | 2024-03-14 | 华为技术有限公司 | 跨模态检索方法、装置、设备、存储介质及计算机程序 |
CN115619647A (zh) * | 2022-12-20 | 2023-01-17 | 北京航空航天大学 | 一种基于变分推断的跨模态超分辨率重建方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2021164772A1 (zh) | 2021-08-26 |
CN111353076B (zh) | 2023-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111353076B (zh) | 训练跨模态检索模型的方法、跨模态检索的方法和相关装置 | |
US20220092351A1 (en) | Image classification method, neural network training method, and apparatus | |
CN113688304A (zh) | 搜索推荐模型的训练方法、搜索结果排序的方法及装置 | |
WO2021022521A1 (zh) | 数据处理的方法、训练神经网络模型的方法及设备 | |
CN110175671A (zh) | 神经网络的构建方法、图像处理方法及装置 | |
CN112580369B (zh) | 语句复述方法、训练语句复述模型的方法及其装置 | |
US20230095606A1 (en) | Method for training classifier, and data processing method, system, and device | |
WO2022001805A1 (zh) | 一种神经网络蒸馏方法及装置 | |
CN111695673B (zh) | 训练神经网络预测器的方法、图像处理方法及装置 | |
WO2021136058A1 (zh) | 一种处理视频的方法及装置 | |
CN112487217A (zh) | 跨模态检索方法、装置、设备及计算机可读存储介质 | |
CN111368656A (zh) | 一种视频内容描述方法和视频内容描述装置 | |
CN111340190A (zh) | 构建网络结构的方法与装置、及图像生成方法与装置 | |
CN114004383A (zh) | 时间序列预测模型的训练方法、时间序列预测方法及装置 | |
WO2022156475A1 (zh) | 神经网络模型的训练方法、数据处理方法及装置 | |
Han et al. | L-Net: lightweight and fast object detector-based ShuffleNetV2 | |
CN110083842A (zh) | 译文质量检测方法、装置、机器翻译系统和存储介质 | |
CN115879508A (zh) | 一种数据处理方法及相关装置 | |
Goumiri et al. | A new hybrid model of convolutional neural networks and hidden Markov chains for image classification | |
WO2021057690A1 (zh) | 构建神经网络的方法与装置、及图像处理方法与装置 | |
WO2023040740A1 (zh) | 神经网络模型优化方法及相关设备 | |
Gupta et al. | Development of human motion prediction strategy using inception residual block | |
CN113033263B (zh) | 一种人脸图像年龄特征识别方法 | |
CN110334359B (zh) | 文本翻译方法和装置 | |
CN115545143A (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220216 Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province Applicant after: Huawei Cloud Computing Technologies Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Applicant before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |