搜索排序模型训练方法及装置、搜索排序方法及装置与流程

文档序号:23305790发布日期:2020-12-15 11:36阅读:192来源:国知局
搜索排序模型训练方法及装置、搜索排序方法及装置与流程

本申请实施例涉及计算机技术领域,特别是涉及一种搜索排序模型训练方法及装置、搜索排序方法及装置、电子设备及计算机可读存储介质。



背景技术:

在搜索应用领域中,查询输入和搜索内容的相关性计算以及排序的性能直接影响搜索性能,如搜索结果的准确性。因此,查询输入与搜索内容的搜索排序方法的改进,是本领域技术人员一直探索的问题。现有技术中常见的搜索排序方法包括:基于传统特征拟合的方法、基于pointwise(单个文档排序)的搜索排序方法、基于listwise(多个文档排序)的搜索排序方法等。然而,基于传统特征拟合的方法需要手动设计大量的特征,人工成本较高;基于pointwise的搜索排序方法不能做样本的比较,因此不太适合训练排序的模型;基于listwise的搜索排序方法存在

可见,现有技术中的搜索排序方法仍需要改进。



技术实现要素:

本申请实施例提供一种搜索排序模型训练方法、搜索排序方法,有助于提升搜索排序结果的准确性。

第一方面,本申请实施例提供了一种搜索排序模型训练方法,包括:

基于搜索查询领域的预设训练样本集对bert模型进行预训练,得到与所述搜索查询领域匹配的bert模型参数;

通过所述bert模型参数初始化预设匹配识别模型的bert编码网络,并基于对所述预设训练样本集进行抽样后得到的第一样本集合,训练所述预设匹配识别模型,其中,所述基于对所述预设训练样本集进行抽样后得到的第一样本集合,训练所述预设匹配识别模型,包括:通过分别对所述第一样本集合中各第一训练样本的样本数据中各维度信息之间的匹配关系进行学习,确定所述bert编码网络用于进行特征编码的网络参数;

通过所述网络参数初始化预设搜索排序模型的所述bert编码网络,并基于对所述预设训练样本集进行抽样得到的第二样本集合,训练所述预设搜索排序模型;其中,所述第二样本集合中的每条第二训练样本包括与查询输入对应的多条正例搜索内容和多条负例搜索内容。

第二方面,本申请实施例提供了一种搜索排序模型训练装置,包括:

第一训练模块,用于基于搜索查询领域的预设训练样本集对bert模型进行预训练,得到与所述搜索查询领域匹配的bert模型参数;

第二训练模块,用于通过所述bert模型参数初始化预设匹配识别模型的bert编码网络,并基于对所述预设训练样本集进行抽样后得到的第一样本集合,训练所述预设匹配识别模型,其中,所述基于对所述预设训练样本集进行抽样后得到的第一样本集合,训练所述预设匹配识别模型,包括:通过分别对所述第一样本集合中各第一训练样本的样本数据中各维度信息之间的匹配关系进行学习,确定所述bert编码网络用于进行特征编码的网络参数;

第三训练模块,用于通过所述网络参数初始化预设搜索排序模型的所述bert编码网络,并基于对所述预设训练样本集进行抽样得到的第二样本集合,训练所述预设搜索排序模型;其中,所述第二样本集合中的每条第二训练样本包括与查询输入对应的多条正例搜索内容和多条负例搜索内容。

第三方面,本申请实施例提供了一种搜索排序方法,包括:

对于每个候选搜索内容,分别通过如本申请实施例中所述的搜索排序模型训练方法训练的搜索排序模型,获取所述候选搜索内容的排序得分;

根据各所述候选搜索内容的所述排序得分,对所述候选搜索内容进行排序;

其中,获取所述候选搜索内容的排序得分,包括:

根据目标查询输入、所述目标查询收入匹配的查询类型和所述候选搜索内容,采用基于预设词表切词的方法确定序列输入;

通过如本申请实施例中所述的搜索排序模型训练方法训练的搜索排序模型的bert编码网络对所述序列输入进行编码映射,确定所述序列输入的第一向量表示;

将所述第一向量表示与所述序列输入对应的精准匹配特征的向量表示进行融合,得到所述序列输入对应的向量表示,其中,所述序列输入对应的精准匹配特征的向量表示用于表达:所述查询输入和所述候选搜索内容的精准匹配信息;

对所述序列输入对应的向量表示执行还原处理;

对执行还原处理后得到的向量表示进行特征映射,得到所述候选搜索内容对应的隐层输出;

通过所述搜索排序模型的单层感知机对所述隐层输出进行降维处理,得到所述候选搜索内容的排序得分。

第四方面,本申请实施例提供了一种搜索排序装置,包括:

排序得分确定模块,用于对于每个候选搜索内容,分别通过本申请实施例所述的搜索排序模型训练方法训练的搜索排序模型,获取所述候选搜索内容的排序得分;

排序模块,用于根据各所述候选搜索内容的所述排序得分,对所述候选搜索内容进行排序;

在获取所述候选搜索内容的排序得分时,所述排序得分确定模块,进一步包括:

序列输入确定子模块,用于根据目标查询输入、所述目标查询收入匹配的查询类型和所述候选搜索内容,采用基于预设词表切词的方法确定序列输入;

第一向量表示确定子模块,用于通过所述预设搜索排序模型的bert编码网络对所述序列输入进行编码映射,确定所述序列输入的第一向量表示;

向量融合子模块,用于将所述第一向量表示与所述序列输入对应的精准匹配特征的向量表示进行融合,得到所述序列输入对应的向量表示,其中,所述序列输入对应的精准匹配特征的向量表示用于表达:所述查询输入和所述候选搜索内容的精准匹配信息;

向量还原子模块,用于对所述序列输入对应的向量表示执行还原处理;

特征映射子模块,用于对执行还原处理后得到的向量表示进行特征映射,得到所述候选搜索内容对应的隐层输出;

排序得分确定子模块,用于通过所述搜索排序模型的单层感知机对所述隐层输出进行降维处理,得到所述候选搜索内容的排序得分。

第五方面,本申请实施例还公开了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本申请实施例所述的搜索排序模型训练方法和/或实现本申请实施例所述的搜索排序方法。

第六方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时本申请实施例公开的搜索排序模型训练方法的步骤和/或实现本申请实施例所述的搜索排序方法的步骤。

本申请实施例公开的搜索排序模型训练方法,通过基于搜索查询领域的预设训练样本集对bert模型进行预训练,得到与所述搜索查询领域匹配的bert模型参数;通过所述bert模型参数初始化预设匹配识别模型的bert编码网络,并基于对所述预设训练样本集进行抽样后得到的第一样本集合,训练所述预设匹配识别模型,其中,所述基于对所述预设训练样本集进行抽样后得到的第一样本集合,训练所述预设匹配识别模型,包括:通过分别对所述第一样本集合中各第一训练样本的样本数据中各维度信息之间的匹配关系进行学习,确定所述bert编码网络用于进行特征编码的网络参数;通过所述网络参数初始化预设搜索排序模型的所述bert编码网络,并基于对所述预设训练样本集进行抽样得到的第二样本集合,训练所述预设搜索排序模型;其中,所述第二样本集合中的每条第二训练样本包括与查询输入对应的多条正例搜索内容和多条负例搜索内容,有助于提升搜索排序结果的准确性。

上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。

附图说明

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

图1是本申请实施例一的搜索排序模型训练方法流程图;

图2是本申请实施例一中匹配识别模型结构示意图;

图3是本申请实施例一中搜索排序模型结构示意图;

图4是本申请实施例二中公开的搜索排序方法中确定搜索排序得分的流程示意图;

图5是本申请实施例三的搜索排序模型训练装置结构示意图;

图6是本申请实施例四的搜索排序装置结构示意图;

图7示意性地示出了用于执行根据本申请的方法的电子设备的框图;以及

图8示意性地示出了用于保持或者携带实现根据本申请的方法的程序代码的存储单元。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

实施例一

本申请实施例公开的一种搜索排序模型训练方法,如图1所示,所述方法包括:步骤110至步骤130。

步骤110,基于搜索查询领域的预设训练样本集对bert模型进行预训练,得到与所述搜索查询领域匹配的bert模型参数。

通常,现有技术中的bert模型是使用通用数据集训练得到的,通过基于通用数据集训练bert模型,使得得到的bert模型具备很好的输入文本之间的语义学习能力。因此,现有技术中的bert模型适用于自然语言处理(如翻译等)领域。

本申请实施例中,将bert模型应用于搜索查询领域,因此,需要首先基于搜索查询领域的训练数据集预训练bert模型。

msmarco(microsoftmachinereadingcomprehension,微软机器阅读理解”数据集)属于大规模语料,本申请的一些实施例中,直接使用该数据集对bert进行预训练。例如,使用mlm(maskedlanguagemodel)任务和nsp(nextsentenceprediction,语句间关系学习任务)预训练bert模型,使得bert模型与搜索查询领域相适应。

本申请的另一些实施例中,还可以使用搜索查询领域的其他数据集训练bert模型,本申请不再一一例举。

bert模型的训练方法参见现有技术,本申请实施例中不再赘述。

步骤120,通过所述bert模型参数初始化预设匹配识别模型的bert编码网络,并基于对所述预设训练样本集进行抽样后得到的第一样本集合,训练所述预设匹配识别模型。

基于搜索查询领域的训练样本集训练得到bert模型之后,将该bert模型中各隐层的网络参数作为预设匹配识别模型的bert编码网络的相应网络参数,之后,随机初始化预设匹配识别模型的其他网络参数,然后,基于预设训练样本训练预设匹配识别模型。

本申请的一些实施例中,预设匹配识别模型基于bert模型构建,如图2所示,所述预设匹配识别模型200包括:bert编码网络210、激活函数220和输出层230。其中,所述bert编码网络210的网络机构与步骤110中训练的bert模型的部分网络结构相同,因此,可以通过预训练的bert模型的部分网络参数初始化匹配识别模型200中bert编码网络210相应网络结构的网络参数。而对于匹配识别模型200中的其他网网络参数(如激活函数220、输出层230中损失函数的参数等)则可以随机初始化。

接下来,训练所述匹配识别模型200。

本申请的一些实施例中,所述基于对所述预设训练样本集进行抽样后得到的第一样本集合,训练所述预设匹配识别模型,包括:通过分别对所述第一样本集合中各第一训练样本的样本数据中各维度信息之间的匹配关系进行学习,确定所述bert编码网络用于进行特征编码的网络参数。本申请实施例中所述的匹配关系包括:文本匹配关系。优选的,本申请的另一些实施例中,所述匹配关系包括:文本匹配关系和类别匹配关系。

用于预训练bert模型的数据集(如msmarco数据集)是一个超大数据集,为了提升训练效率,本申请的一些实施例中,首先对所述预设训练样本集进行抽样,得到第一样本集合,之后,基于第一样本集合训练所述预设匹配识别模型。例如,对于所述预设训练样本集中每个查询输入对应的训练样本,随机选择其中k个训练样本,构建第一样本集合。其中,k为大于1的整数。

发明人经过研究发现,查询输入和搜索内容的匹配模式与查询输入的类型有很大的关系,因此,本申请的一些实施例中,在构建第一样本集合时,考虑了查询输入的类型信息。

本申请的一些实施例中,所述第一样本集合中每条第一训练样本的样本数据包括以下维度信息:查询输入、查询类型、与查询输入对应的一条搜索内容;所述通过分别对所述第一样本集合中各第一训练样本的样本数据中各维度信息之间的匹配关系进行学习,确定所述bert编码网络用于进行特征编码的网络参数,包括:根据所述第一样本集合中每个第一训练样本包括的查询输入、查询类型、与查询输入对应的一条搜索内容,分别确定与每条所述第一训练样本对应的序列输入;通过预设匹配识别模型的bert编码网络对每个所述序列输入进行编码映射,分别确定各所述第一训练样本对应的隐层输出;通过所述预设匹配识别模型的输出层将每个所述隐层输出映射为所述第一训练样本对应的匹配度预测值;通过交叉熵损失函数,根据所有所述第一训练样本对应的匹配度预测值,优化所述预设匹配识别模型的网络参数。

以所述第一样本集合中包括k个第一训练样本为例,每个第一训练样本的样本数据都包括:查询输入(下文中表示为q)、查询类型(下文中表示为t)和与所述查询输入对应的一条搜索内容(下文中表示为d)。其中,查询输入可以包括一个或多个词语;查询类型用于描述该查询输入对应的问题类型(例如查询类型包括:是什么问题类型、是否问题类型等),查询类型可以通过一个或多个预设词语表示;搜索内容为与查询输入匹配的搜索结果,搜索内容可以包括一个或多个词语。在模型训练过程中,首先根据每条第一训练样本,确定一个序列输入。

本申请的一些实施例中,根据所述第一样本集合中每个第一训练样本包括的查询输入、查询类型、与查询输入对应的一条搜索内容,分别确定与每条所述第一训练样本对应的序列输入,包括:将所述第一正样本集合中每个第一训练样本中查询输入、查询类型、与查询输入对应的一条搜索内容,按照预设规则分别拼接为与每条所述第一训练样本对应的序列输入。例如,根据第i个第一训练样本,确定形式为xi=[<cls>,t,<sep>,q,<sep>,di]的序列输入xi,其中,<sep>表示分隔符,<cls>的位置对应的向量表示查询输入q和搜索内容di的以及查询类型t的关系。

经过bert编码网络对序列输入进行编码处理之后,得到的向量表示将包含从查询输入、查询类型以及搜索内容三种信息中提取的匹配信息。本申请的一些实施例中,bert编码网络的每个token(即序列输入中的符号)的编码由token编码、段信息编码和位置信息编码组成。所述通过预设匹配识别模型的bert编码网络对每个所述序列输入进行编码映射,分别确定各所述第一训练样本对应的隐层输出,包括:对于每个所述序列输入,通过预设匹配识别模型的bert编码网络对所述序列输入进行编码映射,得到所述序列输入对应的向量表示;对所述序列输入对应的向量表示进行特征映射,得到所述序列输入对应的所述第一训练样本对应的隐层输出。例如,第i个序列输入的第j个token(如表示为)的编码(如表示为)可以表示为:

其中,表示第i个序列输入的第j个token的编码,表示第i个序列输入的第j个token的段信息编码,表示第i个序列输入的第j个token的位置编码。

所述bert编码网络的各个隐层依次对前一隐层输出的隐层向量进行特征映射。对本申请的一些实施例中,取bert编码网络的最后一层中<cls>位置的隐层向量hi作为查询输入与搜索内容、查询类型之间匹配关系的隐层输出。

接下来,通过匹配识别模型的输出层的激活函数将隐层向量hi映射为匹度预测值。例如,通过函数ri=softmax(hi)将第i个第一训练样本对应的向量表示hi映射为匹度预测值ri。

之后,通过匹配识别模型的损失函数计算模型的损失值。本申请的一些实施例中,匹配识别模型的损失函数为交叉熵损失函数。通过交叉熵损失函数,根据所有所述第一训练样本对应的匹配度预测值,优化所述预设匹配识别模型的网络参数,包括:通过交叉熵损失函数,根据所有所述第一训练样本对应的匹配度预测值和匹配度真实值,计算所述预设匹配识别模型的损失值,并以所述损失值最小为目标优化所述预设匹配识别模型的网络参数,直至所述损失值收敛至满足预设条件。例如,通过所述匹配识别模型的交叉熵损失函数根据所有所述第一训练样本对应的匹配度预测值和匹配度真实值,计算所述匹配识别模型的损失值,之后,通过优化所述预设匹配识别模型的网络参数,以减小所述损失值,直至所述损失值满足预设条件,完成模型训练。其中,所述第一训练样本对应的匹配度真实值根据样本标签确定。

至此,所述匹配识别模型训练完成。

通过以上的训练过程,匹配识别模型对不同的查询输入学习到了不同的搜索内容的匹配模式,并且,使得所述匹配识别模型具备类型自适应能力。

步骤130,通过所述网络参数初始化预设搜索排序模型的所述bert编码网络,并基于对所述预设训练样本集进行抽样得到的第二样本集合,训练所述预设搜索排序模型。

其中,所述第二样本集合中的每条第二训练样本包括与查询输入对应的多条正例搜索内容和多条负例搜索内容。

进一步的,基于所述匹配识别模型中bert编码网络的网络参数进一步训练搜索排序模型。

本申请的一些实施例中,所述搜索排序模型基于bert模型构建。如图3所示,所述搜索排序模型300包括:bert编码网络310、单层感知机320、输出层330、损失函数340。其中,bert编码网络310的由所述匹配识别模型200中的bert编码网络210组成。因此,在训练所述搜索排序模型时,首先通过所述匹配识别模型200中的bert编码网络210的网络参数,初始化所述搜索排序模型300的bert编码网络310的网络参数,使得所述搜索排序模型300基于已经学习到的单个查询输入和搜索内容、查询类型之间的匹配关系,进一步学习多个搜索内容之间的关联关系。

本申请的一些实施例中,基于对所述预设训练样本集进行抽样得到的第二样本集合,训练所述预设搜索排序模型,包括:分别确定与所述第二样本集合中每条第二训练样本对应的多个序列输入;通过所述预设搜索排序模型的bert编码网络,对每个所述序列输入进行编码映射,分别确定各所述序列输入对应的正例搜索内容或负例搜索内容对应的隐层输出;通过所述预设搜索排序模型的单层感知机分别对各所述正例搜索内容或负例搜索内容对应的隐层输出进行降维处理,得到各所述正例搜索内容或负例搜索内容对应的排序得分;对各所述正例搜索内容或负例搜索内容对应的排序得分进行归一化处理,得到各所述正例搜索内容或负例搜索内容对应的归一化排序得分;通过对正例搜索内容对应的归一化排序得分进行负对数似然损失优化,训练所述预设搜索排序模型的网络参数。

在训练所述搜索排序模型时,为了减少计算处理设备的运算量,首先对所述预设训练样本集进行抽样,得到第二样本集合。为了提升训练的到的模型的排序准确度,本申请的一些实施例中,对于一个查询输入,从所述预设训练样本集分别抽取n个搜索内容正例和n个搜索内容负例,与该查询输入,构建一条第二训练样本,其中,n为大于0的整数。

之后,分别确定与所述第二样本集合中每条第二训练样本对应的多个序列输入。其中,每条搜索内容对应一个序列输入。基于查询输入、查询类型和一条搜索内容确定一个序列输入的具体实施方式参见训练匹配识别模型时确定序列输入的具体实施方式,此处不再赘述。按照此方法,可以得到2n个序列输入,之后,将得到的2n个序列输入拼接为一个序列输入列表,输入至所述搜索排序模型300的bert编码网络310。所述bert编码网络310对输入的所述多个序列输入分别进行编码映射,确定各所述序列输入对应的向量表示。在bert编码网络310对所述多个序列输入分别进行编码映射的过程中,所述bert编码网络310基于所述多个序列输入中的信息进行编码映射,实现了学习多个搜索内容之间的关联关系。之后,所述bert编码网络310的最后一层将输出每个序列输入(即每个搜索内容)的隐层输出。

接下来,通过所述预设搜索排序模型300的单层感知机320分别对各所述搜索内容对应的隐层输出进行降维处理,得到各所述序列输入对应的排序得分。本申请的一些实施例中,所述单层感知机320可以表示为:ri=whi+b,其中,ri为排序得分,hi为第i个搜索内容的隐层输出,w和b为单层感知机320的网络参数。经过单层感知机320分别对各所述搜索内容对应的隐层输出进行降维处理,得到各所述搜索内容对应的排序得分可以表示为:[r1+,r2+,…,rn+,r1-,r2-,…,rn-],其中,rn+表示第n个正例搜索内容对应的排序得分,rn-表示第n个负例搜索内容对应的排序得分。

进一步的,对于每个序列输入对应(即每个搜索内容对应的)的排序分数,通过输出层330进行文本级别的归一化。例如,在所述输出层330中,通过公式:确定第i个搜索内容对应的归一化排序得分scorei,其中,ri表示第i个搜索内容对应的排序得分,rj表示第j个搜索内容对应的排序得分,n++n-为所有整理搜索内容和负例搜索内容的数量和。本申请的其他实施例中,还可以采用其他方法确定第i个搜索内容对应的归一化排序得分scorei,本申请实施例中不再一一例举。

在确定了每个搜索内容对应的归一化排序得分(即搜索内容对应的序列输入对应的归一化排序得分)之后,通过将各搜索内容对应的归一化排序得分进行比较排序,即可得到对应一个查询输入的多个搜索内容的排序结果预测值。通过最大化正确排序的分数,即可实现优化模型参数。本申请的一些实施例中,为了提升排序结果预测准确度,减小模型训练的复杂度,将最大化正确排序的分数转化为最大化正例搜索内容的分数例如,通过所述搜索排序模型300的损失函数340计算各第二训练样本中正例搜索内容的负对数似然损失,并通过优化损失优化正例搜索内容的负对数似然损失,优化所述搜索排序模型的网络参数,直至负对数似然损失达到最优值,完成模型训练。其中,所述损失函数340可以通过如下公式表示:其中,scorej表示第j个搜索内容的归一化排序得分,n+表示正例搜索内容的数量。

本申请实施例公开的搜索排序模型训练方法,通过基于搜索查询领域的预设训练样本集对bert模型进行预训练,得到与所述搜索查询领域匹配的bert模型参数;通过所述bert模型参数初始化预设匹配识别模型的bert编码网络,并基于对所述预设训练样本集进行抽样后得到的第一样本集合,训练所述预设匹配识别模型,其中,所述基于对所述预设训练样本集进行抽样后得到的第一样本集合,训练所述预设匹配识别模型,包括:通过分别对所述第一样本集合中各第一训练样本的样本数据中各维度信息之间的匹配关系进行学习,确定所述bert编码网络用于进行特征编码的网络参数;通过所述网络参数初始化预设搜索排序模型的所述bert编码网络,并基于对所述预设训练样本集进行抽样得到的第二样本集合,训练所述预设搜索排序模型;其中,所述第二样本集合中的每条第二训练样本包括与查询输入对应的多条正例搜索内容和多条负例搜索内容,有助于提升搜索排序结果的准确性。

本申请实施例公开的搜索排序模型训练方法,通过基于搜索查询领域的预设训练样本集对bert模型进行预训练,得到与所述搜索查询领域匹配的bert模型参数,可以提升bert模型的领域适应能力。进一步的,基于单文档输入对bert模型进行微调,在学习查询输入与搜索内容的匹配关系同时,进一步提升bert模型(即bert编码网络)的类别适应能力。更进一步的,基于多文档输入进一步对bert模型进行微调,进一步学习进行排序的多个搜索内容之间的关联,从而提升搜索排序模型的排序准确性。

进一步的,通过对训练样本进行抽样,根据抽样后得到的训练样本集合对搜索排序模型进行训练,可以减小训练样本数量,以适应计算处理设备的运算能力。

实施例二

本申请另一实施例公开的搜索排序模型训练方法中,为了进一步提升搜索排序模型的排序准确性,在训练bert编码网络时,进一步引入了查询输入和搜索内容的精准匹配特征。例如,所述通过预设匹配识别模型的bert编码网络对每个所述序列输入进行编码映射,分别确定各所述第一训练样本对应的隐层输出之前,还包括:对于所述第一样本集合中每个第一训练样本,分别通过预设匹配识别模型的bert编码网络确定所述第一训练样本的精准匹配特征的隐层向量,其中,所述精准匹配特征用于表达所述第一训练样本包括的所述查询输入和所述搜索内容的精准匹配信息。

所谓精确匹配信息通过对查询输入和所述搜索内容进行精准匹配得到,用于指示某个词在查询输入和搜索内容中是否同时出现。例如,对于查询输入“redbike”和搜索内容“wehavemanybikes”,其中,“bike”是在查询输入和搜索内容中是否同时出现的次,而搜索内容中的其他词在查询输入中未出现,则搜索内容对应的精准匹配特征可以表示为“0001”。

相应的,所述通过预设匹配识别模型的bert编码网络对每个所述序列输入进行编码映射,分别确定各所述第一训练样本对应的隐层输出,包括:对于每个所述序列输入,通过预设匹配识别模型的bert编码网络对所述序列输入进行编码映射,得到所述序列输入的第一向量表示;将所述第一向量表示与所述序列输入对应的所述第一训练样本的所述精准匹配特征的向量表示进行融合,得到所述序列输入对应的向量表示;对所述序列输入对应的向量表示进行特征映射,得到所述序列输入对应的所述第一训练样本对应的隐层输出。

例如,在通过bert编码网络对由查询输入和搜索内容拼接得到的序列输入进行编码之前,可以首先通过bert编码网络的第一分支网络将查询输入和搜索内容的精准匹配特征映射为一个向量表示之后,通过bert编码网络的第二分支网络对由查询输入和搜索内容拼接得到的序列输入进行编码映射,得到所述序列输入的第一向量表示其中,其中,表示第i个序列输入的第j个token的编码,表示第i个序列输入的第j个token的段信息编码,表示第i个序列输入的第j个token的位置编码。

之后,将所述第一向量表示与所述序列输入对应的所述第一训练样本的所述精准匹配特征的向量表示进行融合,得到所述序列输入对应的向量表示。例如,可以通过如下算法对所述第一向量表示与所述精准匹配特征的向量表示进行融合:其中,α表示所述精准匹配特征,作为一个超参数使用,α的取值根据测试经验确定。

接下来,通过bert编码网络对融合后得到的向量标识进一步进行特征映射,得到各序列输入对应的第一训练样本的隐层输出。

相应的,在搜索排序模型训练过程中,在根据查询输入和搜索内容生成序列输入的过程中,通过采用切词方法,改进了生成序列输入的方法。本申请的一些实施例中,所述根据所述第一样本集合中每个第一训练样本包括的查询输入、查询类型、与查询输入对应的一条搜索内容,分别确定与每条所述第一训练样本对应的序列输入,包括:对于所述第一样本集合中每个第一训练样本,分别执行以下操作:通过预设匹配识别模型的bert编码网络,对所述第一训练样本包括的查询输入中未包含在预设词表内的词、所述第一训练样本包括的搜索内容中未包含在所述预设词表中的词,分别基于所述预设词表进行切分,得到每个所述词对应的词语片段;将所述查询输入中包含在所述预设词表中的词、对所述查询输入中未包含在所述预设词表中的词切分得到的词语片段、查询类型、所述搜索内容中包含在所述预设词表中的词、对所述搜索内容中未包含在所述预设词表中的词切分得到的词语片段进行拼接,确定所述第一训练样本对应的序列输入。

bert编码网络基于词表学习查询输入和搜索内容,以及搜索内容之间的内容相关性。为了减小词表的数量,节约计算处理设备的存储空间,并且进一步提升搜索排序模型的学习性能,在本申请的一些实施例中,采用wordpiece方法来对查询输入和搜索内容中在词表以外的词,即out-of-vocabulary(oov)词进行切分,使得bert编码网络可以基于切分后得到的词学习输入文本之间的相关性,在保证学习信息量不变的情况下,可以减小词表的数量,从而节约计算处理设备的存储空间。

例如,原始的查询输入“whatdoesbogusmean?”为例,查询输入中包含词“bogue”,为未包含在预设词表中的词,搜索内容中包含词“bogus”为未包含在预设词表中的词。通过wordpiece方法,将“bogue”切分成词语片段“bog”和“##ue”,并且将“bogus”切分成”bog”和“##us”。在生成序列输入时,根据查询输入中包含在所述预设词表中的词“what”、“does”、“mean”和未包含所述预设词表中的词“bogus”切分后得到的词语片段“bog”和“##us”生成序列输入。

实验表明,在切分之前“bogus”和“bogue”是不相关的两个词,但是由于wordpiece切分出了匹配的片段“bog”,使得两者的相关性计算分数比较高,更准确的反映了两者的文本相关性。

本申请的一些实施例中,通过在搜索排序模型的bert编码网络的表示层和最后一个隐层之间引入一个词还原层,将切分开的词还原为原始词,从而使输入文本域输出文本保持一致,以符合端到端的模型结构的输入输出对应关系要求。其中,还原操作可以通过wordmasking(词掩码)方法实现。例如,通过方法实现词还原,对切分后生成的每个序列输入的向量表示进行处理,通过recovery()执行词还原操作。具体的,可以通过设置在bert编码网络的表示层和最后一个隐层之间的例如平均池化层averagepooling,对前述被切分后得到词语片段“bog”和“##ue”的编码每个维度的值加和取平均值,即可实现向量表示还原。

相应的,在训练搜索排序模型时,分别确定与所述第二样本集合中每条第二训练样本对应的多个序列输入,包括:对于所述第二样本集合中每个第二训练样本,分别执行以下操作:通过预设搜索排序模型的bert编码网络,对所述第二训练样本包括的查询输入中未包含在预设词表内的词、所述第二训练样本包括的搜索内容中未包含在所述预设词表中的词,分别基于所述预设词表进行切分,得到每个所述词对应的词语片段;将所述查询输入中包含在所述预设词表中的词、对所述查询输入中未包含在所述预设词表中的词切分得到的词语片段、查询类型、所述搜索内容中包含在所述预设词表中的词、对所述搜索内容中未包含在所述预设词表中的词切分得到的词语片段进行拼接,确定所述第二训练样本中每个搜索内容对应的序列输入。

确定每个正例搜索内容或负例搜索内容对应的序列输入的具体实施方式参见实施例一中确定第一训练样本对应的序列输入的具体实施方式,本实施例中不再赘述。将所述第二训练样本中包括的查询输入的文本序列、查询类型的文本序列、每个正例搜索内容对应的序列输入、每个负例搜索内容对应序列输入进行拼接,即得到搜索排序模型的序列输入。

相应的,所述通过所述预设搜索排序模型的bert编码网络,对每个所述序列输入进行编码映射,分别确定各所述序列输入对应的正例搜索内容或负例搜索内容对应的隐层输出之前,还包括:对于所述第二样本集合中每个第二训练样本,分别通过预设搜索排序模型的bert编码网络确定所述第二训练样本中各正例搜索内容和各负例搜索内容的精准匹配特征的向量表示,其中,所述精准匹配特征用于表达所述第二训练样本包括的所述查询输入和所述正例搜索内容或所述负例搜索内容的精准匹配信息。

相应的,通过所述预设搜索排序模型的bert编码网络,对每个所述序列输入进行编码映射,分别确定各所述序列输入对应的正例搜索内容或负例搜索内容对应的隐层输出,包括:对于每个所述序列输入,通过预设搜索排序模型的bert编码网络对所述序列输入进行编码映射,得到所述序列输入的第一向量表示;将所述第一向量表示与所述序列输入对应的所述正例搜索内容或负例搜索内容的所述精准匹配特征的向量表示进行融合,得到所述序列输入对应的向量表示;对所述序列输入对应的向量表示执行还原处理;对执行还原处理后得到的向量表示进行特征映射,得到所述第二训练样本中包括的各正例搜索内容和各负例搜索内容对应的隐层输出。

对所述序列输入对应的向量表示进行还原处理的具体实施方式参见前述描述,此处不再赘述。经过还原处理,被切分后得到的词语片段对应的向量表示将被回复为原始词对应的向量表示,搜索内容中各原始词对应的向量表示依序构成了该搜索内容的向量表示(即该搜索内容对应的序列输入的向量表示)。对还原后得到的搜索内容的向量表示进行特征映射,即可得到所述搜索内容对应的隐层输出。

在通过上述方法训练得到搜索排序模型之后,可以将所述搜索排序模型应用于对查询输入召回的候选搜索内容进行排序。

本申请实施例公开的搜索排序模型训练方法,通过结合词表外词切分方法和引入精准匹配特征,可以在词表内词数量有限的情况下,更好的学习到文本之前的关联性,能够解决中文单字训练时由于词表数量有限导致的模型识别准确率低的弊端,使得可以使用较小数量的词表保证搜索排序模型的识别准确性,节省了计算处理设备的存储空间。

本申请的一些实施例中还公开了一种搜索排序方法,包括:对于每个候选搜索内容,分别通过如本申请实施例中所述的搜索排序模型训练方法训练的搜索排序模型,获取所述候选搜索内容的排序得分;根据各所述候选搜索内容的所述排序得分,对所述候选搜索内容进行排序。如图4所示,其中,获取所述候选搜索内容的排序得分,包括:子步骤s1至子步骤s6。

子步骤s1,根据目标查询输入、所述目标查询收入匹配的查询类型和所述候选搜索内容,采用基于预设词表切词的方法确定序列输入。

子步骤s2,通过如实施例一或实施例二所述的搜索排序模型训练方法训练的搜索排序模型的bert编码网络对所述序列输入进行编码映射,确定所述序列输入的第一向量表示。

子步骤s3,将所述第一向量表示与所述序列输入对应的精准匹配特征的向量表示进行融合,得到所述序列输入对应的向量表示,其中,所述序列输入对应的精准匹配特征的向量表示用于表达:所述查询输入和所述候选搜索内容的精准匹配信息。

子步骤s4,对所述序列输入对应的向量表示执行还原处理。

子步骤s5,对执行还原处理后得到的向量表示进行特征映射,得到所述候选搜索内容对应的隐层输出。

子步骤s6,通过所述搜索排序模型的单层感知机对所述隐层输出进行降维处理,得到所述候选搜索内容的排序得分。

例如,针对目标查询输入,计算处理设备通过调用搜索引擎在搜索物料中召回了m(m为大于1的整数)个候选搜索内容,之后,所述计算处理设备将目标查询输入、查询类型和每个候选搜索内容分别作为一个查询输入和搜索内容组合,并根据每个组合分别生成一个序列输入,得到m个序列输入。接下来,所述计算处理设备将每个序列输入分别输入至所述搜索排序模型300,通过所述搜索排序模型300对每个序列输入分别进行编码映射和特征映射处理,并将所述搜索排序模型300的输出层330的隐层输出作为相应组合对应的排序得分。最后,计算处理设备按照各组合对应的排序得分对相应的搜索内容进行排序。

在应用过程中,根据每个组合分别生成一个序列输入的具体实施方式参见训练阶段根据查询输入和一个搜索内容生成一个序列输入的具体实施方式,此处不再赘述。

所述搜索排序模型300对每个序列输入分别进行编码映射和特征映射处理,得到序列输入对应的隐层输出的具体技术方案与训练阶段类似,即:对于每个组合对应的序列输入,所述搜索排序模型300对该序列输入首先进行编码映射,确定该序列输入的向量表示;之后,对所述向量表示进行还原处理;再对还原处理得到的向量表示进行特征映射,并获取输出层330的隐层输出。

本申请实施例公开的搜索排序方法,对于每个候选搜索内容,分别通过如实施例一或实施例二所述的搜索排序模型训练方法训练的搜索排序模型获取所述候选搜索内容的排序得分;根据各所述候选搜索内容的所述排序得分,对所述候选搜索内容进行排序。在获取所述候选搜索内容的排序得分时,根据目标查询输入、所述目标查询收入匹配的查询类型和所述候选搜索内容,采用基于预设词表切词的方法确定序列输入,然后,通过如实施例一或实施例二所述的搜索排序模型训练方法训练的搜索排序模型的bert编码网络对所述序列输入进行编码映射,确定所述序列输入的第一向量表示;将所述第一向量表示与所述序列输入对应的精准匹配特征的向量表示进行融合,得到所述序列输入对应的向量表示,其中,所述序列输入对应的精准匹配特征的向量表示用于表达:所述查询输入和所述候选搜索内容的精准匹配信息;对所述序列输入对应的向量表示执行还原处理;对执行还原处理后得到的向量表示进行特征映射,得到所述候选搜索内容对应的隐层输出;最后,通过所述搜索排序模型的单层感知机对所述隐层输出进行降维处理,得到所述候选搜索内容的排序得分,并根据各所述候选搜索内容的所述排序得分,对所述候选搜索内容进行排序,有助于提升搜索排序结果的准确性。

实施例三

本申请实施例公开的一种搜索排序模型训练装置,如图5所示,所述装置包括:

第一训练模块510,用于基于搜索查询领域的预设训练样本集对bert模型进行预训练,得到与所述搜索查询领域匹配的bert模型参数;

第二训练模块520,用于通过所述bert模型参数初始化预设匹配识别模型的bert编码网络,并基于对所述预设训练样本集进行抽样后得到的第一样本集合,训练所述预设匹配识别模型,其中,所述基于对所述预设训练样本集进行抽样后得到的第一样本集合,训练所述预设匹配识别模型,包括:通过分别对所述第一样本集合中各第一训练样本的样本数据中各维度信息之间的匹配关系进行学习,确定所述bert编码网络用于进行特征编码的网络参数;

第三训练模块530,用于通过所述网络参数初始化预设搜索排序模型的所述bert编码网络,并基于对所述预设训练样本集进行抽样得到的第二样本集合,训练所述预设搜索排序模型;其中,所述第二样本集合中的每条第二训练样本包括与查询输入对应的多条正例搜索内容和多条负例搜索内容。

本申请的一些实施例中,所述第一样本集合中每条第一训练样本的样本数据包括以下维度信息:查询输入、查询类型、与查询输入对应的一条搜索内容;所述第二训练模块520进一步用于:

根据所述第一样本集合中每个第一训练样本包括的查询输入、查询类型、与查询输入对应的一条搜索内容,分别确定与每条所述第一训练样本对应的序列输入;

通过预设匹配识别模型的bert编码网络对每个所述序列输入进行编码映射,分别确定各所述第一训练样本对应的隐层输出;

通过所述预设匹配识别模型的输出层将每个所述隐层输出映射为所述第一训练样本对应的匹配度预测值;

通过交叉熵损失函数,根据所有所述第一训练样本对应的匹配度预测值,优化所述预设匹配识别模型的网络参数。

本申请的一些实施例中,所述第三训练模块530进一步用于:

分别确定与所述第二样本集合中每条第二训练样本对应的多个序列输入;

通过所述预设搜索排序模型的bert编码网络,对每个所述序列输入进行编码映射,分别确定各所述序列输入对应的正例搜索内容或负例搜索内容对应的隐层输出;

通过所述预设搜索排序模型的单层感知机分别对各所述正例搜索内容或负例搜索内容对应的隐层输出进行降维处理,得到各所述正例搜索内容或负例搜索内容对应的排序得分;

对各所述正例搜索内容或负例搜索内容对应的排序得分进行归一化处理,得到各所述正例搜索内容或负例搜索内容对应的归一化排序得分;

通过对正例搜索内容对应的归一化排序得分进行负对数似然损失优化,训练所述预设搜索排序模型的网络参数。

本申请的一些实施例中,所述分别确定与所述第二样本集合中每条第二训练样本对应的多个序列输入,包括:

对于所述第二样本集合中每个第二训练样本,分别执行以下操作:

通过预设匹配识别模型的bert编码网络,对所述第二训练样本包括的查询输入中未包含在预设词表内的词、所述第二训练样本包括的正例搜索内容和负例搜索内容中未包含在所述预设词表中的词,分别基于所述预设词表进行切分,得到每个所述词对应的词语片段;

将所述查询输入中包含在所述预设词表中的词、对所述查询输入中未包含在所述预设词表中的词切分得到的词语片段、查询类型、所述正例搜索内容和负例搜索内容中包含在所述预设词表中的词、对所述正例搜索内容和负例搜索内容中未包含在所述预设词表中的词切分得到的词语片段,进行拼接,确定所述第二训练样本对应的多个序列输入,其中,所述第二训练样本对应的每个序列输入分别对应所述第二训练样本包括的一个正例搜索内容或一个负例搜索内容。

本申请的一些实施例中,所述通过所述预设搜索排序模型的bert编码网络,对每个所述序列输入进行编码映射,分别确定各所述序列输入对应的正例搜索内容或负例搜索内容对应的隐层输出之前,还包括:

对于所述第二样本集合中每个第二训练样本,分别通过预设搜索排序模型的bert编码网络确定所述第二训练样本中各正例搜索内容和各负例搜索内容的精准匹配特征的向量表示,其中,所述精准匹配特征用于表达所述第二训练样本包括的所述查询输入和所述正例搜索内容或所述负例搜索内容的精准匹配信息;

所述通过所述预设搜索排序模型的bert编码网络,对每个所述序列输入进行编码映射,分别确定各所述序列输入对应的正例搜索内容或负例搜索内容对应的隐层输出,包括:

对于每个所述序列输入,通过预设搜索排序模型的bert编码网络对所述序列输入进行编码映射,得到所述序列输入的第一向量表示;

将所述第一向量表示与所述序列输入对应的所述正例搜索内容或负例搜索内容的所述精准匹配特征的向量表示进行融合,得到所述序列输入对应的向量表示;

对所述序列输入对应的向量表示执行还原处理;对执行还原处理后得到的向量表示进行特征映射,得到所述第二训练样本中包括的各正例搜索内容和各负例搜索内容对应的隐层输出。

本申请实施例公开的搜索排序模型训练装置,通过结合词表外词切分方法和引入精准匹配特征,可以在词表内词数量有限的情况下,更好的学习到文本之前的关联性,能够解决中文单字训练时由于词表数量有限导致的模型识别准确率低的弊端,使得可以使用较小数量的词表保证搜索排序模型的识别准确性,节省了计算处理设备的存储空间。

本申请实施例公开的搜索排序模型训练装置,用于实现本申请实施例一或实施例二中所述的搜索排序模型训练方法,装置的各模块的具体实施方式不再赘述,可参见方法实施例相应步骤的具体实施方式。

本申请实施例公开的搜索排序模型训练装置,通过基于搜索查询领域的预设训练样本集对bert模型进行预训练,得到与所述搜索查询领域匹配的bert模型参数;通过所述bert模型参数初始化预设匹配识别模型的bert编码网络,并基于对所述预设训练样本集进行抽样后得到的第一样本集合,训练所述预设匹配识别模型,其中,所述基于对所述预设训练样本集进行抽样后得到的第一样本集合,训练所述预设匹配识别模型,包括:通过分别对所述第一样本集合中各第一训练样本的样本数据中各维度信息之间的匹配关系进行学习,确定所述bert编码网络用于进行特征编码的网络参数;通过所述网络参数初始化预设搜索排序模型的所述bert编码网络,并基于对所述预设训练样本集进行抽样得到的第二样本集合,训练所述预设搜索排序模型;其中,所述第二样本集合中的每条第二训练样本包括与查询输入对应的多条正例搜索内容和多条负例搜索内容,有助于提升搜索排序结果的准确性。

本申请实施例公开的搜索排序模型训练装置,通过基于搜索查询领域的预设训练样本集对bert模型进行预训练,得到与所述搜索查询领域匹配的bert模型参数,可以提升bert模型的领域适应能力。进一步的,基于单文档输入对bert模型进行微调,在学习查询输入与搜索内容的匹配关系同时,进一步提升bert模型(即bert编码网络)的类别适应能力。更进一步的,基于多文档输入进一步对bert模型进行微调,进一步学习进行排序的多个搜索内容之间的关联,从而提升搜索排序模型的排序准确性。

进一步的,通过对训练样本进行抽样,根据抽样后得到的训练样本集合对搜索排序模型进行训练,可以减小训练样本数量,以适应计算处理设备的运算能力。

实施例四

本申请实施例公开的一种搜索排序装置,如图6所示,所述装置包括:

排序得分确定模块610,用于对于每个候选搜索内容,分别通过如本申请实施例中所述的搜索排序模型训练方法训练的搜索排序模型,获取所述候选搜索内容的排序得分;

排序模块620,用于根据各所述候选搜索内容的所述排序得分,对所述候选搜索内容进行排序。

如图6所示,在获取所述候选搜索内容的排序得分时,所述排序得分确定模块610,进一步包括:

序列输入确定子模块6101,用于根据目标查询输入、所述目标查询收入匹配的查询类型和所述候选搜索内容,采用基于预设词表切词的方法确定序列输入;

第一向量表示确定子模块6102,用于通过所述搜索排序模型的bert编码网络对所述序列输入进行编码映射,确定所述序列输入的第一向量表示;

向量融合子模块6103,用于将所述第一向量表示与所述序列输入对应的精准匹配特征的向量表示进行融合,得到所述序列输入对应的向量表示,其中,所述序列输入对应的精准匹配特征的向量表示用于表达:所述查询输入和所述候选搜索内容的精准匹配信息;

向量还原子模块6104,用于对所述序列输入对应的向量表示执行还原处理;

特征映射子模块6105,用于对执行还原处理后得到的向量表示进行特征映射,得到所述候选搜索内容对应的隐层输出;

排序得分确定子模块6106,用于通过所述搜索排序模型的单层感知机对所述隐层输出进行降维处理,得到所述候选搜索内容的排序得分。

本申请实施例公开的搜索排序装置,对于每个候选搜索内容,分别通过如本申请实施例中所述的搜索排序模型训练方法训练的搜索排序模型,获取所述候选搜索内容的排序得分,之后,根据各所述候选搜索内容的所述排序得分,对所述候选搜索内容进行排序,有助于提升搜索排序结果的准确性。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上对本申请提供的一种搜索排序模型训练方法及装置、搜索排序方法及装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其一种核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

本申请的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(dsp)来实现根据本申请实施例的电子设备中的一些或者全部部件的一些或者全部功能。本申请还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本申请的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

例如,图7示出了可以实现根据本申请的方法的电子设备。所述电子设备可以为pc机、移动终端、个人数字助理、平板电脑等。该电子设备传统上包括处理器710和存储器720及存储在所述存储器720上并可在处理器710上运行的程序代码730,所述处理器710执行所述程序代码730时实现上述实施例中所述的方法。所述存储器720可以为计算机程序产品或者计算机可读介质。存储器720可以是诸如闪存、eeprom(电可擦除可编程只读存储器)、eprom、硬盘或者rom之类的电子存储器。存储器720具有用于执行上述方法中的任何方法步骤的计算机程序的程序代码730的存储空间7201。例如,用于程序代码730的存储空间7201可以包括分别用于实现上面的方法中的各种步骤的各个计算机程序。所述程序代码730为计算机可读代码。这些计算机程序可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(cd)、存储卡或者软盘之类的程序代码载体。所述计算机程序包括计算机可读代码,当所述计算机可读代码在电子设备上运行时,导致所述电子设备执行根据上述实施例的方法。

本申请实施例还公开了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请实施例一或实施例二所述的搜索排序模型训练方法和/或搜索排序方法的步骤。

这样的计算机程序产品可以为计算机可读存储介质,该计算机可读存储介质可以具有与图7所示的电子设备中的存储器720类似布置的存储段、存储空间等。程序代码可以例如以适当形式进行压缩存储在所述计算机可读存储介质中。所述计算机可读存储介质通常为如参考图8所述的便携式或者固定存储单元。通常,存储单元包括计算机可读代码730’,所述计算机可读代码730’为由处理器读取的代码,这些代码被处理器执行时,实现上面所描述的方法中的各个步骤。

本文中所称的“一个实施例”、“实施例”或者“一个或者多个实施例”意味着,结合实施例描述的特定特征、结构或者特性包括在本申请的至少一个实施例中。此外,请注意,这里“在一个实施例中”的词语例子不一定全指同一个实施例。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本申请可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1