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

信息检索及模型训练方法、装置、设备和存储介质与流程

2022-12-13 22:48:57 来源:中国专利 TAG:


1.本公开涉及人工智能技术领域,具体涉及智能搜索、自然语言处理、深度学习等技术领域,尤其涉及一种信息检索及模型训练方法、装置、设备和存储介质。


背景技术:

2.企业内部知识流动中,目标之一是对企业内部不同的知识完成统一、简单、高效的检索。在这类检索中,检索词(query)通常是短且泛的,如何提升这类泛需求的检索效果是需要解决的问题。


技术实现要素:

3.本公开提供了一种信息检索及模型训练方法、装置、设备和存储介质。根据本公开的一方面,提供了一种信息检索方法,包括:获取检索词对应的至少一个候选文本;针对任一候选文本,基于该候选文本的第一语义向量,对该候选文本中的关键词的第二语义向量进行更新处理,以获得第三语义向量;针对任一候选文本,基于该候选文本对应的第三语义向量和所述检索词的第四语义向量,确定该候选文本与所述检索词的相似度;基于各个候选文本与所述检索词的相似度,对所述至少一个候选文本进行排序处理,并基于排序处理后的候选文本,获得对应所述检索词的检索结果。
4.根据本公开的另一方面,提供了一种模型训练方法,包括:获取训练数据,所述训练数据包括:样本检索词和对应的至少一个样本候选文本,以及,各个样本候选文本与所述样本检索词之间的真实相似度;针对任一样本候选文本采用编码模型,对该样本候选文本进行编码处理,以获得该样本候选文本的第一语义向量;针对任一样本候选文本,基于该样本候选文本的第一语义向量,对该样本候选文本中的关键词的第二语义向量进行更新处理,以获得该样本候选文本对应的第三语义向量;采用所述编码模型,对所述样本检索词中的至少一个文本单元分别进行编码处理,以获得至少一个编码向量,以及,对所述至少一个编码向量进行合并处理,以获得所述样本检索词的第四语义向量;针对任一样本候选文本,基于该样本候选文本对应的第三语义向量和所述样本检索词的第四语义向量,确定该样本候选文本与所述样本检索词的预测相似度;基于各个样本候选文本与所述样本检索词的预测相似度和所述各个样本候选文本与所述样本检索词的真实相似度,构建损失函数;以及,基于所述损失函数,调整所述编码模型的模型参数。
5.根据本公开的另一方面,提供了一种信息检索装置,包括:第一获取模块,用于获取检索词对应的至少一个候选文本;更新模块,用于针对任一候选文本,基于该候选文本的第一语义向量,对该候选文本中的关键词的第二语义向量进行更新处理,以获得第三语义向量;确定模块,用于针对任一候选文本,基于该候选文本对应的第三语义向量和所述检索词的第四语义向量,确定该候选文本与所述检索词的相似度;排序模块,用于基于各个候选文本与所述检索词的相似度,对所述至少一个候选文本进行排序处理,并基于排序处理后的候选文本,获得对应所述检索词的检索结果。
6.根据本公开的另一方面,提供了一种模型训练装置,包括:获取模块,用于获取训练数据,所述训练数据包括:样本检索词和对应的至少一个样本候选文本,以及,各个样本候选文本与所述样本检索词之间的真实相似度;第一编码模块,用于针对任一样本候选文本采用编码模型,对该样本候选文本进行编码处理,以获得该样本候选文本的第一语义向量;更新模块,用于针对任一样本候选文本,基于该样本候选文本的第一语义向量,对该样本候选文本中的关键词的第二语义向量进行更新处理,以获得该样本候选文本对应的第三语义向量;第二编码模块,用于采用所述编码模型,对所述样本检索词中的至少一个文本单元分别进行编码处理,以获得至少一个编码向量,以及,对所述至少一个编码向量进行合并处理,以获得所述样本检索词的第四语义向量;确定模块,用于针对任一样本候选文本,基于该样本候选文本对应的第三语义向量和所述样本检索词的第四语义向量,确定该样本候选文本与所述样本检索词的预测相似度;调整模块,用于基于各个样本候选文本与所述样本检索词的预测相似度和所述各个样本候选文本与所述样本检索词的真实相似度,构建损失函数;以及,基于所述损失函数,调整所述编码模型的模型参数。
7.根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上述任一方面的任一项所述的方法。
8.根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据上述任一方面的任一项所述的方法。
9.根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据上述任一方面的任一项所述的方法。
10.根据本公开的技术方案,可以提高信息检索效果。
11.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
12.附图用于更好地理解本方案,不构成对本公开的限定。其中:
13.图1是根据本公开第一实施例的示意图;
14.图2是根据本公开实施例适用的应用场景的示意图;
15.图3是根据本公开实施例提供的整体框架的示意图;
16.图4是根据本公开实施例提供的数据库内存储的匹配文本的示意图;
17.图5是根据本公开第二实施例的示意图;
18.图6是根据本公开实施例提供的排序模型的示意图;
19.图7是根据本公开第三实施例的示意图;
20.图8是根据本公开第四实施例的示意图;
21.图9是根据本公开第五实施例的示意图;
22.图10是用来实现本公开实施例的信息检索方法或模型训练方法的电子设备的示意图。
具体实施方式
23.以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
24.图1是根据本公开第一实施例的示意图,本实施例提供一种信息检索方法,该方法包括:
25.步骤101、获取检索词对应的至少一个候选文本。
26.步骤102、针对任一候选文本,基于该候选文本的第一语义向量,对该候选文本中的关键词的第二语义向量进行更新处理,以获得第三语义向量。
27.步骤103、针对任一候选文本,基于该候选文本对应的第三语义向量和所述检索词的第四语义向量,确定该候选文本与所述检索词的相似度。
28.步骤104、基于各个候选文本与所述检索词的相似度,对所述至少一个候选文本进行排序处理,并基于排序处理后的候选文本,获得对应所述检索词的检索结果。
29.其中,信息检索过程可以包括离线过程和在线过程,在线过程可以包括召回阶段和排序阶段,召回阶段主要是指将检索词与数据库内的文本进行匹配处理,数据内的文本可以称为匹配文本,经过匹配处理,可以召回第一预设个数(如300条)的匹配文本,该第一预设个数的匹配文本可以称为候选文本。候选文本通常是多个,比如上述的300条的候选文本。
30.候选文本的语义向量可以称为第一语义向量。
31.候选文本中可以包括关键词,关键词是指与检索词(query)进行相似度计算的文本。
32.例如,每条候选文本包括一对问答对,每对问答对包括一条问题和一条答案,其中的问题可以作为关键词。
33.关键词的初始语义向量可以称为第二语义向量,关键词的更新后的语义向量可以称为第三语义向量。
34.检索词的语义向量可以称为第四语义向量。
35.上述的第一语义向量和第四语义向量,可以采用预先训练的编码器(encoder)获得。
36.例如,针对任一候选文本,将候选文本输入到第一编码器中进行编码处理,第一编码器输出第一语义向量,例如用表示,n为候选文本的长度,即候选文本包含的文本单元(token)的个数,token根据实际需求可以选择为字或词。hi(i=1,2...,n)可以选择为维度为m的行向量。n和m均为正整数,例如,n=512,m=768。
37.类似的,将检索词输入到第二编码器中进行编码处理,第二编码器输出的编码向量可以用表示,第四语义向量可以是对上述的编码向量进行合并处理后获得的,例如,对进行取均值操作后再采用设定的激活函数进行激活处理后获得。
38.其中,第一编码器和第二编码器可以是两个编码器;或者,第一编码器和第二编码器是同一个编码器或者说共享参数的编码器。
39.上述的第二语义向量可以是在离线阶段获得的,第三语义向量是采用第一语义向量对第二语义向量进行更新处理后获得的。
40.第二语义向量、第三语义向量和第四语义向量的维度均为1*m。
41.各个候选文本与检索词的相似度基于第三语义向量和第四语义向量确定。相似度可以通过相似度得分体现,例如,可以计算第三语义向量与第四语义向量的点积,将点积作为相似度得分。该相似度得分越大,表明对应的候选文本与检索词的相似度越大。
42.获得相似度得分后,可以按照相似度得分从高到低的顺序对各个候选文本进行排序处理,以获得排序处理后的候选文本。
43.获得排序处理后的候选文本后,可以按序选择第二预设个数(如2~5条)的候选文本,基于所选择的候选文本给出检索结果。例如,每条候选文本可以包括问题和答案,可以将其问题作为检索结果,或者,也可以将问题和答案作为检索结果。
44.本实施例可以应用于特定域(如企业内部)的泛需求检索场景,该场景下,检索词(query)通常是短且泛的(如检索词是“周报”),相比较的,候选文本通常是较长的包含更多信息的。
45.本实施例中,针对任一候选文本,基于该候选文本的第一语义向量,对该候选文本中的关键词的第二语义向量进行更新处理,以获得第三语义向量,可以利用候选文本包含更多信息的特性,获得表征能力更好的第三语义向量,进而基于第三语义向量确定相似度,以及基于相似度获得检索结果时,可以提高检索结果的准确度;另外,基于所述第三语义向量和所述检索词的第四语义向量,确定各个候选文本与检索词的相似度,可以相对快速地获得检索结果,提高检索效率。由于检索准确度和检索效率都较好,因此,可以提高信息检索效果。
46.为了更好地理解本公开实施例,下面对本公开实施例适用的应用场景进行说明。本实施例可以应用于特定域(如企业内部)的泛需求检索场景,泛需求是指用户输入的问题(query)是比较泛的问题,需求并不明确。
47.如图2所示,用户可以在搜索引擎的客户端内输入检索词(query),客户端可以部署在用户终端201上,用户终端可以为个人电脑(personal computer)、笔记本电脑、移动设备(如手机)等。客户端将检索词发送给服务端,服务端可以部署在服务器202上,服务器可以为本地服务器或者云端服务器等。服务端可以基于检索词进行检索,以获得检索结果,并将检索结果发送给客户端进行展示。
48.本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
49.整体的检索过程可以包括离线阶段和在线阶段,离线阶段主要是生成入库的数据,在线阶段主要是在入库的数据中获取与检索词相关的检索结果。
50.如图3所示,离线阶段主要包括离线模块301,在线阶段主要包括在线召回模块302和在线排序模块303。
51.针对离线模块301,通常入库的数据是已有问答对,本实施例中,不仅包括上述的问答对,还包括触发词,另外,不仅包括上述的文本,还包括相关的语义向量。
52.其中,已有问答对是指预先收集的问答对,通常是常见问题(frequently asked questions,fqa)的问答对。
53.问答对包括问题和答案,还可以包括其他信息,如部门、地域等,其中的问题可以称为标准问。
54.在特定域(如企业内部),相对于开发域,其数据库内的问答对的数量较少,导致召回率(即召回的比率)低,为了提高召回率,可以对标准问进行扩展,对标准问进行扩展后获得的文本可以称为触发词。
55.例如,标准问是“2021年第四季度暨年度财务报告”,其对应的触发词可以包括:“财报”、“2021年度财报”等。
56.如图4所示,数据库内可以存储多条文本,所存储的文本可以称为匹配文本,每条匹配文本可以包括多个字段,多个字段可以包括:序号、标准问字段、答案字段、地域字段、部门字段,以及,触发词字段、热度字段等。
57.其中,标准问字段用于记录标准问,如,“2021年第四季度暨年度财务报告”;答案字段用于记录标准问对应的答案;地域字段用于记录地域信息,部门字段用于记录部门信息;触发词字段用于记录标准问对应的触发词,如,“财报”和“2021年度财报”;热度字段用于记录匹配文本的热度得分,热度得分是[0,1]之间的值,如“0.6”,热度得分可以根据匹配文本中的标准问的检索频率计算,检索频率越高,热度得分越高,检索频率可以基于日志中记录的用户行为获得,检索频率与热度得分之间的计算公式可以根据实际需求设置。
[0058]
数据库存储的匹配文本可以是对已有问答对进行清洗处理后获得的,例如,如图3所示,离线清洗模块可以对已有问答对进行清洗处理,清洗处理后保留下的问答对可以称为准入问答对。另外,离线清洗模块还可以计算基于准入问答对中标准问的检索频率计算热度得分。
[0059]
触发词模块可以基于准入问答对中的标准问获得触发词。之后,将准入问答对、触发词及热度得分组成匹配文本,并记录在数据库内。
[0060]
因此,数据库内记录的匹配文本中不仅包括标准问文本,还包括触发词文本。
[0061]
标准问和触发词可以统称为关键词。
[0062]
另外,数据库内不仅记录匹配文本,还记录关键词的语义向量,即还记录标准问的语义向量和触发词的语义向量。
[0063]
采用离线模块301,可以获得数据库中的数据,包括文本和语义向量,这些数据可以提供给在线召回模块。
[0064]
针对在线召回模块302,其输入是用户输入的检索词(query),以及离线模块301获得的数据库内的数据(文本和语义向量),输出是候选文本。在泛需求场景下,检索词是短且泛的,在图3中用“泛需求”问题表示,如“周报”。
[0065]
如图3所示,召回阶段可以由检索引擎执行,检索引擎可以具体是es(elasticsearch),es是一种分布式检索和分析引擎。
[0066]
基于上述离线阶段的处理可知,数据库内的文本不仅包括标准问,还包括触发词,因此,数据源可以称为多数据源,具体包括标准问和触发词这两种数据源。
[0067]
通常的召回过程是基于语义召回或者基于文本(term)召回,而本实施例中,是基于语义召回和基于文本召回的双路召回。因此,如图3所示,本实施例的召回过程可以称为标准问 触发词多数据源双路召回。
[0068]
召回过程是从数据库的匹配文本中选择第一预设数量(如300条)的匹配文本,所
选择的匹配文本可以称为候选文本,或者,候选文本也可以是对所选择的匹配文本进行去重处理后的文本。
[0069]
针对在线排序模块303,其输入是在线召回模块302获得候选文本,输出是检索词的检索结果,在图3中用推荐表示。
[0070]
排序阶段主要是对候选文本进行排序,本实施例的排序得分是融合了相似度得分和热度得分获得的,另外,相似度得分是基于改造后的poly-encoder获得的。
[0071]
结合上述的应用场景,本公开还提供一种信息检索方法。
[0072]
图5是根据本公开第二实施例的示意图,本实施例提供一种信息检索方法,本实施例以关键词包括:标准问和触发词为例,本实施例以匹配文本、候选文本以及检索结果均为多个为例。该方法包括:
[0073]
步骤501、获取已有问答对。
[0074]
其中,已有问答对是预先收集的,可以是经常问到的问题(faq)对应的问答对。在特定域,已有问答对的数量是较少的。
[0075]
每条已有问答对至少包括一条问题和一条答案,问题可以称为标准问。
[0076]
步骤502、对所述已有问答对进行清洗处理,以获得准入问答对。
[0077]
其中,清洗处理可以包括:过滤答案过长过短的问答对、过滤未清爽(buck-passing)答疑的问答对,上述两种可以基于正则匹配语句进行过滤;过滤问题-答案(q-a)不匹配的问答对、过滤含颜文字的闲聊问答对,上述两种可以基于ac自动机(aho-corasick automaton)匹配;过滤表意不明的问答对,可以基于正则匹配语句进行过滤;过滤低时效性的问答对,可以基于词法分析工具lac(lexical analysis of chinese)和词典库抽取时间实体,判断与当前日期的关系,定时更新低时效性信息。
[0078]
清洗处理后保留下的问答对,可以称为准入问答对。
[0079]
步骤503、基于准入问答对中的标准问,生成所述标准问对应的触发词。
[0080]
其中,针对每个标准问,可以获取该标准问的相似问,基于标准问和相似问获得触发词。
[0081]
其中,标准问的相似问可以采用各种相关技术实现,例如,人工构建、机器自动生成,基于用户行为挖掘等。
[0082]
获得相似问后,可以对所述标准问和所述标准问对应的相似问进行拼接处理,以获得拼接文本;对所述拼接文本进行多种分词处理,以获得多组分词后的词语;对所述多组分词后的词语进行合并处理,以获得候选词语;对所述候选词语进行过滤处理,以获得所述标准问对应的触发词。
[0083]
具体地,触发词的生成过程可以包括:
[0084]
(1)对标准问 相似问拼接后(目的增加触发词的多样性)基于lac2.0工具进行切词,将“名词、名动词、专名、普通动词”等词语抽取出来放入候选集合。
[0085]
(2)对标准问 相似问拼接后(目的增加触发词的多样性)基于jieba工具进行切词和词性标注,将头部(位置靠前)的“名词、名动词、专名”等词语给抽取出来放入候选集合。
[0086]
(3)将(1)和(2)的结果合并(concat),即取并集后,作为该标准问对应的触发词候选集。
[0087]
(4)对触发词候选集进行过滤处理,将保留的触发词作为最终的标准问对应的触
发词。
[0088]
针对触发词候选集进行过滤处理可以包括如下项中的至少一项:基于词语重要度算子的过滤、基于停用词词典的过滤、基于语义匹配相似性的过滤。
[0089]
(a)基于词语重要度算子的过滤:
[0090]
其中,词语重要度算子是已有的分类模型,触发词候选集中的词语可以称为候选词,将候选词输入到词语重要度算子中,输出是候选词的重要度得分,重要度得分可以是0或1,0表示对应的候选词是非重要的,1表示对应的候选词是重要的。
[0091]
之后,可以在候选集中去掉不重要(得分为0)的候选词。
[0092]
(b)基于领域停用词词典的过滤:
[0093]
其中,可以将候选词与领域停用词词典基于ac自动机匹配,确定属于领域停用词词典中的候选词。
[0094]
之后,可以在候选集中去掉属于领域停用词词典中的候选词。
[0095]
(c)基于语义匹配相似性的过滤:
[0096]
针对某个标准问,可以获得该标准问的语义向量,以及该标准问的相似问的语义向量,并计算标准问的语义向量与相似问的语义向量的均值向量;假设每个token(根据实际划分规则,可以是字或词)的维度是768,则上述的均值向量是1*768的向量;
[0097]
类似的,针对每个候选词,可以获得该候选词的语义向量,是1*768的向量。
[0098]
针对每个候选词,计算该候选词的语义向量与均值向量的点积,即用每个候选词的语义向量乘以均值向量的转置向量,计算得到的点积值可以称为候选词的相似度得分。
[0099]
之后,可以在候选集中去掉相似度得分小于预设值(如0.5)的候选词。
[0100]
上述的语义向量可以是将对应的文本输入到编码模型中,基于编码模型的输出获得的,对应的文本是指标准问、相似问、候选词。
[0101]
编码模型可以采用已有的预训练模型,例如,双向transformer的encoder(bidirectional encoder representations from transformers,bert)模型、知识增强语义表示(enhanced representation from knowledge integration,ernie)模型等。
[0102]
本实施例,通过基于标准问及其对应的相似问获得触发词,可以增加触发词的多样性,进而可以提高召回率。
[0103]
步骤504、基于所述标准问和所述标准问对应的触发词,生成多个匹配文本,并将多个匹配文本存储在数据库内。
[0104]
其中,如图4所示,每条匹配文本可以包括标准问、触发词,答案,还可以包括其他信息,如地域、部门等。另外,还可以基于用户行为,例如标准问的检索频率确定对应匹配文本的热度得分,并记录在热度字段中。
[0105]
本实施例中,基于标准问和触发词生成匹配文本,可以实现数据源不仅包括标准问,还包括触发词,丰富数据源的种类,提高召回率。
[0106]
步骤505、获取标准问对应的初始标准问语义向量和触发词对应的初始触发词语义向量,并存储在数据库内。
[0107]
由于后续流程中会对标准问语义向量和触发词语义向量进行更新,因此,存储在数据库内的初始值可以分别称为初始标准问语义向量和初始触发词语义向量。
[0108]
其中,初始标准问语义向量和初始触发词语义向量,可以采用类似方式获得。
[0109]
以标准问为例,可以将标准问输入到编码模型中,根据编码模型的输出向量获得初始标准问语义向量。以编码模型为ernie模型为例,将标准问输入到ernie模型后,其最后一层的输出是512*768维度的张量,其中,512是标准问所包含的token数量,768是每个token的语义向量的维度,对其进行按列取平均运算,可以获得1*768的初始标准问语义向量。
[0110]
步骤504和步骤505无时序限制关系。
[0111]
上述的步骤501-步骤505可以是在离线阶段完成。
[0112]
在线阶段可以执行如下步骤:
[0113]
步骤506、接收用户输入的检索词(query)。
[0114]
其中,可以接收到检索词后可以直接执行后续的507等步骤,或者,还可以接收到检索词后,判断检索词是否为泛需求的检索词,在检索词是泛需求的检索词时再执行后续的步骤507等步骤。关于检索词的识别,可以采用预训练的分类模型,采用分类模型判断检索词是否为泛需求的检索词。分类模型可以采用相关的模型训练方式获得。
[0115]
步骤507、在数据库内已存储的多个匹配文本中,基于语义召回和文本召回,获取所述检索词对应的多个候选文本。
[0116]
其中,召回阶段采用双路召回方案,即基于语义召回和基于文本(term)召回。
[0117]
双路召回过程,可以获取多个匹配文本;针对所述多个匹配文本包括的多个关键词,分别确定各个关键词与所述检索词的语义相似度,并确定各个关键词与所述检索词的文本相似度;基于所述文本相似度和所述语义相似度,确定所述各个关键词的召回概率,所述召回概率用于表征关键词被选择(被召回)的概率;基于所述各个关键词的召回概率,在所述多个关键词中选择预设个数的关键词,以获得选择后的关键词;基于所述选择后的关键词所在的匹配文本,获取所述检索词对应的至少一个候选文本。
[0118]
本实施例中,语义相似度和文本相似度可以分别通过语义相似度得分和文本相似度得分体现,召回概率可以通过召回得分体现,相应地,召回得分基于文本相似度得分和语义相似度得分获得,实现了基于语义召回和基于文本召回,由于采用了双路召回,相对于单路召回,可以提高召回率。
[0119]
用公式表示为:
[0120]
score
召回
=w1*score
j-vec
w2*score
j-term
ꢀꢀꢀ
(1)
[0121]
其中,j是关键词索引,关键词可以是标准问或者触发词,例如,标准问一共有n个,触发词一共有m个,则j=1,2,...,(n m);
[0122]
score
召回
是第j个关键词的召回得分;该召回得分越大,对应的关键词的选择概率越大,即越容易被选择。
[0123]
score
j-vec
是第j个关键词与检索词的语义相似度得分;该语义相似度得分越大,对应的关键词与检索词的语义相似度越大。
[0124]
score
j-term
是第j个关键词与检索词的文本相似度得分;该文本相似度得分越大,对应的关键词与检索词的文本相似度越大。
[0125]
w1,w2是预设的权重系数,均是0~1之间的数值,且w1 w2=1;
[0126]
*表示相乘运算。
[0127]
针对语义召回,计算公式是:
[0128][0129]
其中,score
j-vec
是第j个关键词与检索词的语义相似度得分;
[0130]
vecj是第j个关键词的语义向量,即上述已存储的初始标准问语义向量或者初始触发词语义向量;
[0131]
是vec
query
的转置向量;
[0132]
vec
query
是检索词(query)的语义向量。
[0133]
其中,检索词的语义向量也可以采用类似上述的初始标准问语义向量的获得方式,即可以将检索词输入到预训练的编码模型(如ernie模型)中,对模型输出进行均值运算,获得检索词的语义向量,即,对输出的512*768维度的张量进行按列均值,获得1*768的向量。用公式表示为:
[0134]
vec
query
=avg(ernie
last_layer
)
ꢀꢀꢀ
(3)
[0135]
针对文本召回,计算公式是:
[0136]
score
j-term
=∑
jkwjk
*score
jk
ꢀꢀꢀ
(4)
[0137]
其中,score
j-term
是第j个关键词与检索词的文本相似度得分;
[0138]
其中,w
jk
是权重系数,可以人为设定。
[0139]
从图4所示的匹配文本可以看出,每条匹配文本可以包括多种字段,k是匹配文本中的字段索引。
[0140]
公式(4)中涉及的参数score
jk
的计算公式是:
[0141]
score
jk
=∑i(tf
ijk
*idf
ijk
)
ꢀꢀꢀ
(5)
[0142][0143][0144]
其中,i是检索词经过分词处理后的分词的索引;
[0145]
是检索词中的第i个分词,在第j个关键词所在的匹配文本的第k个字段中的出现次数;
[0146]
doclen
jk
是第j个关键词所在的匹配文本的第k个字段的长度,即对应字段分词处理后的分词的词数;
[0147]
doccount
jk
是文档总数;
[0148]
docfreqi是包含检索词中的第i个分词的文档数量;
[0149]
每条匹配文本中的一个字段可以认为是一个文档。
[0150]
通过上述的公式(1)~(7),可以计算得到每个关键词的召回得分。
[0151]
获得每个关键词的召回得分后,可以按照召回得分从高到低的顺序,选择第一预设个数(如300个)的关键词作为召回关键词。
[0152]
将召回关键词所在的匹配文本作为候选文本,或者,对召回关键词所在的匹配文本进行去重等处理后获得候选文本。
[0153]
步骤508、对所述多个候选文本进行排序处理,并基于排序处理后的候选文本,获
得对应所述检索词的检索结果。
[0154]
其中,针对每条候选文本,可以采用预训练的编码模型对输入的候选文本进行编码处理,以获得候选文本语义向量,候选文本语义向量可以称为第一语义向量。另外,所述检索词包括至少一个文本单元,采用所述编码模型,对所述检索词中的至少一个文本单元分别进行编码处理,以获得至少一个编码向量,以及,对所述至少一个编码向量进行合并处理,以获得所述第四语义向量。
[0155]
可以理解的是,提取第一语义向量和第四语义向量的编码模型可以是同一个或者不同的两个模型,都可以是预先训练获得的。
[0156]
如图6所示,编码模型以ernie模型为例,以候选文本和检索词共用编码模型为例,即图6所示的两个ernie模型是共享参数的。
[0157]
关键词的初始语义向量可以称为第二语义向量,由于关键词包括标准问和触发词,因此,第二语义向量包括:标准问对应的初始标准问语义向量和触发词对应的初始触发词语义向量。
[0158]
初始标准问语义向量和初始触发词语义向量是离线阶段获得并存储在数据库内的。
[0159]
更新后的第二语义向量可以称为第三语义向量,即更新后的标准问语义向量和更新后的触发词语义向量。
[0160]
更新过程可以采用注意力(attention)网络执行。
[0161]
如图6所示,更新所涉及的注意力网络可以包括第一注意力网络和第二注意力网络,相应的权重可以称为第一注意力权重和第二注意力权重。
[0162]
更新过程可以包括:基于所述第一语义向量和所述初始标准问语义向量,确定第一注意力权重;基于所述第一注意力权重和所述第一语义向量,确定所述更新后的标准问语义向量;基于所述第一语义向量和所述初始触发词语义向量,确定第二注意力权重;基于所述第二注意力权重和所述第一语义向量,确定所述更新后的触发词语义向量。
[0163]
本实施例中,通过采用注意力机制,基于第一语义向量对初始标准问语义向量和初始触发词语义向量进行更新,可以获得信息表达能力更好的更新后的标准问语义向量和更新后的触发词语义向量,进而基于更新后的标准问语义向量和更新后的触发词语义向量计算相似度得分时,可以获得更准确的相似度得分,提高排序准确度,提高检索结果准确度。
[0164]
其中,标准问语义向量和触发词语义向量的更新过程类似,由于标准问和触发词可以统称为关键词,针对每个关键词,其语义向量的更新公式如下:
[0165][0166][0167]
其中,vecj是第j个关键词的初始语义向量,通常是1*m维的行向量;
[0168]
h1,...,hn是候选文本对应的第一语义向量,每个hi(i=1,2...,n)通常是1*m维的行向量;上标的t表示转置操作;
[0169]
是第一注意力权重;
[0170]
vec'j是第j个关键词的更新后的语义向量。
[0171]
因此,基于公式(8)~(9),可以计算得到更新后的标准问语义向量和更新后的触发词语义向量。
[0172]
获得更新后的标准问语义向量和更新后的触发词语义向量后,可以基于所述更新后的标准问语义向量和所述第四语义向量,确定第一点积值;基于所述更新后的触发词语义向量和所述第四语义向量,确定第二点积值;将所述第一点积值和所述第二点积值中的最大值,作为所述候选文本的相似度得分。
[0173]
本实施例中,直接采用更新后的标准问语义向量和更新后的触发词语义向量,与第四语义向量进行点积运算,并未对更新后的标准问语义向量和更新后的触发词语义向量进一步进行注意力处理,可以提高检索效率。
[0174]
其中,可以采用预训练的编码模型,对所述候选文本进行编码处理,以获得所述第一语义向量;以及,采用所述编码模型,对所述检索词进行编码处理,以获得所述检索词的编码向量,其中,所述检索词包括多个文本单元,所述编码向量为多个,所述多个编码向量中各个编码向量分别对应所述多个文本单元中各个文本单元;对所述多个编码向量进行合并处理,以获得所述第四语义向量。
[0175]
其中,文本单元可以称为token,根据实际需要可以选择为字或词。
[0176]
如图6所示,编码模型以ernie模型为例,左侧的token1~tokenn组成候选文本,右侧的token1~tokenn组成检索词,检索词用泛需求query表示。
[0177]
图6虽然示出了两个ernie模型,实际应用中可以共享参数,即可以认为是同一个模型。
[0178]
左侧的o1~on是候选文本对应的第一语义向量,即上述公式(8)中的h1,...,hn。
[0179]
右侧的o1~on是检索词对应的多个编码向量,可以对其进行合并处理(图6中用agg表示)后,获得第四语义向量。
[0180]
合并处理是指将n个行向量处理为一个行向量,例如,可以是对n个行向量取均值后,再采用激活函数进行激活后的值。第四语义向量也是1*m维的行向量。
[0181]
本实施例中,候选文本和检索词共用编码模型,可以降低模型参数量,降低资源开销,还可以提高运算效率。
[0182]
第四语义向量在图6中表示为检索词语义向量,如图6所示,在推理阶段,可以基于更新后的标准问语义向量和检索词语义向量,计算第一点积值,基于更新后的触发词语义向量和检索词语义向量,计算第二点积值,取第一点积值和第二点积值中的最大值(用max(点积)表示)作为各个候选文本与检索词的相似度得分。
[0183]
用公式表示如下:
[0184][0185]
其中,vec
query
是检索词语义向量;
[0186]
vec
stdquery
是更新后的标准问语义向量;
[0187]
vec
triggerwords
是更新后的触发词语义向量;
[0188]
上标的t表示转置操作;
[0189]
*表示相乘运算;
[0190]
max()表示取最大值运算。
[0191]
在排序时,可以包括:获取所述各个候选文本的热度;基于所述相似度和所述热
度,确定所述各个候选文本的排序优先级;基于所述排序优先级,对所述至少一个候选文本进行排序处理。
[0192]
其中,热度可以通过热度得分体现,排序优先级可以通过排序得分体现。
[0193]
其中,如图4所示,匹配文本中包含热度得分,候选文本是从匹配文本中获取的,因此每条候选文本中也记录热度得分,可以从记录的数据中获得热度得分。热度得分用于表征对应的候选文本的热度,比如,如上记载,每个候选文本中包括一个标准问,可以基于该标准问的检索频率计算。
[0194]
基于相似度得分和热度得分计算排序得分的公式是:
[0195]
排序得分=w3*相似度得分 w4*热度得分;
[0196]
其中,w3和w4是人工设置的权重系数,w3和w4均是0~1之间的数值,且w3 w4=1。
[0197]
排序得分用于表征对应的候选文本的排序顺序,比如,排序得分越高,对应的候选文本排在越前面。
[0198]
获得每条候选文本的排序得分后,可以按照排序得分从高到低的顺序对候选文本进行排序,并在排序后的候选文本中,按序选择预设个数(如2~5个)获得检索结果。
[0199]
例如,可以将选择的候选文本中的标准问作为检索结果,或者,将候选文本中的标准问和答案作为检索结果。
[0200]
本实施例中,通过基于相似度得分和热度得分获得排序得分,可以在排序阶段融合候选文本与检索词的相关度,以及候选文本的热度,提高信息检索效果。
[0201]
上述实施例中涉及了编码模型,如图6所示的ernie模型,下面对该编码模型的训练过程进行说明。
[0202]
图7是根据本公开第三实施例的示意图,本实施例提供一种模型训练方法,该方法包括:
[0203]
步骤701、获取训练数据,所述训练数据包括:样本检索词和对应的至少一个样本候选文本,以及,各个样本候选文本与所述样本检索词之间的真实相似度。
[0204]
步骤702、针对任一样本候选文本采用编码模型,对该样本候选文本进行编码处理,以获得该样本候选文本的第一语义向量。
[0205]
步骤703、针对任一样本候选文本,基于该样本候选文本的第一语义向量,对该样本候选文本中的关键词的第二语义向量进行更新处理,以获得该样本候选文本对应的第三语义向量。
[0206]
步骤704、采用所述编码模型,对所述样本检索词中的至少一个文本单元分别进行编码处理,以获得至少一个编码向量,以及,对所述至少一个编码向量进行合并处理,以获得所述样本检索词的第四语义向量。
[0207]
步骤705、针对任一样本候选文本,基于该样本候选文本对应的第三语义向量和所述样本检索词的第四语义向量,确定该样本候选文本与所述样本检索词的预测相似度。
[0208]
步骤706、基于各个样本候选文本与所述样本检索词的预测相似度和所述各个样本候选文本与所述样本检索词的真实相似度,构建损失函数;以及,基于所述损失函数,调整所述编码模型的模型参数。
[0209]
其中,训练过程中,样本候选文本、样本检索词可以是预先收集的样本,真实相似度可以是人工标注的,例如,样本候选文本和样本检索词是相似的,可以标注为1,否则标注
为0。
[0210]
本实施例中,针对任一样本候选文本,基于该样本候选文本的第一语义向量,对该候选文本中的关键词的第二语义向量进行更新处理,以获得第三语义向量,可以利用样本候选文本包含更多信息的特性,获得表征能力更好的第三语义向量,进而基于第三语义向量确定预测相似度,以及基于预测相似度训练模型时,可以提高模型的准确度。
[0211]
一些实施例中,所述关键词包括:标准问和触发词,所述标准问是已有问答对中的问题,所述触发词基于所述标准问获得;相应地,所述第二语义向量包括:所述标准问对应的初始标准问语义向量和所述触发词对应的初始触发词语义向量;所述第三语义向量包括:更新后的标准问语义向量和更新后的触发词语义向量;所述针对任一样本候选文本,基于该样本候选文本的第一语义向量,对该样本候选文本中的关键词的第二语义向量进行更新处理,以获得该样本候选文本对应的第三语义向量,包括:基于所述第一语义向量和所述初始标准问语义向量,确定第一注意力权重;基于所述第一注意力权重和所述第一语义向量,确定所述更新后的标准问语义向量;基于所述第一语义向量和所述初始触发词语义向量,确定第二注意力权重;基于所述第二注意力权重和所述第一语义向量,确定所述更新后的触发词语义向量。
[0212]
其中,模型推理过程和模型训练过程存在类似的步骤,不同的步骤分别用不同的线条进行了标识。
[0213]
训练过程的更新过程与推理过程的更新过程一致,可以参见上述实施例的相关说明。
[0214]
本实施例中,通过采用注意力机制,基于第一语义向量对初始标准问语义向量和初始触发词语义向量进行更新,可以获得信息表达能力更好的更新后的标准问语义向量和更新后的触发词语义向量,进而基于更新后的标准问语义向量和更新后的触发词语义向量计算预测相似度时,可以获得更准确的预测相似度,提高模型准确度。
[0215]
一些实施例中,所述针对任一样本候选文本,基于该样本候选文本对应的第三语义向量和所述样本检索词的第四语义向量,确定该样本候选文本与所述样本检索词的预测相似度,包括:基于所述更新后的标准问语义向量、所述更新后的触发词语义向量和所述第四语义向量,确定第三注意力权重;基于所述第三注意力权重、所述更新后的标准问语义向量和所述更新后的触发词语义向量,确定第五语义向量;基于所述第五语义向量和所述第四语义向量,获得所述预测相似度。
[0216]
其中,如图6所示,训练阶段中,获得更新后的标准问语义向量、更新后的触发词语义向量和检索词语义向量后,可以采用第三注意力网络进行处理,以获得候选文本语义向量,候选文本语义向量可以称为第五语义向量。
[0217]
计算公式如下:
[0218][0219]
vec
faq
=w
stdquery
*vec
stdquery
w
triggerwords
*vec
triggerwords
ꢀꢀꢀ
(12)
[0220]
其中,vec
faq
是候选文本语义向量;
[0221]
vec
stdquery
是更新后的标准问语义向量;
[0222]
vec
triggerwords
是更新后的触发词语义向量;
[0223]wstdquery
、w
triggerwords
是权重;
[0224]
vec
query
是检索词语义向量。
[0225]
训练相似度得分的计算公式如下:
[0226][0227]
本实施例中,通过注意力机制获得候选文本语义向量,可以提高候选文本语义向量的表达效果,进而提高模型效果。
[0228]
图8是根据本公开第四实施例的示意图,本实施例提供一种信息检索装置,该装置800包括:第一获取模块801、更新模块802、确定模块803和排序模块804。
[0229]
第一获取模块801用于获取检索词对应的至少一个候选文本;更新模块802用于针对任一候选文本,基于该候选文本的第一语义向量,对该候选文本中的关键词的第二语义向量进行更新处理,以获得第三语义向量;确定模块803用于针对任一候选文本,基于该候选文本对应的第三语义向量和所述检索词的第四语义向量,确定该候选文本与所述检索词的相似度;排序模块804用于基于各个候选文本与所述检索词的相似度,对所述至少一个候选文本进行排序处理,并基于排序处理后的候选文本,获得对应所述检索词的检索结果。
[0230]
本实施例中,针对任一候选文本,基于该候选文本的第一语义向量,对该候选文本中的关键词的第二语义向量进行更新处理,以获得第三语义向量,可以利用候选文本包含更多信息的特性,获得表征能力更好的第三语义向量,进而基于第三语义向量确定相似度,以及基于相似度获得检索结果时,可以提高检索结果的准确度;另外,基于所述第三语义向量和所述检索词的第四语义向量,确定各个候选文本与检索词的相似度,可以相对快速地获得检索结果,提高检索效率。由于检索准确度和检索效率都较好,因此,可以提高信息检索效果。
[0231]
一些实施例中,所述候选文本是从数据库内已存储的匹配文本中获得的;所述第一获取模块801进一步用于:获取多个匹配文本;针对所述多个匹配文本包括的多个关键词,分别确定各个关键词与所述检索词的语义相似度,并确定各个关键词与所述检索词的文本相似度;基于所述文本相似度和所述语义相似度,确定所述各个关键词的召回概率,所述召回概率用于表征关键词被选择的概率;基于所述各个关键词的召回概率,在所述多个关键词中选择预设个数的关键词,以获得选择后的关键词;基于所述选择后的关键词所在的匹配文本,获取所述检索词对应的至少一个候选文本。
[0232]
本实施例中,召回概率基于文本相似度和语义相似度获得,实现了基于语义召回和基于文本召回,由于采用了双路召回,相对于单路召回,可以提高召回率。
[0233]
一些实施例中,所述关键词包括:标准问和触发词,所述标准问是已有问答对中的问题,所述触发词基于所述标准问获得;所述装置800还包括:第二获取模块,用于获取所述标准问的相似问;第三获取模块,用于基于所述标准问和所述相似问,获得所述标准问对应的触发词;生成模块,用于基于所述标准问和所述标准问对应的触发词,生成所述匹配文本。
[0234]
本实施例中,基于标准问和触发词生成匹配文本,可以实现数据源不仅包括标准问,还包括触发词,丰富数据源的种类,提高召回率。
[0235]
一些实施例中,所述第三获取模块进一步用于:对所述标准问和所述相似问进行拼接处理,以获得拼接文本;对所述拼接文本进行多种分词处理,以获得多组分词后的词语;对所述多组分词后的词语进行合并处理,以获得候选词语;对所述候选词语进行过滤处
理,以获得所述标准问对应的触发词。所述关键词包括:标准问和触发词,所述标准问是已有问答对中的问题,所述触发词基于所述标准问获得;相应地,所述第二语义向量包括:所述标准问对应的初始标准问语义向量和所述触发词对应的初始触发词语义向量;所述第三语义向量包括:更新后的标准问语义向量和更新后的触发词语义向量;所述更新模块802进一步用于:基于所述第一语义向量和所述初始标准问语义向量,确定第一注意力权重;基于所述第一注意力权重和所述第一语义向量,确定所述更新后的标准问语义向量;基于所述第一语义向量和所述初始触发词语义向量,确定第二注意力权重;基于所述第二注意力权重和所述第一语义向量,确定所述更新后的触发词语义向量。
[0236]
本实施例中,通过采用注意力机制,基于第一语义向量对初始标准问语义向量和初始触发词语义向量进行更新,可以获得信息表达能力更好的更新后的标准问语义向量和更新后的触发词语义向量,进而基于更新后的标准问语义向量和更新后的触发词语义向量计算相似度时,可以获得更准确的相似度,提高排序准确度,提高检索结果准确度。
[0237]
一些实施例中,所述确定模块803进一步用于:基于所述更新后的标准问语义向量和所述第四语义向量,确定第一点积值;基于所述更新后的触发词语义向量和所述第四语义向量,确定第二点积值;将所述第一点积值和所述第二点积值中的最大值,作为该候选文本与所述检索词的相似度得分。
[0238]
本实施例中,直接采用更新后的标准问语义向量和更新后的触发词语义向量,与第四语义向量进行点积运算,并未对更新后的标准问语义向量和更新后的触发词语义向量进一步处理,可以提高检索效率。
[0239]
一些实施例中,所述装置800还包括:编码模块,用于采用预训练的编码模型,对所述各个候选文本进行编码处理,以获得所述各个候选文本的第一语义向量;和/或,所述检索词包括至少一个文本单元,采用所述编码模型,对所述检索词中的至少一个文本单元分别进行编码处理,以获得至少一个编码向量,以及,对所述至少一个编码向量进行合并处理,以获得所述第四语义向量。
[0240]
本实施例中,候选文本和检索词共用编码模型,可以降低模型参数量,降低资源开销,还可以提高运算效率。
[0241]
一些实施例中,所述排序模块804进一步用于:获取所述各个候选文本的热度;基于所述相似度和所述热度,确定所述各个候选文本的排序优先级;基于所述排序优先级,对所述至少一个候选文本进行排序处理。
[0242]
本实施例中,通过基于相似度和热度获得排序优先级,可以在排序阶段融合候选文本与检索词的相关度,以及候选文本的热度,提高信息检索效果。
[0243]
图9是根据本公开第五实施例的示意图,本实施例提供一种模型训练装置,该装置900包括:获取模块901、第一编码模块902、更新模块903、第二编码模块904、确定模块905和调整模块906。
[0244]
获取模块901用于获取训练数据,所述训练数据包括:样本检索词和对应的至少一个样本候选文本,以及,各个样本候选文本与所述样本检索词之间的真实相似度;第一编码模块902用于针对任一样本候选文本采用编码模型,对该样本候选文本进行编码处理,以获得该样本候选文本的第一语义向量;更新模块903用于针对任一样本候选文本,基于该样本候选文本的第一语义向量,对该样本候选文本中的关键词的第二语义向量进行更新处理,
以获得该样本候选文本对应的第三语义向量;第二编码模块904用于采用所述编码模型,对所述样本检索词中的至少一个文本单元分别进行编码处理,以获得至少一个编码向量,以及,对所述至少一个编码向量进行合并处理,以获得所述样本检索词的第四语义向量;确定模块905用于针对任一样本候选文本,基于该样本候选文本对应的第三语义向量和所述样本检索词的第四语义向量,确定该样本候选文本与所述样本检索词的预测相似度;调整模块906用于基于各个样本候选文本与所述样本检索词的预测相似度和所述各个样本候选文本与所述样本检索词的真实相似度,构建损失函数;以及,基于所述损失函数,调整所述编码模型的模型参数。
[0245]
本实施例中,针对任一样本候选文本,基于该样本候选文本的第一语义向量,对该样本候选文本中的关键词的第二语义向量进行更新处理,以获得第三语义向量,可以利用样本候选文本包含更多信息的特性,获得表征能力更好的第三语义向量,进而基于第三语义向量确定预测相似度,以及基于预测相似度训练模型时,可以提高模型的准确度。
[0246]
一些实施例中,所述关键词包括:标准问和触发词,所述标准问是已有问答对中的问题,所述触发词基于所述标准问获得;相应地,所述第二语义向量包括:所述标准问对应的初始标准问语义向量和所述触发词对应的初始触发词语义向量;所述第三语义向量包括:更新后的标准问语义向量和更新后的触发词语义向量;所述更新模块902进一步用于:基于所述第一语义向量和所述初始标准问语义向量,确定第一注意力权重;基于所述第一注意力权重和所述第一语义向量,确定所述更新后的标准问语义向量;基于所述第一语义向量和所述初始触发词语义向量,确定第二注意力权重;基于所述第二注意力权重和所述第一语义向量,确定所述更新后的触发词语义向量。
[0247]
本实施例中,通过采用注意力机制,基于第一语义向量对初始标准问语义向量和初始触发词语义向量进行更新,可以获得信息表达能力更好的更新后的标准问语义向量和更新后的触发词语义向量,进而基于更新后的标准问语义向量和更新后的触发词语义向量计算预测相似度时,可以获得更准确的预测相似度,提高模型准确度。
[0248]
一些实施例中,所述确定模块905进一步用于:基于所述更新后的标准问语义向量、所述更新后的触发词语义向量和所述第四语义向量,确定第三注意力权重;基于所述第三注意力权重、所述更新后的标准问语义向量和所述更新后的触发词语义向量,确定第五语义向量;基于所述第五语义向量和所述第四语义向量,获得所述预测相似度。
[0249]
本实施例中,通过注意力机制获得候选文本语义向量,可以提高候选文本语义向量的表达效果,进而提高模型效果。
[0250]
可以理解的是,本公开实施例中,不同实施例中的相同或相似内容可以相互参考。
[0251]
可以理解的是,本公开实施例中的“第一”、“第二”等只是用于区分,不表示重要程度高低、时序先后等。
[0252]
本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
[0253]
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
[0254]
图10示出了可以用来实施本公开的实施例的示例电子设备1000的示意性框图。电子设备1000旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、服
务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备1000还可以表示各种形式的移动装置,诸如,个人数字助理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
[0255]
如图10所示,电子设备1000包括计算单元1001,其可以根据存储在只读存储器(rom)1002中的计算机程序或者从存储单元1008加载到随机访问存储器(ram)1003中的计算机程序,来执行各种适当的动作和处理。在ram 1003中,还可存储电子设备1000操作所需的各种程序和数据。计算单元1001、rom 1002以及ram 1003通过总线1004彼此相连。输入/输出(i/o)接口1005也连接至总线1004。
[0256]
电子设备1000中的多个部件连接至i/o接口1005,包括:输入单元1006,例如键盘、鼠标等;输出单元1007,例如各种类型的显示器、扬声器等;存储单元1008,例如磁盘、光盘等;以及通信单元1009,例如网卡、调制解调器、无线通信收发机等。通信单元1009允许电子设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
[0257]
计算单元1001可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1001的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元1001执行上文所描述的各个方法和处理,例如信息检索方法或模型训练方法。例如,在一些实施例中,信息检索方法或模型训练方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1008。在一些实施例中,计算机程序的部分或者全部可以经由rom 1002和/或通信单元1009而被载入和/或安装到电子设备1000上。当计算机程序加载到ram 1003并由计算单元1001执行时,可以执行上文描述的信息检索方法或模型训练方法的一个或多个步骤。备选地,在其他实施例中,计算单元1001可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行信息检索方法或模型训练方法。
[0258]
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统(soc)、复杂可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
[0259]
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程检索装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
[0260]
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可
读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0261]
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
[0262]
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
[0263]
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务("virtual private server",或简称"vps")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
[0264]
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
[0265]
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
再多了解一些

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

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

相关文献