CN112528681A - 跨语言检索及模型训练方法、装置、设备和存储介质 - Google Patents
跨语言检索及模型训练方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN112528681A CN112528681A CN202011504125.XA CN202011504125A CN112528681A CN 112528681 A CN112528681 A CN 112528681A CN 202011504125 A CN202011504125 A CN 202011504125A CN 112528681 A CN112528681 A CN 112528681A
- Authority
- CN
- China
- Prior art keywords
- language
- cross
- semantic representation
- document
- training
- 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.)
- Pending
Links
- 238000012549 training Methods 0.000 title claims abstract description 139
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000012163 sequencing technique Methods 0.000 claims abstract description 8
- 238000013519 translation Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 10
- 238000004422 calculation algorithm Methods 0.000 claims description 7
- 238000013473 artificial intelligence Methods 0.000 abstract description 5
- 238000003058 natural language processing Methods 0.000 abstract description 5
- 238000013135 deep learning Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 15
- 238000004891 communication Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 101100481876 Danio rerio pbk gene Proteins 0.000 description 1
- 101100481878 Mus musculus Pbk gene Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect 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
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/58—Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Medical Informatics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Machine Translation (AREA)
Abstract
本公开公开了一种跨语言检索及模型训练方法、装置、设备、存储介质和程序产品,涉及计算机技术领域,具体涉及自然语言处理、深度学习等人工智能技术领域。跨语言检索方法包括:接收用户输入的检索词;根据所述检索词的检索词语义表示,在包含多种语言文档的文档库中,获取与所述检索词匹配的候选文档;对所述候选文档进行排序,将排序后的候选文档作为检索结果,返回给所述用户。本公开可以提高检索结果的准确度,降低时间复杂度。
Description
技术领域
本公开涉及计算机技术领域,具体涉及自然语言处理、深度学习等人工智能技术领域,尤其涉及一种跨语言检索及模型训练方法、装置、设备和存储介质。
背景技术
自然语言处理(Natural Language Processing,NLP)是涉及计算机科学、人工智能(Artificial Intelligence,AI)和语言学的交叉技术,目的是让计算机处理或“理解”自然语言,以执行诸如语言翻译和问题回答等任务。随着语音接口和聊天机器人的兴起,NLP成为了信息时代最重要的技术之一,是人工智能的重要组成部分。
跨语言检索是指用户输入的检索词是一种语言,返回的检索结果是另一种或者多种语言。在信息日益全球化的今天,跨语言检索技术变得越来越重要。
相关技术中,跨语言检索一般基于机器翻译技术,即将源语言的检索词,翻译成目标语言的检索词,然后再使用目标语言的检索词在目标语言文档库中检索,返回检索结果。
发明内容
本公开提供了一种跨语言检索及模型训练方法、装置、设备、存储介质和程序产品。
根据本公开的一方面,提供了一种跨语言检索方法,包括:接收用户输入的检索词;根据所述检索词的检索词语义表示,在包含多种语言文档的文档库中,获取与所述检索词匹配的候选文档;对所述候选文档进行排序,将排序后的候选文档作为检索结果,返回给所述用户。
根据本公开的另一方面,提供了一种跨语言语义表示模型的训练方法,包括:获取跨语言训练语料,所述跨语言训练语料包括:机器翻译的平行语料,以及,单语言的检索词和文档对语料;采用所述跨语言训练语料,对跨语言语义表示模型进行训练。
根据本公开的另一方面,提供了一种跨语言检索装置,包括:接收模块,用于接收用户输入的检索词;召回模块,用于根据所述检索词的检索词语义表示,在包含多种语言文档的文档库中,获取与所述检索词匹配的候选文档;排序模块,用于对所述候选文档进行排序,将排序后的候选文档作为检索结果,返回给所述用户。
根据本公开的另一方面,提供了一种跨语言语义表示模型的训练装置,包括:获取模块,用于获取跨语言训练语料,所述跨语言训练语料包括:机器翻译的平行语料,以及,单语言的检索词和文档对语料;训练模块,用于采用所述跨语言训练语料,对跨语言语义表示模型进行训练。
根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上述任一方面的任一项所述的方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据上述任一方面的任一项所述的方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据上述任一方面的任一项所述的方法。
根据本公开的技术方案,通过根据检索词的检索词语义表示,获取与检索词匹配的候选文档并排序,可以在跨语言检索时不需要进行翻译,可以提高检索结果不准确,并且在包含多种语言文档的文档库中检索,而不是分别在多个文档库中检索,可以降低时间复杂度。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开第一实施例的示意图;
图2是根据本公开第二实施例的示意图;
图3是根据本公开第三实施例的示意图;
图4是根据本公开第四实施例的示意图;
图5是根据本公开第四实施例的示意图;
图6是根据本公开第六实施例的示意图;
图7是根据本公开第七实施例的示意图;
图8是根据本公开第八实施例的示意图;
图9是用来实现本公开实施例的跨语言检索方法、跨语言语义表示模型的训练方法中任一方法的电子设备的示意图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
相关技术中,跨语言检索一般基于机器翻译技术,即将源语言的检索词,翻译成目标语言的检索词,然后再使用目标语言的检索词在目标语言文档库中检索,返回检索结果。比如,目标语言有N种,则需要将源语言翻译成N种目标语言,再分别在这N种目标语言的文档库中进行检索。由于机器翻译存在误差,即,将源语言翻译成目标语言时,会存在误差,从而检索结果也会不准确。另外,分别在每种目标语言的文档库中进行检索,存在时间复杂度高的问题,比如需要做N遍检索。
为了解决上述的检索结果不准确、时间复杂度高的问题,本公开提供如下一些实施例。
图1是根据本公开第一实施例的示意图。本实施例提供一种跨语言检索方法,包括:
101、接收用户输入的检索词。
102、根据所述检索词的检索词语义表示,在包含多种语言文档的文档库中,获取与所述检索词匹配的候选文档。
103、对所述候选文档进行排序,将排序后的候选文档作为检索结果,返回给所述用户。
检索过程可以包括召回阶段和排序阶段,如图2所示,检索过程可以包括:用户向检索系统输入检索词(Query)(201)->检索系统在召回阶段,在包含多种语言文档的文档库(跨语言文档库)中选择与检索词匹配的文档(document),作为候选结果(202),比如,召回相似度最高的预设个数(TopK)候选结果->检索系统在排序阶段,对TopK个候选结果进行排序,并将排序后的候选结果作为检索结果,返回给用户(203)。
可以理解的是,本公开实施例中的文档是泛指的信息,比如包括文本、音频、视频、图片、网页等。
上述流程中,用户与检索系统之间可以采用文本、语音等形式进行交互,比如,用户采用语音或文本输入检索词,检索系统采用语音或文本向用户反馈检索结果,本公开对此不作限定。
检索系统可以基于客户端-服务器端的形式实现,客户端部署在用户终端上;服务器端可以设置在检索服务提供方的服务器上,服务器可以是普通服务器或者云端服务器;或者,服务器端也可以设置在用户终端本地以实现离线检索服务。本公开对此不作限定。用户终端的实例本公开也不作限定,比如可以是手机、平板型电脑、数字助理等。客户端的实例本公开也不作限定,比如可以是APP、网页、程序等。
本实施例中,接收到检索词后,根据检索词的检索词语义表示进行检索,可以直接在包含多种语言文档的文档库中进行检索,不需要先将源语言翻译成目标语言,可以避免机器翻译存在的误差,提高检索结果的准确度;并且,本实施例的文档库是包含多种语言文档的文档库,可以在该统一的文档库中检索,而不是分别在每种目标语言的文档库中检索,可以降低时间复杂度。
一些实施例中,比如,在文档库中预存多种语言文档的文档语义表示,在接收到检索词后,将检索词转换为检索词语义表示;再将检索词语义表示与文档库中的文档语义表示进行匹配,得到匹配的文档语义表示;再将匹配的文档语义表示对应的文档作为候选文档,比如,预先配置文档语义表示与文档的对应关系,基于该对应关系,在获取到匹配的文档语义表示后,可以找到对应的文档作为候选文档。
本实施例中,通过基于语义表示进行匹配,可以提高匹配的准确度。直接将文档的文档语义表示配置在文档库中,可以提高召回效率。
一些实施例中,语义表示匹配时,可以通过近似最近邻(Approximate NearestNeighbor,ANN)算法,在所述多种语言的文档的文档语义表示中,检索出与所述检索词语义表示匹配的文档语义表示。近似最近邻检索是检索可能是近邻的数据项而不再只局限于返回最可能的项目。
本实施例中,通过采用ANN算法进行检索,可以在可接受范围内的精度的情况下提高检索效率。
一些实施例中,为了更好地匹配检索词语义表示和文档语义表示,可以采用跨语言语义表示模型进行相应的语义表示转换,以将检索词语义表示和文档语义表示转换到同一语义表示空间。
目前,为了降低模型训练的工作量和成本,一般是在已有的预训练模型基础上进行优化调整,得到自身所需的模型,比如,采用预训练(pre-training)+微调(fine-tuning)方式得到自身需要的模型。
本公开实施例中,也可以在已有的预训练模型的基础上进一步训练得到需要的模型,本公开实施例可以称为对已有的预训练模型的后训练(post-training)。比如,跨语言语义表示模型可以在已有的预训练模型的基础上进行后训练得到。已有的预训练模型是多语言预训练模型,比如多语言BERT模型,具体比如mBERT、XLM、ERNIE-M等。BERT是双向Transformer的Encoder(Bidirectional Encoder Representations from Transformers,BERT)。ERNIE是知识增强语义表示(EnhancedRepresentationfromkNowledgeIntEgration,ERNIE)。
本公开实施例中,在已有的预训练模型的基础上进行后训练时,考虑到本公开实施例针对的跨语言检索场景,所述跨语言训练语料包括:机器翻译的平行语料,以及,单语言的检索词和文档对(Query-Document)语料。机器翻译的平行语料是不同语言之间翻译文档的集合。由于机器翻译的平行语料,以及单语言Query-Document语料研究比较充分,是相对充足的。
本实施例中选取相对充足的上述训练语料,可以提高模型训练效果。
上面对召回阶段进行了说明,在排序阶段,一些实施例中,参见图3,排序流程可以包括:
301、将所述检索词和所述候选文档拼接后,作为跨语言语义匹配模型的输入数据。
302、采用所述跨语言语义匹配模型,对所述输入数据进行相关度计算,并根据计算得到的相关度对所述候选文档进行排序。
其中,跨语言语义匹配模型的输入包括:拼接后的检索词和文档,输出包括检索词和文档的相关度,在输入时可以在拼接句子(即拼接后的检索词和文档)的前面标注[CLS]位,相关度为对应[CLS]位的输出。
跨语言语义匹配模型也可以基于多语言预训练模型,对正负样本进行二分类训练得到,比如,在训练时,将正样本对应的相关度输出标注为相关,将负样本对应的相关度输出标注为不相关。跨语言语义匹配模型的训练语言也可以为跨语言训练语料,比如,包括:机器翻译的平行语料,以及,单语言的检索词和文档对语料。
一些实施例中,召回阶段采用的跨语言语义表示模型可以称为ERNIE-Polyglot-Retrieval,排序阶段采用的跨语言语义匹配模型可以称为ERNIE-Polyglot-Sim。在召回阶段,为了提高召回速度,跨语言语义表示模型可以采用表示型语义模型(Representationbased),在排序阶段,为了提高排序结果的准确度,跨语言语义匹配模型可以采用计算复杂度高,效果更好的交互型语义模型(Interaction based)。
本实施例中,通过在排序阶段采用跨语言语义匹配模型进行处理,可以更好地对不同语言的检索词和文档进行匹配,从而提高排序准确度,进而提高整体的检索效果。
上述实施例对检索过程进行了说明,检索过程包括了召回阶段,召回阶段的采用了跨语言语义表示模型,下面对该跨语言语义表示模型的训练过程进行说明。
图4是本公开第四实施例的示意图。如图4所示,该实施例提供一种跨语言语义表示模型的训练方法,包括:
401、获取跨语言训练语料,所述跨语言训练语料包括:机器翻译的平行语料,以及,单语言的检索词和文档对语料。
402、采用所述跨语言训练语料,对跨语言语义表示模型进行训练。
如上所述,跨语言语义表示模型可以是在已有的跨语言预训练模型(比如XLM模型)的基础上,进一步训练得到。
在已有的跨语言预训练模型的基础上,可以构建相似度任务,基于相似度任务完成对跨语言语义表示模型的训练。
本实施例中,可以用内积表征相似度。
具体的,所述采用所述跨语言训练语料,对跨语言语义表示模型进行训练,包括:确定所述跨语言训练语料中的正样本和负样本;基于跨语言语义表示模型,得到所述正样本的内积和所述负样本的内积;在所述正样本的内积大于同批次内所有负样本的内积时,完成对所述跨语言语义表示模型的训练。
一些实施例中,训练过程中,可以使用同批次负样本(In-batch Negative)的采样方法,即同一个批次(Batch)内,与当前训练检索词对应的训练文档为正样本,其他所有训练检索词对应的训练文档作为负样本。比如,如图5所示,黑色填充表示正样本,白色填充表示负样本。其中,图5中以相同标号表示相互对应的训练检索词和训练文档。比如,检索词-1对应的训练文档为文档-1,文档-2~文档-4是其他训练检索词对应的文档。
本实施例中,基于正负样本的内积进行相似度计算,以及采用同批次负样本的采样方式,可以提高模型的语义表示准确度。
一些实施例中,所述基于跨语言语义表示模型,得到所述正样本的内积和所述负样本的内积,包括:对应所述正样本,将所述正样本的训练检索词输入到跨语言语义表示模型中得到所述正样本的第一语义表示,将所述正样本的训练文档输入到所述跨语言语义表示模型中得到所述正样本的第二语义表示,计算所述正样本的第一语义表示与所述正样本的第二语义表示的内积,作为所述正样本的内积;对应所述负样本,将所述负样本的训练检索词输入到所述跨语言语义表示模型中得到负样本的第一语义表示,将所述负样本的训练文档输入到所述跨语言语义表示模型中得到负样本的第二语义表示,计算所述负样本的第一语义表示与所述负样本的第二语义表示的内积,作为所述负样本的内积。
可以理解的是,不论是正样本,还是负样本,对应的训练语料均可以包括训练检索词和训练文档,比如,训练语料包括平行语料时,一种语言的句子作为训练检索词,另一种语言的句子作为训练文档;和/或,训练语料包括单语言的检索词和文档对时,将其中的检索词作为训练检索词,将对应的文档作为训练文档。因此,下面为简化说明,以样本(包括训练检索词和训练文档)为例,说明样本内积的计算过程,该样本适应于正样本和负样本。
如图6所示,样本(包括训练检索词和训练文档)的内积计算过程包括:
601、采用跨语言语义表示模型,将输入的训练检索词转换为第一语义表示(Rep-Q)。
602、采用该跨语言语义表示模型,将输入的训练文档转换为第二语义表示(Rep-D)。
603、计算所述第一语义表示与所述第二语义表示的内积,得到样本的内积。
需要说明的是,本实施例为了方便说明,分开示出了训练检索词和训练文档输入到跨语言语义表示模型中的过程,在实际过程中,是将训练检索词和训练文档分别独立输入到共享的跨语言语义表示模型中,两个语义表示在计算过程中不互相参考,但共享跨语言语义表示模型的参数,以训练得到跨语言语义表示模型。
本实施例中,基于训练检索词和训练文档,获取对应的语义表示,可以基于语义表示计算内积,提高内积计算的准确度,以基于内积训练更准确的跨语言语义表示模型。
一些实施例中,正负样本可以采用如下方式确定:对应所述机器翻译的平行语料,将语义相同的两个语言的句子作为正样本,随机打乱的两个语言的句子作为负样本;和/或,对应所述单语言检索词和文档对语料,将匹配的检索词和文档作为正样本,随机打乱的检索词和文档作为负样本。正负样本可以采用人工方式标注或者基于用户行为确定,比如将用户点击的与检索词对应的文档确定为正样本。
本实施例中,通过采用上述的标注方式,可以简单准确的区分出正负样本,以更准确训练模型。
本实施例,通过采用机器翻译的平行语料以及Query-Document语料,进行模型训练,可以提升跨语言的语义匹配效果。
图7是根据本公开第八实施例的示意图。如图7所示,该实施例提供一种跨语言检索装置700,可以包括接收模块701、召回模块702和排序模块703。接收模块701用于接收用户输入的检索词;召回模块702用于根据所述检索词的检索词语义表示,在包含多种语言文档的文档库中,获取与所述检索词匹配的候选文档;排序模块703用于对所述候选文档进行排序,将排序后的候选文档作为检索结果,返回给所述用户。
一些实施例中,所述文档库中预存多种语言文档中各语言文档的文档语义表示,所述召回模块702具体用于:将所述检索词转换为检索词语义表示;在所述各语言文档的文档语义表示中,检索与所述检索词语义表示匹配的文档语义表示;将所述匹配的文档语义表示对应的文档作为候选文档。
一些实施例中,所述召回模块702进一步具体用于:通过ANN算法,检索与所述检索词语义表示匹配的文档语义表示。
一些实施例中,所述召回模块702进一步具体用于:采用跨语言语义表示模型,将所述检索词转换为检索词语义表示,所述跨语言语义表示模型采用跨语言训练语料训练得到,所述跨语言训练语料包括:机器翻译的平行语料,以及,单语言的检索词和文档对语料。
一些实施例中,所述排序模块703具体用于:将所述检索词和所述候选文档拼接后,作为跨语言语义匹配模型的输入数据;采用所述跨语言语义匹配模型,对所述输入数据进行相关度计算,并根据计算得到的相关度对所述候选文档进行排序。
本实施例中,接收到检索词后,根据检索词的检索词语义表示进行检索,可以直接在包含多种语言文档的文档库中进行检索,不需要先将源语言翻译成目标语言,可以避免机器翻译存在的误差,提高检索结果的准确度;并且,本实施例的文档库是包含多种语言文档的文档库,可以在该统一的文档库中检索,而不是分别在每种目标语言的文档库中检索,可以降低时间复杂度。通过基于语义表示进行匹配,可以提高匹配的准确度。通过采用ANN算法进行检索,可以在可接受范围内的精度的情况下提高检索效率。选取相对充足的上述训练语料,可以提高模型训练效果。通过在排序阶段采用跨语言语义匹配模型进行处理,可以更好地对不同语言的检索词和文档进行匹配,从而提高排序准确度,进而提高整体的检索效果。
图8是根据本公开第九实施例的示意图。如图8所示,该装置提供一种跨语言语义表示模型的训练装置800,可以包括获取模块801和训练模块802。其中,获取模块800用于获取跨语言训练语料,所述跨语言训练语料包括:机器翻译的平行语料,以及,单语言的检索词和文档对语料;训练模块802用于采用所述跨语言训练语料,对跨语言语义表示模型进行训练。
一些实施例中,所述训练模块802具体用于:确定所述跨语言训练语料中的正样本和负样本;基于跨语言语义表示模型,得到所述正样本的内积和所述负样本的内积;在所述正样本的内积大于同批次内所有负样本的内积时,完成对所述跨语言语义表示模型的训练。
一些实施例中,所述训练模块802进一步具体用于:对应所述正样本,将所述正样本的训练检索词输入到跨语言语义表示模型中得到所述正样本的第一语义表示,将所述正样本的训练文档输入到所述跨语言语义表示模型中得到所述正样本的第二语义表示,计算所述正样本的第一语义表示与所述正样本的第二语义表示的内积,作为所述正样本的内积;对应所述负样本,将所述负样本的训练检索词输入到所述跨语言语义表示模型中得到负样本的第一语义表示,将所述负样本的训练文档输入到所述跨语言语义表示模型中得到负样本的第二语义表示,计算所述负样本的第一语义表示与所述负样本的第二语义表示的内积,作为所述负样本的内积。
一些实施例中,所述训练模块802进一步具体用于:对应所述机器翻译的平行语料,将语义相同的两个语言的句子作为正样本,随机打乱的两个语言的句子作为负样本;和/或,对应所述单语言检索词和文档对语料,将匹配的检索词和文档作为正样本,随机打乱的检索词和文档作为负样本。
本实施例中,通过采用机器翻译的平行语料以及Query-Document语料,进行模型训练,可以提升跨语言的语义匹配效果。通过采用上述的标注方式,可以简单准确的区分出正负样本,以更准确训练模型。基于训练检索词和训练文档,获取对应的语义表示,可以基于语义表示训练跨语言语义表示模型。基于正负样本的内积进行相似度计算,以及采用同批次负样本的采样方式,可以提高模型的语义表示准确度。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图9示出了可以用来实施本公开的实施例的示例电子设备900的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图9所示,电子设备900包括计算单元901,其可以根据存储在只读存储器(ROM)902中的计算机程序或者从存储单元908加载到随机访问存储器(RAM)903中的计算机程序,来执行各种适当的动作和处理。在RAM 903中,还可存储电子设备900操作所需的各种程序和数据。计算单元901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。
电子设备900中的多个部件连接至I/O接口905,包括:输入单元906,例如键盘、鼠标等;输出单元907,例如各种类型的显示器、扬声器等;存储单元908,例如磁盘、光盘等;以及通信单元909,例如网卡、调制解调器、无线通信收发机等。通信单元909允许电子设备900通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元901可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元901的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元901执行上文所描述的各个方法和处理,例如跨语言检索方法、跨语言语义表示模型的训练方法。例如,在一些实施例中,跨语言检索方法、跨语言语义表示模型的训练方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元908。在一些实施例中,计算机程序的部分或者全部可以经由ROM 902和/或通信单元909而被载入和/或安装到电子设备900上。当计算机程序加载到RAM903并由计算单元901执行时,可以执行上文描述的跨语言检索方法、跨语言语义表示模型的训练方法的一个或多个步骤。备选地,在其他实施例中,计算单元901可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行跨语言检索方法、跨语言语义表示模型的训练方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务("Virtual Private Server",或简称"VPS")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (21)
1.一种跨语言检索方法,包括:
接收用户输入的检索词;
根据所述检索词的检索词语义表示,在包含多种语言文档的文档库中,获取与所述检索词匹配的候选文档;
对所述候选文档进行排序,将排序后的候选文档作为检索结果,返回给所述用户。
2.根据权利要求1所述的方法,其中,所述文档库中预存多种语言文档中各语言文档的文档语义表示,所述获取与所述检索词匹配的候选文档,包括:
将所述检索词转换为检索词语义表示;
在所述各语言文档的文档语义表示中,检索与所述检索词语义表示匹配的文档语义表示;
将所述匹配的文档语义表示对应的文档作为候选文档。
3.根据权利要求2所述的方法,其中,所述检索与所述检索词语义表示匹配的文档语义表示,包括:
通过近似最近邻ANN算法,检索与所述检索词语义表示匹配的文档语义表示。
4.根据权利要求2所述的方法,其中,所述将所述检索词转换为检索词语义表示,包括:
采用跨语言语义表示模型,将所述检索词转换为检索词语义表示,所述跨语言语义表示模型采用跨语言训练语料训练得到,所述跨语言训练语料包括:机器翻译的平行语料,以及,单语言的检索词和文档对语料。
5.根据权利要求1-4任一项所述的方法,其中,所述对所述候选文档进行排序,包括:
将所述检索词和所述候选文档拼接后,作为跨语言语义匹配模型的输入数据;
采用所述跨语言语义匹配模型,对所述输入数据进行相关度计算,并根据计算得到的相关度对所述候选文档进行排序。
6.一种跨语言语义表示模型的训练方法,包括:
获取跨语言训练语料,所述跨语言训练语料包括:机器翻译的平行语料,以及,单语言的检索词和文档对语料;
采用所述跨语言训练语料,对跨语言语义表示模型进行训练。
7.根据权利要求6所述的方法,其中,所述采用所述跨语言训练语料,对跨语言语义表示模型进行训练,包括:
确定所述跨语言训练语料中的正样本和负样本;
基于跨语言语义表示模型,得到所述正样本的内积和所述负样本的内积;
在所述正样本的内积大于同批次内所有负样本的内积时,完成对所述跨语言语义表示模型的训练。
8.根据权利要求7所述的方法,其中,所述基于跨语言语义表示模型,得到所述正样本的内积和所述负样本的内积,包括:
对应所述正样本,将所述正样本的训练检索词输入到跨语言语义表示模型中得到所述正样本的第一语义表示,将所述正样本的训练文档输入到所述跨语言语义表示模型中得到所述正样本的第二语义表示,计算所述正样本的第一语义表示与所述正样本的第二语义表示的内积,作为所述正样本的内积;
对应所述负样本,将所述负样本的训练检索词输入到所述跨语言语义表示模型中得到所述负样本的第一语义表示,将所述负样本的训练文档输入到所述跨语言语义表示模型中得到所述负样本的第二语义表示,计算所述负样本的第一语义表示与所述负样本的第二语义表示的内积,作为所述负样本的内积。
9.根据权利要求7-8任一项所述的方法,其中,所述确定所述跨语言训练语料中的正样本和负样本,包括:
对应所述机器翻译的平行语料,将语义相同的两个语言的句子作为正样本,随机打乱的两个语言的句子作为负样本;和/或,
对应所述单语言检索词和文档对语料,将匹配的检索词和文档作为正样本,随机打乱的检索词和文档作为负样本。
10.一种跨语言检索装置,包括:
接收模块,用于接收用户输入的检索词;
召回模块,用于根据所述检索词的检索词语义表示,在包含多种语言文档的文档库中,获取与所述检索词匹配的候选文档;
排序模块,用于对所述候选文档进行排序,将排序后的候选文档作为检索结果,返回给所述用户。
11.根据权利要求10所述的装置,其中,所述文档库中预存多种语言文档中各语言文档的文档语义表示,所述召回模块具体用于:
将所述检索词转换为检索词语义表示;
在所述各语言文档的文档语义表示中,检索与所述检索词语义表示匹配的文档语义表示;
将所述匹配的文档语义表示对应的文档作为候选文档。
12.根据权利要求11所述的装置,其中,所述召回模块进一步具体用于:
通过近似最近邻ANN算法,检索与所述检索词语义表示匹配的文档语义表示。
13.根据权利要求12所述的装置,其中,所述召回模块进一步具体用于:
采用跨语言语义表示模型,将所述检索词转换为检索词语义表示,所述跨语言语义表示模型采用跨语言训练语料训练得到,所述跨语言训练语料包括:机器翻译的平行语料,以及,单语言的检索词和文档对语料。
14.根据权利要求10-13任一项所述的装置,其中,所述排序模块具体用于:
将所述检索词和所述候选文档拼接后,作为跨语言语义匹配模型的输入数据;
采用所述跨语言语义匹配模型,对所述输入数据进行相关度计算,并根据计算得到的相关度对所述候选文档进行排序。
15.一种跨语言语义表示模型的训练装置,包括:
获取模块,用于获取跨语言训练语料,所述跨语言训练语料包括:机器翻译的平行语料,以及,单语言的检索词和文档对语料;
训练模块,用于采用所述跨语言训练语料,对跨语言语义表示模型进行训练。
16.根据权利要求15所述的装置,其中,所述训练模块具体用于:
确定所述跨语言训练语料中的正样本和负样本;
基于跨语言语义表示模型,得到所述正样本的内积和所述负样本的内积;
在所述正样本的内积大于同批次内所有负样本的内积时,完成对所述跨语言语义表示模型的训练。
17.根据权利要求16所述的装置,其中,所述训练模块进一步具体用于:
对应所述正样本,将所述正样本的训练检索词输入到跨语言语义表示模型中得到所述正样本的第一语义表示,将所述正样本的训练文档输入到所述跨语言语义表示模型中得到所述正样本的第二语义表示,计算所述正样本的第一语义表示与所述正样本的第二语义表示的内积,作为所述正样本的内积;
对应所述负样本,将所述负样本的训练检索词输入到所述跨语言语义表示模型中得到所述负样本的第一语义表示,将所述负样本的训练文档输入到所述跨语言语义表示模型中得到所述负样本的第二语义表示,计算所述负样本的第一语义表示与所述负样本的第二语义表示的内积,作为所述负样本的内积。
18.根据权利要求16-17任一项所述的装置,其中,所述训练模块进一步具体用于:
对应所述机器翻译的平行语料,将语义相同的两个语言的句子作为正样本,随机打乱的两个语言的句子作为负样本;和/或,
对应所述单语言检索词和文档对语料,将匹配的检索词和文档作为正样本,随机打乱的检索词和文档作为负样本。
19.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的检索方法,或者,6-9中任一项所述的训练方法。
20.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-5中任一项所述的检索方法,或者,6-9中任一项所述的训练方法。
21.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-5中任一项所述的检索方法,或者,6-9中任一项所述的训练方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011504125.XA CN112528681A (zh) | 2020-12-18 | 2020-12-18 | 跨语言检索及模型训练方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011504125.XA CN112528681A (zh) | 2020-12-18 | 2020-12-18 | 跨语言检索及模型训练方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112528681A true CN112528681A (zh) | 2021-03-19 |
Family
ID=75001511
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011504125.XA Pending CN112528681A (zh) | 2020-12-18 | 2020-12-18 | 跨语言检索及模型训练方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112528681A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113704408A (zh) * | 2021-08-31 | 2021-11-26 | 工银科技有限公司 | 检索方法、装置、电子设备、存储介质和程序产品 |
CN114417879A (zh) * | 2021-12-29 | 2022-04-29 | 北京百度网讯科技有限公司 | 跨语言文本语义模型的生成方法、装置及电子设备 |
CN114676227A (zh) * | 2022-04-06 | 2022-06-28 | 北京百度网讯科技有限公司 | 样本生成方法、模型的训练方法以及检索方法 |
CN117076614A (zh) * | 2023-10-13 | 2023-11-17 | 中山大学深圳研究院 | 基于迁移学习的跨语种文本检索方法及终端设备 |
WO2023236253A1 (zh) * | 2022-06-07 | 2023-12-14 | 来也科技(北京)有限公司 | 文档检索方法、装置及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103488648A (zh) * | 2012-06-13 | 2014-01-01 | 阿里巴巴集团控股有限公司 | 一种多语种混合检索方法和系统 |
CN106156023A (zh) * | 2015-03-23 | 2016-11-23 | 华为技术有限公司 | 语义匹配的方法、装置和系统 |
CN106372187A (zh) * | 2016-08-31 | 2017-02-01 | 中译语通科技(北京)有限公司 | 一种面向大数据的跨语言检索方法 |
CN110008401A (zh) * | 2019-02-21 | 2019-07-12 | 北京达佳互联信息技术有限公司 | 关键词提取方法、关键词提取装置和计算机可读存储介质 |
CN110532381A (zh) * | 2019-07-15 | 2019-12-03 | 中国平安人寿保险股份有限公司 | 一种文本向量获取方法、装置、计算机设备及存储介质 |
-
2020
- 2020-12-18 CN CN202011504125.XA patent/CN112528681A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103488648A (zh) * | 2012-06-13 | 2014-01-01 | 阿里巴巴集团控股有限公司 | 一种多语种混合检索方法和系统 |
CN106156023A (zh) * | 2015-03-23 | 2016-11-23 | 华为技术有限公司 | 语义匹配的方法、装置和系统 |
CN106372187A (zh) * | 2016-08-31 | 2017-02-01 | 中译语通科技(北京)有限公司 | 一种面向大数据的跨语言检索方法 |
CN110008401A (zh) * | 2019-02-21 | 2019-07-12 | 北京达佳互联信息技术有限公司 | 关键词提取方法、关键词提取装置和计算机可读存储介质 |
CN110532381A (zh) * | 2019-07-15 | 2019-12-03 | 中国平安人寿保险股份有限公司 | 一种文本向量获取方法、装置、计算机设备及存储介质 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113704408A (zh) * | 2021-08-31 | 2021-11-26 | 工银科技有限公司 | 检索方法、装置、电子设备、存储介质和程序产品 |
CN114417879A (zh) * | 2021-12-29 | 2022-04-29 | 北京百度网讯科技有限公司 | 跨语言文本语义模型的生成方法、装置及电子设备 |
CN114417879B (zh) * | 2021-12-29 | 2022-12-27 | 北京百度网讯科技有限公司 | 跨语言文本语义模型的生成方法、装置及电子设备 |
CN114676227A (zh) * | 2022-04-06 | 2022-06-28 | 北京百度网讯科技有限公司 | 样本生成方法、模型的训练方法以及检索方法 |
CN114676227B (zh) * | 2022-04-06 | 2023-07-18 | 北京百度网讯科技有限公司 | 样本生成方法、模型的训练方法以及检索方法 |
WO2023236253A1 (zh) * | 2022-06-07 | 2023-12-14 | 来也科技(北京)有限公司 | 文档检索方法、装置及电子设备 |
CN117076614A (zh) * | 2023-10-13 | 2023-11-17 | 中山大学深圳研究院 | 基于迁移学习的跨语种文本检索方法及终端设备 |
CN117076614B (zh) * | 2023-10-13 | 2024-02-02 | 中山大学深圳研究院 | 基于迁移学习的跨语种文本检索方法及终端设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112528681A (zh) | 跨语言检索及模型训练方法、装置、设备和存储介质 | |
EP3958145A1 (en) | Method and apparatus for semantic retrieval, device and storage medium | |
US10558754B2 (en) | Method and system for automating training of named entity recognition in natural language processing | |
US11928435B2 (en) | Event extraction method, event extraction device, and electronic device | |
US11907671B2 (en) | Role labeling method, electronic device and storage medium | |
CN113204621B (zh) | 文档入库、文档检索方法,装置,设备以及存储介质 | |
CN114861889B (zh) | 深度学习模型的训练方法、目标对象检测方法和装置 | |
CN114840671A (zh) | 对话生成方法、模型的训练方法、装置、设备及介质 | |
US20220129448A1 (en) | Intelligent dialogue method and apparatus, and storage medium | |
US20190155942A1 (en) | Searching multilingual documents based on document structure extraction | |
CN113836314B (zh) | 知识图谱构建方法、装置、设备以及存储介质 | |
CN113220835A (zh) | 文本信息处理方法、装置、电子设备以及存储介质 | |
CN111460117B (zh) | 对话机器人意图语料生成方法、装置、介质及电子设备 | |
CN113988157A (zh) | 语义检索网络训练方法、装置、电子设备及存储介质 | |
CN117112595A (zh) | 一种信息查询方法、装置、电子设备及存储介质 | |
CN111523019A (zh) | 用于输出信息的方法、装置、设备以及存储介质 | |
CN113051875B (zh) | 信息转换模型的训练方法、文本信息的转换方法和装置 | |
CN111259058B (zh) | 数据挖掘方法、数据挖掘装置和电子设备 | |
CN113761923A (zh) | 命名实体识别方法、装置、电子设备及存储介质 | |
CN116049370A (zh) | 信息查询方法和信息生成模型的训练方法、装置 | |
CN115936018A (zh) | 一种术语翻译方法、装置、电子设备及存储介质 | |
CN114676227A (zh) | 样本生成方法、模型的训练方法以及检索方法 | |
CN114090885A (zh) | 产品标题核心词提取方法、相关装置及计算机程序产品 | |
CN114201607A (zh) | 一种信息处理的方法和装置 | |
CN112015989A (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 |