CN117217278A - 模型训练方法、文本召回方法、设备、介质及程序产品 - Google Patents

模型训练方法、文本召回方法、设备、介质及程序产品 Download PDF

Info

Publication number
CN117217278A
CN117217278A CN202310475950.9A CN202310475950A CN117217278A CN 117217278 A CN117217278 A CN 117217278A CN 202310475950 A CN202310475950 A CN 202310475950A CN 117217278 A CN117217278 A CN 117217278A
Authority
CN
China
Prior art keywords
text
recall
search
original
samples
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
Application number
CN202310475950.9A
Other languages
English (en)
Inventor
姚丽丽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202310475950.9A priority Critical patent/CN117217278A/zh
Publication of CN117217278A publication Critical patent/CN117217278A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供了一种模型训练方法、文本召回方法、设备、介质及程序产品,本申请可以涉及人工智能技术,该模型训练方法包括:获取多个第一正样本;其中,每个第一正样本包括:原始搜索词和基于原始搜索词召回的第一原始召回文本;获取每个原始搜索词的关联召回文本;基于每个原始搜索词和对应的关联召回文本,生成第二正样本;并基于多个第一正样本和多个第二正样本,生成多个负样本;基于多个第一正样本、多个第二正样本和多个负样本,训练目标召回模型。从而可以突破召回模型的局限性,使得召回模型对应的搜索引擎可以尽可能满足用户搜索需求。

Description

模型训练方法、文本召回方法、设备、介质及程序产品
技术领域
本申请实施例涉及人工智能(Artificial Intelligence,AI)技术领域,尤其涉及一种模型训练方法、文本召回方法、设备、介质及程序产品。
背景技术
在文本搜索领域,首先,用于实现搜索功能的服务器从搜索引擎所在的客户端获取搜索词,再将搜索词输入召回模型,得到搜索词与多个文本之间的相似度;其次,该服务器可以将相似度最高的前N个文本输入排序模型,得到前N个文本的排序结果,N为正整数;最后,服务器可以将前N个文本的排序结果发送给客户端,以使客户端展示该排序结果。
相关技术中,训练设备可以基于搜索引擎的点击日志针对同一搜索词,统计文本点击频次分布,并确定点击频次大于预设阈值的文本。训练设备还可以结合这类文本的相关性文本、质量等特征对这类文本进行筛选,得到更可靠的文本。基于此,训练设备可以将这些更可靠的文本和对应的搜索词组成正样本,并基于这些正样本构造负样本,通过这些正样本和负样本训练召回模型。
然而,由于上述正样本本身来源于搜索引擎,基于此,通过上述正样本以及负样本训练召回模型具有一定的局限性,导致搜索引擎可能无法满足用户搜索需求。
发明内容
本申请提供一种模型训练方法、文本召回方法、设备、介质及程序产品,从而可以突破召回模型的局限性,使得召回模型对应的搜索引擎可以尽可能满足用户搜索需求。
第一方面,本申请实施例提供一种模型训练方法,该方法包括:获取多个第一正样本;其中,每个第一正样本包括:原始搜索词和基于原始搜索词召回的第一原始召回文本;获取每个原始搜索词的关联召回文本;关联召回文本与第一原始召回文本不同;基于每个原始搜索词和对应的关联召回文本,生成第二正样本;并基于多个第一正样本和多个第二正样本,生成多个负样本;基于多个第一正样本、多个第二正样本和多个负样本,训练目标召回模型。
第二方面,本申请实施例提供一种文本召回方法,该方法包括:获取目标搜索词;将目标搜索词输入至如上述第一方面或其各实现方式中的方法训练得到的目标召回模型,得到目标搜索词与多个文本之间的相似度;基于目标搜索词与多个文本之间的相似度,确定目标搜索词对应的召回文本。
第三方面,本申请实施例提供一种模型训练装置,包括:获取模块、生成模块和训练模块,其中,获取模块用于:获取多个第一正样本;其中,每个第一正样本包括:原始搜索词和基于原始搜索词召回的第一原始召回文本;生成模块用于基于每个原始搜索词和对应的关联召回文本,生成第二正样本;关联召回文本与第一原始召回文本不同;并基于多个第一正样本和多个第二正样本,生成多个负样本;训练模块用于基于多个第一正样本、多个第二正样本和多个负样本,训练目标召回模型。
第四方面,本申请实施例提供一种文本召回装置,包括:获取模块、输入模块和确定模块,其中,获取模块用于获取目标搜索词;输入模块用于将目标搜索词输入至如上述第一方面或其各实现方式中的方法训练得到的目标召回模型,得到目标搜索词与多个文本之间的相似度;确定模块用于基于目标搜索词与多个文本之间的相似度,确定目标搜索词对应的召回文本。
第五方面,本申请实施例提供一种电子设备,包括:处理器和存储器,该存储器用于存储计算机程序,该处理器用于调用并运行该存储器中存储的计算机程序,执行如第一方面、第二方面或其各实现方式中的方法。
第六方面,本申请实施例提供一种计算机可读存储介质,用于存储计算机程序,计算机程序使得计算机执行如第一方面、第二方面或其各实现方式中的方法。
第七方面,本申请实施例提供一种计算机程序产品,包括计算机程序指令,该计算机程序指令使得计算机执行如第一方面、第二方面或其各实现方式中的方法。
第八方面,本申请实施例提供一种计算机程序,计算机程序使得计算机如执行如第一方面、第二方面或其各实现方式中的方法。
通过本申请实施例提供的技术方案,由于目标召回模型学习到了基于原始搜索词来召回关联召回文本的情况,基于此,如果后续给召回模型输入一个搜索词,通过该召回模型便可以召回到该搜索词的关联召回文本,从而可以突破该召回模型的局限性,使得该召回模型对应的搜索引擎可以尽可能满足用户搜索需求。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种多层BERT结构的示意图;
图2为本申请实施例提供的一种双塔模型的示意图;
图3为本申请实施例涉及的一种系统架构示意图;
图4A至图4D为即时通信应用的搜索模块的界面示意图;
图5为本申请实施例提供的一种模型训练方法的流程图;
图6为本申请实施例提供的负样本生成示意图;
图7为本申请实施例提供的一种文本召回方法的流程图;
图8为本申请实施例提供的一种模型训练装置800的示意图;
图9为本申请实施例提供的一种文本召回装置900的示意图;
图10是本申请实施例提供的电子设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请可以涉及AI技术领域,AI是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
自然语言处理(Nature Language processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
在介绍本申请技术方案之前,下面先对本申请技术方案的相关知识进行阐述:
一、搜索引擎(Search Engine),是指根据一定的策略、运用特定的计算机程序从互联网上搜集信息,在对信息进行组织和处理后,为用户提供检索服务,将用户检索相关的信息展示给用户的系统。
二、搜索词,也被称为查询词,可以是用户在搜索框中输入的词,当然,搜索词的搜索方式还可以是语音方式等。
三、曝光列表,指用户在搜索引擎搜索一个搜索词时,服务器返回给搜索引擎,并展示的搜索结果。
四、点击日志,用于记录用户对曝光列表中的文本的点击行为。
五、二元组(pairwise)样本,在本申请实施例中,该二元组样本可以是<搜索词,文本>。
六、正样本,也被称为正例,如果二元组样本<搜索词,文本>中的搜索词和文本配对,则该二元组样本被称为正样本。
七、负样本,也被称为负例,如果二元组样本<搜索词,文本>中的搜索词和文本不配对,则该二元组样本被称为负样本。
八、召回模型,在本申请实施例中,用于对搜索词进行处理,得到搜索词的向量表示,并且对各个文本进行处理,得到各个文本的向量表示,最后计算搜索词的向量表示和各个文本的向量表示之间的相似度,输出这些相似度。
九、召回文本,指的是通过召回模型所召回的相似度最高的前N个文本。
十、用户会话(session),用户进入搜索引擎到离开该搜索引擎的一系列行为,称为用户会话。从技术上来讲,用户session是服务器为了保存用户状态而创建的一个特殊对象。
十一、查询浏览(Query View,QV),表示单位时间内的查询量。
十二、交叉熵损失(Cross entropy loss),一般是用来量化两个概率分布之间差异的损失函数,多用于分类问题,计算公式如下:
其中,N表示样本个数,M表示类别的数量,yic为符号函数,如果样本i的真实类别是c,则yic取值为1,否则,yic取值为0;pic表示通过模型预测的样本i属于类别c的概率。
例如,假如样本的类别有3种,分别是:A、B、C,当前样本的真实标签是B,即真实答案是{y(A)=0,y(B)=1,y(C)=0},而模型也会对当前样本的标签进行预测,假如预测的归一化概率结果为{P(A)=0.2,P(B)=0.5,P(C)=0.3},则得到的交叉熵损失如下:
十三、基于转换器的双向编码表征(Bidirectional Encoder Representationsfrom Transformers,BERT)模型,是用于NLP的预训练技术,能够将输入的文本更准确地表示成一个具备上下文信息的向量,更好地用于下游任务的计算。BERT通常由多层转换器(Transformer)结构叠加组成,如图1所示,通过交叉注意力(cross attention)机制能够感知到上下文信息。
十四、双塔模型,包括两个塔的模型,在本申请实施例中,如图2所示,双塔模型可以包括:搜索塔和文本塔。搜索塔可以对搜索词进行处理,得到搜索词的向量表示。文本塔可以对各个文本进行处理,得到各个文本的向量表示。双塔模型还包括:相似度计算层,通过该相似度计算层可以计算搜索词的向量表示和各个文本的向量表示之间的相似度。其中,在本申请实施例中,搜索塔和文本塔均可以采用12层BERT模型。
下面将对本申请技术方案所要解决的技术问题、发明构思和可以应用的系统架构进行阐述:
如上所述,相关技术中,训练设备可以基于搜索引擎的点击日志针对同一搜索词,统计文本点击频次分布,并确定点击频次大于预设阈值的文本。训练设备还可以结合这类文本的相关性文本、质量等特征对这类文本进行筛选,得到更可靠的文本。基于此,训练设备可以将这些更可靠的文本和对应的搜索词组成正样本,并基于这些正样本构造负样本,通过这些正样本和负样本训练召回模型。
然而,由于上述正样本本身来源于搜索引擎,基于此,通过上述正样本以及负样本训练召回模型具有一定的局限性,导致搜索引擎可能无法满足用户搜索需求。例如,假设上一版本的搜索引擎无法实现通过搜索词1召回文本1,使用训练后召回模型的新版本搜索引擎仍然无法实现通过搜索词1召回文本1。
为了解决上述技术问题,本申请提出基于原始正样本中的原始搜索词的关联召回文本来构造正样本,从而可以扩充正样本,以突破召回模型的局限性。由于模型学习到了基于原始搜索词来召回关联召回文本的情况,基于此,如果后续给召回模型输入一个搜索词,通过该召回模型便可以召回到该搜索词的关联召回文本。
在一些实施例中,本申请实施例的系统架构如图3所示。
图3为本申请实施例涉及的一种系统架构示意图,用户设备301、数据采集设备302、训练设备303、执行设备304、数据库305和内容库306。
其中,数据采集设备302用于从内容库306中读取训练数据,并将读取的训练数据存储至数据库305中。本申请实施例涉及的训练数据可以包括下文将要提到的第一正样本、第二正样本和负样本。
训练设备303基于数据库305中维护的训练数据,对目标召回模型进行训练,使得训练后的目标召回模型可以有效地处理搜索词和文本,并有效地计算搜索词对应的向量表示与文本向量之间的相似度。
另外,参考图3,执行设备304配置有I/O接口307,与外部设备进行数据交互。比如通过I/O接口接收用户设备301发送的搜索词。该用户设备301可以安装有搜索引擎,用户可以在该搜索引擎上输入搜索词。执行设备304中的计算模块308使用训练后的目标召回模型对输入的搜索词进行处理,得到该搜索词对应的向量表示与文本向量之间的相似度。计算模块308还可以选择相似度最高的前N个文本,将这些文本输入排序模型,得到前N个文本的排序结果,N为正整数;最后,计算模块308可以通过I/O接口将前N个文本的排序结果发送给客户端,以使客户端在曝光列表中展示该排序结果。
其中,用户设备301可以包括手机、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,MID)、台式电脑、或其他具有安装浏览器功能的终端设备。
执行设备304可以为服务器。
示例性的,服务器可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器等计算设备。该服务器可以是独立的测试服务器,也可以是多个测试服务器所组成的测试服务器集群。
本实施例中,执行设备304通过网络与用户设备301连接。所述网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobilecommunication,GSM)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、第四代(the 4rd Generation,4G)网络、第五代(the 5rd Generation,5G)网络、蓝牙(Bluetooth)、无线保真(wireless fidelity,Wi-Fi)、通话网络等无线或有线网络。
需要说明的是,图3仅是本申请实施例提供的一种系统架构的示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制。在一些实施例中,上述数据采集设备302与用户设备301、训练设备303和执行设备304可以为同一个设备。上述数据库305可以分布在一个服务器上也可以分布在多个服务器上,上述的内容库306可以分布在一个服务器上也可以分布在多个服务器上。
本申请所提供的目标召回模型可以服务于如下搜索引擎,但不限于此:即时通信应用的搜索模块、网页搜索引擎、电商平台的搜索引擎、终端设备的应用搜索引擎、视频平台的搜索引擎、音乐平台的搜索引擎等。其中,这些搜索引擎的输入是搜索词,输出是文本列表,例如,可以是文章列表、网页列表、商品列表、应用列表、视频列表、音乐列表、名称列表等等。
例如,图4A至图4D为即时通信应用的搜索模块的界面示意图,如图4A所示,该界面展示了即时通信应用的搜索模块的入口,当用户点击该搜索模块的入口标识时,进入如图4B所示的界面,用户可以在界面的搜索框输入搜索词“面条”,之后进入如图4C所示的界面,该搜索模块默认展示“全部”标识下的内容,即包含各种类型的结果,而除此以外的某某号、文章等等都仅包含单一搜索结果类型,即为垂搜场景。进一步地,用户可以点击“文章”标识,进入如图4D所示的界面,该界面显示包括为用户召回的一些文章的曝光列表。
下面通过一些实施例对本申请实施例的技术方案进行详细说明。其中,本申请实施例提供的方案可以涉及人工智能的NLP技术,下面这几个实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图5为本申请实施例提供的一种模型训练方法的流程图,该方法可以由训练设备执行,如图5所示,该方法可以包括:
S510:获取多个第一正样本;
其中,针对多个第一正样本中的每个第一正样本,该第一正样本包括:原始搜索词和基于该原始搜索词召回的第一原始召回文本。
在一些可实现方式中,原始搜索词是通过目标搜索引擎已搜索的,且后续需要扩充其对应的召回文本,以扩充正样本的搜索词,其中,下文提到的目标召回模型可以服务于该目标搜索引擎。原始召回文本是通过当前的目标搜索引擎对原始搜索词进行搜索,本身可以召回的文本。
例如,假设目标搜索引擎本身可以针对搜索词1召回文本1、文本2和文本3,那么文本1、文本2和文本3便是原始召回文本。
在一些可实现方式中,第一原始召回文本可以是原始搜索词对应的任一个原始文本。例如,假设目标搜索引擎本身可以针对搜索词1召回文本1、文本2和文本3,那么文本1、文本2和文本3便均是第一原始召回文本。
在另一些可实现方式中,第一原始召回文本是基于原始搜索词所召回的且点击频次大于第一预设阈值的原始召回文本。其中,该第一预设阈值的取值可以是100、200、500等,本申请实施例对此不做限制。
例如,假设目标搜索引擎本身可以针对搜索词1召回文本1、文本2和文本3,那么文本1、文本2和文本3便是原始召回文本,且文本1、文本2和文本3的点击频次分别是1000、800、100,而假设第一预设阈值的取值是500,那么第一原始召回文本是文本1和文本2。
应理解的是,该第一原始召回文本的数量可以是一个或者多个,如果某个原始搜索词对应多个第一原始召回文本,那么该原始搜索词可以和每个第一原始召回文本组成一个第一正样本。
例如,假设目标搜索引擎本身可以针对搜索词1召回文本1、文本2和文本3,那么文本1、文本2和文本3便是原始召回文本,且文本1、文本2和文本3的点击频次分别是1000、800、100,而假设第一预设阈值的取值是500,那么第一原始召回文本是文本1和文本2,基于此,存在两个第一正样本,分别是<搜索词1,文本1>,<搜索词1,文本2>。
在一些可实现方式中,训练设备可以基于目标搜索引擎的点击日志确定在预设时长内每个搜索词对应的曝光列表中的各个文本的点击次数,并针对每个文本,计算该文本的点击次数与该预设时长的比值,得到该文本的点击频次。其中,该预设时长的取值可以是1小时、6小时、1天等。
例如,假设搜索词1对应的曝光列表中的文本1在1小时内的点击次数是1000次,该文本1的点击频次是1000/1=1000次/小时。
S520:获取每个原始搜索词的关联召回文本;
应理解的是,该关联召回文本与该原始搜索词对应的第一原始召回文本不同。
应理解的是,之所以设置关联召回文本与该原始搜索词的第一原始文本不同,理由是:期望基于原始搜索词和关联召回文本生成的第二正样本与第一正样本不同。
在一些可实现方式中,针对每个原始搜索词,该原始搜索词的关联召回文本可以是以下任一种情况下的召回文本,但不限于此:
情况一,该关联召回文本是该原始搜索词的关联搜索词的第二原始召回文本。其中,该原始搜索词的关联搜索词是与该原始搜索词属于同一用户会话且搜索意图相同的搜索词。
在一些可实现方式中,该关联搜索词的原始召回文本是通过当前的目标搜索引擎对该关联搜索词进行搜索,本身可以召回的文本。
例如,假设目标搜索引擎本身可以针对关联搜索词1’召回文本4、文本5,那么文本4和文本5便是关联搜索词1’的原始召回文本。
在一些可实现方式中,该第二原始召回文本可以是该关联搜索词的任一个原始召回文本。
例如,假设目标搜索引擎本身可以针对关联搜索词1’召回文本4和文本5,那么第二原始召回文本便是文本4和文本5。
在另一些可实现方式中,该第二原始召回文本可以是基于关联搜索词所召回的且点击频次大于第二预设阈值的原始召回文本。其中,该第二预设阈值与上述第一预设阈值的取值可以相同或者不同。该第二预设阈值的取值可以是100、200、500等,本申请实施例对此不做限制。
例如,假设目标搜索引擎本身可以针对关联搜索词1’召回文本4和文本5,且文本4和文本5的点击频次分别是1000、200,而假设第二预设阈值的取值是500,那么第二原始召回文本是文本4。
在本申请实施例中,训练设备可以基于如下方式确定原始搜索词和该原始搜索词的关联搜索词是否属于同一搜索意图,但不限于此:
可实现方式一,若原始搜索词和该原始搜索词的关联搜索词具有公共词,则确定该原始搜索词和该原始搜索词的关联搜索词属于同一搜索意图;若原始搜索词和该原始搜索词的关联搜索词不具有公共词,则确定该原始搜索词和该原始搜索词的关联搜索词不属于同一搜索意图。
例如,假设原始搜索词是“A市B行业”,而该原始搜索词的关联搜索词是“A市B行业微服务”,二者具有公共词,即“A市B行业”,基于此,可以确定这两个搜索词是同一搜索意图的搜索词。
再例如,假设原始搜索词是“面条”,而该原始搜索词的关联搜索词是“米饭”,二者不具有公共词,基于此,可以确定这两个搜索词不是同一搜索意图的搜索词。
可实现方式二,若原始搜索词和该原始搜索词的关联搜索词具有直接或者间接关系,则确定该原始搜索词和该原始搜索词的关联搜索词属于同一搜索意图;若原始搜索词和该原始搜索词的关联搜索词不具有直接和间接关系,则确定该原始搜索词和该原始搜索词的关联搜索词不属于同一搜索意图。
在一些可实现方式中,原始搜索词和该原始搜索词的关联搜索词的关系可以通过关系图谱查询。例如,训练设备通过查询关系图谱确定“BERT”和“Transfomer”具有直接关系,基于此,可以将这两个搜索词确定为属于同一搜索意图的搜索词。
情况二,该关联召回文本是该原始搜索词的关联搜索词的第二原始召回文本。其中,该原始搜索词的关联搜索词是该原始搜索词的同义词、纠错词或者改写词。
应理解的是,关于第二原始召回文本的内容可以参考情况一中的相应内容,本申请实施例对此不再赘述。
应理解的是,该原始搜索词的同义词指的是与该原始搜索词是同一意思的搜索词,其包括:不同语言表达的同一意思的两个搜索词,例如,“查询”和“query”是同义词。
应理解的是,该原始搜索词的纠错词可以是原始搜索词进行纠错之后,得到的词,例如,假设原始搜索词是“雷生”,对其纠错之后的词是“雷声”。
应理解的是,该原始搜索词的改写词可以是对原始搜索词采用不同描述方式得到的词,例如,假设原始搜索词是“地铁1号线几点关闭”,其对应的改写词是“地铁1号线的运营时间”。
情况三,该关联召回文本是将该原始搜索词输入至除目标召回模型以外的其他召回模型所获取到的第三原始召回文本。
应理解的是,该其他召回模型与该目标召回模型的作用相同,均是对搜索词进行处理,得到搜索词的向量表示,并且对各个文本进行处理,得到各个文本的向量表示,最后计算搜索词的向量表示和各个文本的向量表示之间的相似度,输出这些相似度。而其他召回模型与该目标召回模型的不同之处在于,它们的模型架构和/或参数不同,它们可以对应不同的搜索引擎。
应理解的是,该原始搜索词在其他召回模型对应的原始召回文本是通过其他召回模型对应的搜索引擎对该原始搜索词进行搜索,本身可以召回的文本。
例如,假设其他召回模型对应的搜索引擎本身可以针对搜索词1召回文本1、文本2、文本4,那么文本1、文本2、文本4便是搜索词1在其他召回模型对应的原始召回文本。
在一些可实现方式中,第三原始召回文本可以是该原始搜索词在其他召回模型对应的任一个原始召回文本。
例如,假设其他召回模型对应的搜索引擎本身可以针对搜索词1召回文本1、文本2、文本4,那么第三原始召回文本便是文本1、文本2、文本4。
在另一些可实现方式中,该第三原始召回文本可以是通过该其他召回模型对应的搜索引擎,基于该原始搜索词所召回的且点击频次大于第三预设阈值的原始召回文本。其中,该第三预设阈值与上述第一预设阈值、第二预设阈值的取值可以相同或者不同。该第三预设阈值的取值可以是100、200、500等,本申请实施例对此不做限制。
例如,假设该其他召回模型对应的搜索引擎本身可以针对搜索词1召回文本1、文本2、文本4,且文本1、文本2、文本4的点击频次分别是1000、200、800,而假设第三预设阈值的取值是500,那么第三原始召回文本是文本1和文本4。
S530:基于每个原始搜索词和对应的关联召回文本,生成第二正样本;
换句话讲,针对每个原始搜索词,训练设备可以将该原始搜索词和该原始搜索词对应的关联召回文本组成第二正样本。
例如,假设原始搜索词是搜索词1,其对应的关联召回文本包括:文本4、文本5,基于此,生成的第二正样本是<搜索词1,文本4>,<搜索词1,文本5>。
例如,如表1所示,第一列是第一正样本中的原始搜索词是“A市B行业”,第二列包括该原始搜索词以及该原始搜索词的关联搜索词,其中,该关联搜索词分别是:“A市B行业微服务”、“A市B行业B-1行业”、“A市B行业快速执行事务”、“A市B行业服务平台证件”、“A市B行业某行为”、“A市B行业所属单位”。第三列是该原始搜索词以及该原始搜索词的关联搜索词各自对应的原始召回文本,其中,关联搜索词对应的原始召回文本中与原始搜索词对应的原始召回文本不同的召回文本可以作为原始搜索词的关联召回文本,例如,第一行第三列中的召回文本便是原始搜索词“A市B行业”的关联召回文本。
表1
基于此,生成的第二正样本可以是<A市B行业,便民|A市人可以申请自己的**证件了!A市B行业微服务平台同步上线运行!>等等。
S540:基于多个第一正样本和多个第二正样本,生成多个负样本;
在一些可实现方式中,针对多个第一正样本和多个第二正样本中的任一个原始搜索词,训练设备可以对该原始搜索词与上述多个第一正样本和多个第二正样本中其他原始搜索词对应的召回文本进行组合,以得到负样本。
例如,假设多个第一正样本和多个第二正样本中的一个原始搜索词是搜索词1,搜索词1对应的召回文本是文本1,另一个原始搜索词是搜索词2,搜索词2对应的召回文本是文本6,基于此,训练设备生成的负样本可以是<搜索词1,文本6>,<搜索词2,文本1>。
在另一些可实现方式中,训练设备可以对多个第一正样本和多个第二正样本进行采样,得到多个采样样本,基于此,针对多个采样样本中的任一个原始搜索词,训练设备可以对该原始搜索词与上述多个采样样本中其他原始搜索词对应的召回文本进行组合,以得到负样本。
其中,本申请实施例对针对多个第一正样本和多个第二正样本的采样方式不做限制。
例如,假设多个第一正样本和多个第二正样本的数量是100000个,训练设备从这些正样本中采样出10000个采样样本,假设这10000个采样样本中的一个原始搜索词是搜索词1,搜索词1对应的召回文本是文本1,另一个原始搜索词是搜索词2,搜索词2对应的召回文本是文本6,基于此,训练设备生成的负样本可以是<搜索词1,文本6>,<搜索词2,文本1>。
S550:基于多个第一正样本、多个第二正样本和多个负样本,训练目标召回模型。
在一些可实现方式中,上述多个第一正样本、多个第二正样本和多个负样本中的全部样本作为训练集,训练设备可以通过该训练集训练目标召回模型。
在另一些可实现方式中,如果在S540中对多个第一正样本和多个第二正样本进行了采样,那么多个第一正样本和多个第二正样本的采样样本以及上述多个负样本作为训练集,训练设备可以通过该训练集训练目标召回模型。
在一些可实现方式中,训练设备可以通过上述训练集训练目标召回模型。例如,训练设备计算这些训练集中每个样本与多个文本之间的相似度,基于这些相似度计算损失,当该损失小于预设值时,停止训练目标召回模型,当该损失大于或等于预设值时,计算目标召回模型中每个参数的梯度,并反向传播更新目标召回模型的参数,再次通过上述训练集训练目标召回模型,直到损失小于预设值为止。
在另一些可实现方式中,训练设备可以将上述训练集划分为多个样本集合,通过多个样本集合训练目标召回模型。
例如,训练设备计算第一个样本集合中每个样本与多个文本之间的相似度,基于这些相似度计算损失,当该损失小于预设值时,停止训练目标召回模型,当该损失大于或等于预设值时,计算目标召回模型中每个参数的梯度,并反向传播更新目标召回模型的参数,再次计算第二个样本集合中每个样本与多个文本之间的相似度,基于这些相似度计算损失,当该损失小于预设值时,停止训练目标召回模型,当该损失大于或等于预设值时,计算目标召回模型中每个参数的梯度,并反向传播更新目标召回模型的参数,继续使用第三个样本集合训练该目标召回模型,直到损失小于预设值为止。其中,如果全部样本集合均已被使用,但损失仍然大于或等于预设值,则继续使用第一个样本集合,以此类推,直到损失小于预设值为止。
在一些可实现方式中,本申请实施例所述的损失可以是交叉熵(Cross EntropyLoss)损失、一范数(L1)损失、均方损失(Mean Square Error Loss,MSE)等,但不限于此。
在一些可实现方式中,相似度可以是杰卡德相似系数、余弦相似度、皮尔逊相关系数、通过距离计算的相似度等,本申请实施例对此不做限制。
本申请实施例提供一种模型训练方法,包括:训练设备获取多个第一正样本;获取每个原始搜索词的关联召回文本;基于每个原始搜索词和对应的关联召回文本,生成第二正样本;基于多个第一正样本和多个第二正样本,生成多个负样本;基于多个第一正样本、多个第二正样本和多个负样本,训练目标召回模型。由于该目标召回模型学习到了基于原始搜索词来召回关联召回文本的情况,基于此,如果后续给召回模型输入一个搜索词,通过该召回模型便可以召回到该搜索词的关联召回文本,从而可以突破该召回模型的局限性,使得该召回模型对应的搜索引擎可以尽可能满足用户搜索需求。
下面将基于关联召回文本的三种情况,对S520和S540进行详细阐述:
在一些可实现方式中,S520可以包括:
S520-1A:针对每个原始搜索词,确定该原始搜索词的关联搜索词;
可实现方式一,训练设备可以将与该原始搜索词属于同一用户会话且搜索意图相同的搜索词,确定为该原始搜索词的关联搜索词。
可实现方式二,训练设备可以将该原始搜索词的同义词、纠错词或者改写词,确定为该原始搜索词的关联搜索词。
应理解的是,关于该关联搜索词的解释说明可以参考上文,本申请实施例对此不再赘述。
S520-2A:获取基于该关联搜索词召回的第二原始召回文本;
应理解的是,关于第二原始召回文本的解释说明可以参考上上年,本申请实施例对此不再赘述。
S520-3A:将第二原始召回文本确定为原始搜索词的关联召回文本。
基于此,训练设备可以基于每个原始搜索词和对应的关联召回文本,生成第二正样本。
如上所述,训练设备在基于多个第一正样本和多个第二正样本,生成多个负样本时,可以先对多个第一正样本和多个第二正样本进行采样,得到多个采样样本,基于此,针对多个采样样本中的任一个原始搜索词,训练设备可以对该原始搜索词与上述多个采样样本中其他原始搜索词对应的召回文本进行组合,以得到负样本。
基于此,在执行S520-1A的可实现方式一的情况下,在S540之前,模型训练方法还可以包括:
S540’:确定多个第一正样本各自的原始搜索词在单位时间内的查询量以及多个第二正样本各自对应的关联搜索词在单位时间内的查询量;
在一些可实现方式中,针对上述多个第一正样本中的任一个原始搜索词,该原始搜索词在单位时间内的查询量可以是该原始搜索词的QV。
在一些可实现方式中,针对上述多个第二正样本中的任一个关联搜索词,该关联搜索词在单位时间内的查询量可以是该关联搜索词的QV。
S540”:对多个第一正样本各自的原始搜索词在单位时间内的查询量以及多个第二正样本各自对应的关联搜索词在单位时间内的查询量进行归一化处理,得到多个第一正样本各自的原始搜索词的采样率以及多个第二正样本各自对应的关联搜索词的采样率;
在一些可实现方式中,训练设备可以计算上述多个第一正样本各自的原始搜索词在单位时间内的查询量与多个第二正样本各自对应的关联搜索词在单位时间内的查询量之和,得到求和结果;并针对多个第一正样本各自的原始搜索词和多个第二正样本各自对应的关联搜索词中的任一个搜索词,计算该搜索词在单位时间内的查询量与该求和结果的比值,得到该搜索词的采样率。
例如,假设上述多个第一正样本各自的原始搜索词在单位时间内的查询量与多个第二正样本各自对应的关联搜索词在单位时间内的查询量之和是10000次,若某个第一正样本的搜索词1在单位时间内的查询量是1000,那么该搜索词1的采样率是0.1,若某个第二正样本的搜索词2在单位时间内的查询量是100,那么该搜索词2的采样率是0.01。
相应的,S540可以包括:
S540-1A:基于多个第一正样本各自的原始搜索词的采样率对多个第一正样本进行采样,得到至少一个第一采样样本;并基于多个第二正样本各自对应的关联搜索词的采样率对多个第二正样本进行采样,得到至少一个第二采样样本;
在一些可实现方式中,针对多个第一正样本中的任一个原始搜索词,训练设备可以计算预设采样量与该原始搜索词的采样率的乘积,以得到包括该原始搜索词的样本的采样量,并按照该采样量在上述多个第一正样本中采样包括该原始搜索词的样本。
例如,假设上述多个第一正样本各自的原始搜索词在单位时间内的查询量与多个第二正样本各自对应的关联搜索词在单位时间内的查询量之和是10000次,若某个第一正样本的搜索词1在单位时间内的查询量是1000,那么该搜索词1的采样率是0.1,并且假设预设采样量是1000,那么包括该搜索词1的样本的采样量是0.1*1000=100,基于此,训练设备需要从上述多个第一正样本中采样100个包括该搜索词1的样本。
在一些可实现方式中,针对多个第二正样本中的任一个关联搜索词,训练设备可以计算预设采样量与该关联搜索词的采样率的乘积,以得到包括该关联搜索词的第二采样样本,并按照该采样量在上述多个第二正样本中采样包括该关键搜索词的样本。
例如,假设上述多个第一正样本各自的原始搜索词在单位时间内的查询量与多个第二正样本各自对应的关联搜索词在单位时间内的查询量之和是10000次,若某个第二正样本的搜索词2在单位时间内的查询量是100,那么该搜索词2的采样率是0.01,并且假设预设采样量是1000,那么包括该搜索词2的样本的采样量是0.01*1000=10,基于此,训练设备需要从上述多个第二正样本中采样10个包括该搜索词2的样本。
S540-2A:基于至少一个第一采样样本和至少一个第二采样样本,生成多个负样本。
在一些可实现方式中,训练设备可以将至少一个第一采样样本和至少一个第二采样样本划分为多个第一样本集合;针对每个第一样本集合中的每个采样样本,将采样样本的搜索词与第一样本集合中其他采样样本的召回文本进行组合,以生成负样本。
应理解的是,在本申请实施例中,样本集合也被称为批量(batch),通常采样样本数量庞大,而每个batch所包括的采样样本数量较少,因此,每个batch中不包括重复搜索词,从而保证在对任一个batch中的任一个搜索词与该batch内的其他搜索词对应的召回文本进行组合时,所生成的样本是负样本。
例如,图6为本申请实施例提供的负样本生成示意图,如图6的左图所示,假设一个batch内包含n个样本,分别是<q1,p1><q2,p2>…<qn,pn>,其中,qi表示第i个样本的搜索词,pi表示第i个样本的召回文本,i=1,2……n。针对每个qi,可以对它与其他搜素词对应的n-1个召回文本进行组合,构成n-1个负样本,如图6中的右图所示,每行包括一个真样本(即白色框所标识的)以及n-1个负样本(即阴影框所标识的)。
在执行S520-1A的可实现方式二的情况下,S540可以包括:
S540-1B:对多个第一正样本和多个第二正样本进行随机采样,得到多个第三采样样本;
例如,假设上述多个第一正样本各自的原始搜索词在单位时间内的查询量与多个第二正样本各自对应的关联搜索词在单位时间内的查询量之和是10000次,并且假设预设采样量是1000,那么可以随机采样包括该搜索词1的样本100个,随机采样包括该搜索词2的样本1000个。
S540-2B:基于多个第三采样样本,生成多个负样本。
在一些可实现方式中,训练设备可以将多个第三采样样本划分为多个第二样本集合;针对每个第二样本集合中的每个采样样本,将采样样本的搜索词与第二样本集合中其他采样样本的召回文本进行组合,以生成负样本。
应理解的是,在这种情况下生成负样本的方式与在执行S540-2A的情况下生成负样本的方式类似,本申请实施例对此不再赘述。
在另一些可实现方式中,S520可以包括:
S520-1B:针对每个原始搜索词,将原始搜索词输入至除目标召回模型以外的其他召回模型,以获取原始搜索词的关联召回文本。
应理解的是,关于该其他召回模型的解释说明可以参考上文,本申请实施例对此不再赘述。
基于此,训练设备可以基于每个原始搜索词和对应的关联召回文本,生成第二正样本。
如上所述,训练设备在基于多个第一正样本和多个第二正样本,生成多个负样本时,可以先对多个第一正样本和多个第二正样本进行采样,得到多个采样样本,基于此,针对多个采样样本中的任一个原始搜索词,训练设备可以对该原始搜索词与上述多个采样样本中其他原始搜索词对应的召回文本进行组合,以得到负样本。
在执行S520-1B的情况下,S540可以包括:上述S540-1B和S540-2B,关于这两个步骤的解释说明,可以参考上文,本申请实施例对此不再赘述。
在本申请实施例中,由于同一用户会话中的原始搜索词以及关联搜索词的查询情况反映了用户需求分布,基于此,第一采样样本和第二采样样本的分布可以反映用户需求分布,通过这些样本训练目标召回模型,使得目标召回模型可以学习到用户需求分布,从而使得当在模型执行阶段,即使用户输入一个搜索意图不明确的搜索词,如短搜索词,该模型也可以基于学习到的用户需求分布,推荐符合用户需求分布的文本。
在一些可实现方式中,目标召回模型是包括搜索塔和文本塔的双塔模型。
在一些可实现方式中,搜索塔和文本塔分别可以是12层的BERT结构,也可以是24层的BERT结构,本申请实施例对此不做限制。
在一些可实现方式中,在模型训练初始化阶段,搜索塔和文本塔的参数保持一致。
在一些可实现方式中,训练设备可以将搜索塔的BERT结构的最后一层的第一个向量(即CLS向量)作为搜索词的向量表示,也可以将最后一层除第一个向量以外的其他向量的平均向量作为搜索词的向量表示,本申请实施例对此不做限制。
在一些可实现方式中,训练设备可以将文本塔的BERT结构的最后一层的第一个向量(即CLS向量)作为文本的向量表示,也可以将最后一层除第一个向量以外的其他向量的平均向量作为文本的向量表示,本申请实施例对此不做限制。
在一些可实现方式中,上述S550可以包括:基于多个第一正样本、多个第二正样本和多个负样本,训练搜索塔,且保持文本塔不变。换句话讲,在本申请实施例中,可以只对搜索塔进行训练,不对文本塔进行训练。
在本申请实施例中,训练设备可以采用非对称训练方式对目标召回模型进行训练,即只对搜索塔进行训练,不对文本塔进行训练。由于文本塔所涉及的文本数量为亿级别的,而通过这种非对称方式可以大大提高模型训练效率,从而可以提高模型上线效率。
图7为本申请实施例提供的一种文本召回方法的流程图,该方法可以由执行设备执行,该执行设备可以是搜索引擎对应的服务器,但不限于此,如图7所示,该方法可以包括:
S710:获取目标搜索词;
在一些可实现方式中,用户可以在搜索引擎的搜索框中输入目标搜索词,或者,用户通过语音方式输入目标搜索词,使得该搜索引擎所在的客户端可以获取该目标搜索词,并将该目标搜索词发送给上述执行设备。
应理解的是,本申请实施例对目标搜索词的获取方式不做限制。
S720:将目标搜索词输入至目标召回模型,得到目标搜索词与多个文本之间的相似度;
应理解的是,该目标召回模型是通过上述模型训练方法训练之后的目标召回模型。
在一些可实现方式中,目标召回模型是包括搜索塔和文本塔的双塔模型,其中,该搜索塔可以对目标搜索词进行处理,得到目标搜索词的向量表示;文本塔可以对各个文本进行处理,得到各个文本的向量表示。目标召回模型还可以包括:相似度计算层,通过该层可以计算搜索词的向量表示和各个文本的向量表示之间的相似度。
在一些可实现方式中,执行设备可以将目标搜索词输入至搜索塔中,得到目标搜索词的向量表示;通过目标召回模型的相似度计算层对目标搜索词的向量表示以及多个文本的向量表示进行相似度计算,得到目标搜索词与多个文本之间的相似度;其中,多个文本的向量表示是通过文本塔预先处理得到的。
换句话讲,如果将文本塔将各个文本处理为对应的向量表示,并将这些向量表示存储至本地称为灌库流程,那么在本申请实施例中,由于文本塔预先存储有这些文本的文本向量,因此,无需再对该文本塔进行灌库流程。
在一些可实现方式中,上述多个文本可以是文本塔所关联的全部文本。
在另一些可实现方式中,在执行S720之前,执行设备还可以从文本塔所关联的全部文本中查找与目标搜索词最近的前M个类簇,M为正整数,而上述多个文本可以是前M个类簇中的文本。
在一些可实现方式中,M的取值可以是50、100等,本申请实施例对此不做限制。
在一些可实现方式中,每个类簇中的所有文本属于同一主题,也就是说,类簇是基于文本主题划分的,例如,某一个类簇都是关于某体育明星的,另一个类簇都是关于某歌手的。
在一些可实现方式中,每个类簇具有一个类簇中心,执行设备可以计算目标搜索词的向量表示与每个类簇中心的向量表示的相似度,将前M个相似度对应的类簇作为上述前M个类簇。
在一些可实现方式中,该相似度可以是杰卡德相似系数、余弦相似度、皮尔逊相关系数、通过距离计算的相似度等,本申请实施例对此不做限制。
S730:基于目标搜索词与多个文本之间的相似度,确定目标搜索词对应的召回文本。
在一些可实现方式中,执行设备可以基于目标搜索词与多个文本之间的相似度,选择与目标搜索词相似度最高的前P个文本,P为正整数,其中,前P个文本也被称为通过该目标召回模型所召回的文本。
在一些可实现方式中,P的取值可以是100、300等,本申请实施例对此不做限制。
在一些可实现方式中,在S730之后,执行设备还可以将前P个文本输入至排序模型,并通过排序模型对前P个文本进行排序。
在一些可实现方式中,排序模型可以按照前P个文本与目标搜索词相似度由高至低的顺序排序,或者,排序模型还可以基于前P个文本与目标搜索词的相似度以及前P个文本的特征等对前P个文本进行排序,本申请实施例对排序模型的排序方式不做限制。
在本申请实施例中,由于该目标召回模型学习到了基于原始搜索词来召回关联召回文本的情况,基于此,当给目标召回模型输入目标搜索词,通过该召回模型便可以召回到该目标搜索词的关联召回文本,从而可以突破该召回模型的局限性,使得该召回模型对应的搜索引擎可以尽可能满足用户搜索需求。
进一步地,执行设备可以使用文本塔已存储的文本向量,而无需通过文本塔再对每个文本进行处理,从而可以提高文本召回效率,进而提高文本搜索效率。
以上结合附图详细描述了本申请的优选实施方式,但是,本申请并不限于上述实施方式中的具体细节,在本申请的技术构思范围内,可以对本申请的技术方案进行多种简单变型,这些简单变型均属于本申请的保护范围。例如,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本申请对各种可能的组合方式不再另行说明。又例如,本申请的各种不同的实施方式之间也可以进行任意组合,只要其不违背本申请的思想,其同样应当视为本申请所公开的内容。
还应理解,在本申请的各种方法实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
上文对本申请实施例提供的方法进行了说明,下面对本申请实施例提供的装置进行说明。
图8为本申请实施例提供的一种模型训练装置800的示意图,该装置800可以包括:获取模块810、生成模块820、训练模块830。其中,获取模块810用于:获取多个第一正样本;其中,每个第一正样本包括:原始搜索词和基于原始搜索词召回的第一原始召回文本;生成模块820用于基于每个原始搜索词和对应的关联召回文本,生成第二正样本;关联召回文本与第一原始召回文本不同;并基于多个第一正样本和多个第二正样本,生成多个负样本;训练模块830用于基于多个第一正样本、多个第二正样本和多个负样本,训练目标召回模型。
在一些可实现方式中,获取模块810具体用于:针对每个原始搜索词,确定原始搜索词的关联搜索词;获取基于关联搜索词召回的第二原始召回文本;将第二原始召回文本确定为原始搜索词的关联召回文本。
在一些可实现方式中,获取模块810具体用于:将与原始搜索词属于同一用户会话且搜索意图相同的搜索词,确定为原始搜索词的关联搜索词。
在一些可实现方式中,该装置800还包括:确定模块840和归一化处理模块850,其中,在生成模块820基于多个第一正样本和多个第二正样本,生成多个负样本之前,确定模块840用于:确定多个第一正样本各自的原始搜索词在单位时间内的查询量以及多个第二正样本各自对应的关联搜索词在单位时间内的查询量;归一化处理模块850用于:对多个第一正样本各自的原始搜索词在单位时间内的查询量以及多个第二正样本各自对应的关联搜索词在单位时间内的查询量进行归一化处理,得到多个第一正样本各自的原始搜索词的采样率以及多个第二正样本各自对应的关联搜索词的采样率;相应的,生成模块820具体用于:基于多个第一正样本各自的原始搜索词的采样率对多个第一正样本进行采样,得到至少一个第一采样样本;并基于多个第二正样本各自对应的关联搜索词的采样率对多个第二正样本进行采样,得到至少一个第二采样样本;基于至少一个第一采样样本和至少一个第二采样样本,生成多个负样本。
在一些可实现方式中,生成模块820具体用于:将至少一个第一采样样本和至少一个第二采样样本划分为多个第一样本集合;针对每个第一样本集合中的每个采样样本,将采样样本的搜索词与第一样本集合中其他采样样本的召回文本进行组合,以生成负样本。
在一些可实现方式中,获取模块810具体用于:将原始搜索词的同义词、纠错词或者改写词,确定为原始搜索词的关联搜索词。
在一些可实现方式中,获取模块810具体用于:针对每个原始搜索词,将原始搜索词输入至除目标召回模型以外的其他召回模型,以获取原始搜索词的关联召回文本。
在一些可实现方式中,生成模块820具体用于:对多个第一正样本和多个第二正样本进行随机采样,得到多个第三采样样本;基于多个第三采样样本,生成多个负样本。
在一些可实现方式中,生成模块820具体用于:将多个第三采样样本划分为多个第二样本集合;针对每个第二样本集合中的每个采样样本,将采样样本的搜索词与第二样本集合中其他采样样本的召回文本进行组合,以生成负样本。
在一些可实现方式中,目标召回模型是包括搜索塔和文本塔的双塔模型;相应的,训练模块830用于:基于多个第一正样本、多个第二正样本和多个负样本,训练搜索塔,且保持文本塔不变。
应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图8所示的装置800可以执行图5对应的方法实施例,并且装置800中的各个模块的前述和其它操作和/或功能分别为了实现图5中的各个方法中的相应流程,为了简洁,在此不再赘述。
上文中结合附图从功能模块的角度描述了本申请实施例的装置800。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
图9为本申请实施例提供的一种文本召回装置900的示意图,如图9所示,该装置900包括:获取模块910、输入模块920和确定模块930,其中,获取模块910用于获取目标搜索词;输入模块920用于将目标搜索词输入至通过上述模型训练方法训练得到的目标召回模型,得到目标搜索词与多个文本之间的相似度;确定模块930用于基于目标搜索词与多个文本之间的相似度,确定目标搜索词对应的召回文本。
在一些可实现方式中,目标召回模型是包括搜索塔和文本塔的双塔模型;相应的,输入模块920具体用于:将目标搜索词输入至搜索塔中,得到目标搜索词的向量表示;通过目标召回模型的相似度计算层对目标搜索词的向量表示以及多个文本的向量表示进行相似度计算,得到目标搜索词与多个文本之间的相似度;其中,多个文本的向量表示是通过文本塔预先处理得到的。
应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图9所示的装置900可以执行图7对应的方法实施例,并且装置900中的各个模块的前述和其它操作和/或功能分别为了实现图7中的各个方法中的相应流程,为了简洁,在此不再赘述。
上文中结合附图从功能模块的角度描述了本申请实施例的装置900。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
图10是本申请实施例提供的电子设备的示意性框图。该电子设备可以是上述训练设备或者执行设备。
如图10所示,该电子设备可包括:
存储器1010和处理器1020,该存储器1010用于存储计算机程序,并将该程序代码传输给该处理器1020。换言之,该处理器1020可以从存储器1010中调用并运行计算机程序,以实现本申请实施例中的方法。
例如,该处理器1020可用于根据该计算机程序中的指令执行上述方法实施例。
在本申请的一些实施例中,该处理器1020可以包括但不限于:
通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等等。
在本申请的一些实施例中,该存储器1010包括但不限于:
易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(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 DataRate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
在本申请的一些实施例中,该计算机程序可以被分割成一个或多个模块,该一个或者多个模块被存储在该存储器1010中,并由该处理器1020执行,以完成本申请提供的方法。该一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序在该电子设备中的执行过程。
如图10所示,该电子设备还可包括:
收发器1030,该收发器1030可连接至该处理器1020或存储器1010。
其中,处理器1020可以控制该收发器1030与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器1030可以包括发射机和接收机。收发器1030还可以进一步包括天线,天线的数量可以为一个或多个。
应当理解,该电子设备中的各个组件通过总线系统相连,其中,总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
本申请还提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。或者说,本申请实施例还提供一种包含指令的计算机程序产品,该指令被计算机执行时使得计算机执行上述方法实施例的方法。
当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。例如,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
以上该,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以该权利要求的保护范围为准。

Claims (17)

1.一种模型训练方法,其特征在于,包括:
获取多个第一正样本;其中,每个所述第一正样本包括:原始搜索词和基于所述原始搜索词召回的第一原始召回文本;
获取每个所述原始搜索词的关联召回文本;所述关联召回文本与所述第一原始召回文本不同;
基于每个所述原始搜索词和对应的关联召回文本,生成第二正样本;并基于所述多个第一正样本和多个第二正样本,生成多个负样本;
基于所述多个第一正样本、所述多个第二正样本和所述多个负样本,训练目标召回模型。
2.根据权利要求1所述的方法,其特征在于,所述获取每个所述原始搜索词的关联召回文本,包括:
针对每个所述原始搜索词,确定所述原始搜索词的关联搜索词;
获取基于所述关联搜索词召回的第二原始召回文本;
将所述第二原始召回文本确定为所述原始搜索词的关联召回文本。
3.根据权利要求2所述的方法,其特征在于,所述确定所述原始搜索词的关联搜索词,包括:
将与所述原始搜索词属于同一用户会话且搜索意图相同的搜索词,确定为所述原始搜索词的关联搜索词。
4.根据权利要求3所述的方法,其特征在于,所述基于所述多个第一正样本和多个第二正样本,生成多个负样本之前,还包括:
确定所述多个第一正样本各自的原始搜索词在单位时间内的查询量以及所述多个第二正样本各自对应的关联搜索词在单位时间内的查询量;
对所述多个第一正样本各自的原始搜索词在单位时间内的查询量以及所述多个第二正样本各自对应的关联搜索词在单位时间内的查询量进行归一化处理,得到所述多个第一正样本各自的原始搜索词的采样率以及所述多个第二正样本各自对应的关联搜索词的采样率;
所述基于所述多个第一正样本和多个第二正样本,生成多个负样本,包括:
基于所述多个第一正样本各自的原始搜索词的采样率对所述多个第一正样本进行采样,得到至少一个第一采样样本;并基于所述多个第二正样本各自对应的关联搜索词的采样率对所述多个第二正样本进行采样,得到至少一个第二采样样本;
基于所述至少一个第一采样样本和所述至少一个第二采样样本,生成所述多个负样本。
5.根据权利要求4所述的方法,其特征在于,所述基于所述至少一个第一采样样本和所述至少一个第二采样样本,生成所述多个负样本,包括:
将所述至少一个第一采样样本和所述至少一个第二采样样本划分为多个第一样本集合;
针对每个所述第一样本集合中的每个采样样本,将所述采样样本的搜索词与所述第一样本集合中其他采样样本的召回文本进行组合,以生成负样本。
6.根据权利要求2所述的方法,其特征在于,所述确定所述原始搜索词的关联搜索词,包括:
将所述原始搜索词的同义词、纠错词或者改写词,确定为所述原始搜索词的关联搜索词。
7.根据权利要求1所述的方法,其特征在于,所述获取每个所述原始搜索词的关联召回文本,包括:
针对每个所述原始搜索词,将所述原始搜索词输入至除所述目标召回模型以外的其他召回模型,以获取所述原始搜索词的关联召回文本。
8.根据权利要求6或7所述的方法,其特征在于,所述基于所述多个第一正样本和多个第二正样本,生成多个负样本,包括:
对所述多个第一正样本和所述多个第二正样本进行随机采样,得到多个第三采样样本;
基于所述多个第三采样样本,生成所述多个负样本。
9.根据权利要求8所述的方法,其特征在于,所述基于所述多个第三采样样本,生成所述多个负样本,包括:
将所述多个第三采样样本划分为多个第二样本集合;
针对每个所述第二样本集合中的每个采样样本,将所述采样样本的搜索词与所述第二样本集合中其他采样样本的召回文本进行组合,以生成负样本。
10.根据权利要求1-7中任一项所述的方法,其特征在于,所述目标召回模型是包括搜索塔和文本塔的双塔模型;
所述基于所述多个第一正样本、所述多个第二正样本和所述多个负样本,训练目标召回模型,包括:
基于所述多个第一正样本、所述多个第二正样本和所述多个负样本,训练所述搜索塔,且保持所述文本塔不变。
11.一种文本召回方法,其特征在于,包括:
获取目标搜索词;
将所述目标搜索词输入至如权利要求1-10中任一项所述方法训练得到的目标召回模型,得到所述目标搜索词与多个文本之间的相似度;
基于所述目标搜索词与所述多个文本之间的相似度,确定所述目标搜索词对应的召回文本。
12.根据权利要求11所述的方法,其特征在于,所述目标召回模型是包括搜索塔和文本塔的双塔模型;
所述将所述目标搜索词输入至如权利要求1-10中任一项所述方法训练得到的目标召回模型,得到所述目标搜索词与多个文本之间的相似度,包括:
将所述目标搜索词输入至所述搜索塔中,得到所述目标搜索词的向量表示;
通过所述目标召回模型的相似度计算层对所述目标搜索词的向量表示以及所述多个文本的向量表示进行相似度计算,得到所述目标搜索词与多个文本之间的相似度;其中,所述多个文本的向量表示是通过所述文本塔预先处理得到的。
13.一种模型训练装置,其特征在于,包括:
获取模块,用于:
获取多个第一正样本;其中,每个所述第一正样本包括:原始搜索词和基于所述原始搜索词召回的第一原始召回文本;
生成模块,用于基于每个所述原始搜索词和对应的关联召回文本,生成第二正样本;并基于所述多个第一正样本和多个第二正样本,生成多个负样本;所述关联召回文本与所述第一原始召回文本不同;
训练模块,用于基于所述多个第一正样本、所述多个第二正样本和所述多个负样本,训练目标召回模型。
14.一种文本召回装置,其特征在于,包括:
获取模块,用于获取目标搜索词;
输入模块,用于将所述目标搜索词输入至如权利要求1-10中任一项所述方法训练得到的目标召回模型,得到所述目标搜索词与多个文本之间的相似度;
确定模块,用于基于所述目标搜索词与所述多个文本之间的相似度,确定所述目标搜索词对应的召回文本。
15.一种电子设备,其特征在于,包括:
处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行权利要求1至12中任一项所述的方法。
16.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序使得计算机执行如权利要求1至12中任一项所述的方法。
17.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现如权利要求1至12中任一项所述的方法。
CN202310475950.9A 2023-04-25 2023-04-25 模型训练方法、文本召回方法、设备、介质及程序产品 Pending CN117217278A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310475950.9A CN117217278A (zh) 2023-04-25 2023-04-25 模型训练方法、文本召回方法、设备、介质及程序产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310475950.9A CN117217278A (zh) 2023-04-25 2023-04-25 模型训练方法、文本召回方法、设备、介质及程序产品

Publications (1)

Publication Number Publication Date
CN117217278A true CN117217278A (zh) 2023-12-12

Family

ID=89044961

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310475950.9A Pending CN117217278A (zh) 2023-04-25 2023-04-25 模型训练方法、文本召回方法、设备、介质及程序产品

Country Status (1)

Country Link
CN (1) CN117217278A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117743950A (zh) * 2024-02-20 2024-03-22 浙江口碑网络技术有限公司 相关性判断方法及基于llm的相关性判断模型构建方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117743950A (zh) * 2024-02-20 2024-03-22 浙江口碑网络技术有限公司 相关性判断方法及基于llm的相关性判断模型构建方法
CN117743950B (zh) * 2024-02-20 2024-05-28 浙江口碑网络技术有限公司 相关性判断方法及基于llm的相关性判断模型构建方法

Similar Documents

Publication Publication Date Title
WO2020177282A1 (zh) 一种机器对话方法、装置、计算机设备及存储介质
CN112131366B (zh) 训练文本分类模型及文本分类的方法、装置及存储介质
CN111066021B (zh) 使用随机文档嵌入的文本数据表示学习
Xie et al. A Survey on Machine Learning‐Based Mobile Big Data Analysis: Challenges and Applications
CN110234018B (zh) 多媒体内容描述生成方法、训练方法、装置、设备及介质
CN112732870B (zh) 基于词向量的搜索方法、装置、设备及存储介质
CN113239169A (zh) 基于人工智能的回答生成方法、装置、设备及存储介质
JP2023017921A (ja) コンテンツ推薦とソートモデルトレーニング方法、装置、機器、記憶媒体及びコンピュータプログラム
CN113779225B (zh) 实体链接模型的训练方法、实体链接方法及装置
US20240338533A1 (en) Method, apparatus and electronic device for information processing
CN114880991B (zh) 知识图谱问答问句实体链接方法、装置、设备及介质
CN113987161A (zh) 一种文本排序方法及装置
CN117217278A (zh) 模型训练方法、文本召回方法、设备、介质及程序产品
CN116796730A (zh) 基于人工智能的文本纠错方法、装置、设备及存储介质
CN112307738B (zh) 用于处理文本的方法和装置
CN116975221A (zh) 文本阅读理解方法、装置、设备及存储介质
CN116796729A (zh) 基于特征强化的文本推荐方法、装置、设备及存储介质
CN117131273A (zh) 资源搜索方法、装置、计算机设备、介质及产品
CN113157892B (zh) 用户意图处理方法、装置、计算机设备及存储介质
CN114282058A (zh) 模型训练与视频主题预测的方法、装置及设备
WO2020151318A1 (zh) 基于爬虫模型的语料构建方法、装置及计算机设备
Zha et al. Self‐Attention Based Time‐Rating‐Aware Context Recommender System
CN116776870B (zh) 意图识别方法、装置、计算机设备及介质
US20220286416A1 (en) Method and apparatus for generating account intimacy
CN113626564B (zh) 一种概念标签生成方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication