一种模型训练的方法及装置与流程

    专利查询2023-02-20  76



    1.本说明书涉及计算机技术领域,尤其涉及一种模型训练的方法及装置。


    背景技术:

    2.在各网站和应用(application,app)的首页搜索模块中,通常会将首页搜索功能分为召回、粗排、精排、重排四个阶段,其中,粗排模型用于从召回阶段召回的上千个备选项中筛选出与搜索请求最匹配的数百个备选项,并输入给后续的精排模型再进行进一步地筛选排序,粗排模型与精排模型有着相似的功能,但精排模型的复杂度更高,结果也更加准确,因此,可以将精排模型输出的结果作为一种监督信号来辅助粗排模型的训练,以使结构更加简单的粗排模型输出的结果与精排模型输出的结果更接近,从而使粗排模型得到优化。
    3.现有技术中通常采用知识蒸馏的方案,将精排模型作为大模型,将粗排模型作为小模型,通过最小化粗排、精排模型输出结果的kl散度,来将精排模型的信息蒸馏到粗排模型中,但是由于知识蒸馏方案中所采用的kl散度假设表征中的每一维是独立的,而信息推荐领域的数据通常是高度结构化的,所以,现有的知识蒸馏的方案无法有效的捕获信息推荐领域的结构化的数据中包含的特征之间的交叉依赖关系。
    4.因此,如果能够使粗排模型更加有效的学习到精排模型的输出,将会对粗排模型的训练带来极大帮助。


    技术实现要素:

    5.本说明书提供一种模型训练的方法及装置,以部分的解决现有技术存在的上述问题。
    6.本说明书采用下述技术方案:
    7.本说明书提供了一种模型训练的方法,包括:
    8.获取各正样本以及各负样本,其中,所述正样本是基于预设的精排模型确定出的每个目标样本对应的预测点击率筛选出的,所述负样本为所述各目标样本中除所述正样本以外的其他样本,所述各目标样本是将各初始训练样本输入到预设的粗排模型后,基于所述粗排模型确定出的每个初始训练样本对应的预测点击率筛选出的;
    9.针对每个正样本,确定所述粗排模型针对该正样本确定出的特征向量,作为该正样本对应的粗排特征向量,以及确定精排模型针对该正样本确定出的特征向量,作为该正样本对应的精排特征向量,以及针对每个负样本,确定所述粗排模型针对该负样本确定出的特征向量,作为该负样本对应的粗排特征向量;
    10.以该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的相似度,相比于该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度越大为优化目标,对所述粗排模型进行训练。
    11.可选地,以该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的
    相似度,相比于该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量越大为优化目标,具体包括:
    12.根据该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的相似度,以及该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度,确定对比损失,其中,若该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的相似度,相比于该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度越大,所述对比损失越小;
    13.以最小化所述对比损失为优化目标,对所述粗排模型进行训练。
    14.可选地,以最小化所述对比损失为优化目标,对所述粗排模型进行训练之前,所述方法还包括:
    15.根据该正样本对应的精排特征向量与该正样本对应的粗排特征向量,确定该正样本对应的互信息度,其中,若所述互信息度越小,该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的关联程度越大;
    16.以最小化所述对比损失为优化目标,对所述粗排模型进行训练,具体包括:
    17.以最小化所述对比损失的同时,所述互信息度不大于所述对比损失为优化目标,对所述粗排模型进行训练。
    18.可选地,以最小化所述对比损失为优化目标,对所述粗排模型进行训练,具体包括:
    19.针对每个负样本,根据所述粗排模型确定的该正样本对应的预测点击率以及该负样本对应的预测点击率,确定该正样本对应的成对损失,其中,若该正样本对应的预测点击率相比于该负样本对应的预测点击率越大,该正样本对应的成对损失越小;
    20.根据所述成对损失以及所述对比损失,确定损失和值;
    21.以最小化所述损失和值为优化目标,对所述粗排模型进行训练。
    22.本说明书提供了一种信息推荐的方法,包括:
    23.响应于用户的信息推荐请求,获取各候选推荐信息;
    24.针对每个候选推荐信息,将该候选推荐信息输入到预先训练的粗排模型中,以通过所述粗排模型,确定该候选推荐信息对应的预测点击率,其中,所述粗排模型是通过上述模型训练的方法训练得到的;
    25.根据每个候选推荐信息对应的预测点击率,确定向所述用户推荐的目标推荐信息,并将所述目标推荐信息发送给所述用户。
    26.可选地,根据每个候选推荐信息对应的预测点击率,确定向所述用户推荐的目标推荐信息,具体包括:
    27.根据每个候选推荐信息对应的预测点击率,从所述各候选推荐信息中筛选出各初筛推荐信息;
    28.针对每个初筛推荐信息,将该初筛推荐信息输入到预设的精排模型中,以通过所述精排模型,确定出该初筛推荐信息对应的预测点击率;
    29.根据每个初筛推荐信息对应的预测点击率,确定向所述用户推荐的目标推荐信息。
    30.本说明书提供了一种模型训练的装置,包括:
    31.获取模块,用于获取各正样本以及各负样本,其中,所述正样本是基于预设的精排模型确定出的每个目标样本对应的预测点击率筛选出的,所述负样本为所述各目标样本中除所述正样本以外的其他样本,所述各目标样本是将各初始训练样本输入到预设的粗排模型后,基于所述粗排模型确定出的每个初始训练样本对应的预测点击率筛选出的;
    32.确定模块,用于确定所述粗排模型针对该正样本确定出的特征向量,作为该正样本对应的粗排特征向量,以及确定精排模型针对该正样本确定出的特征向量,作为该正样本对应的精排特征向量,以及针对每个负样本,确定所述粗排模型针对该负样本确定出的特征向量,作为该负样本对应的粗排特征向量;
    33.执行模块,用于以该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的相似度,相比于该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度越大为优化目标,对所述粗排模型进行训练。
    34.本说明书提供了一种信息推荐的装置,包括:
    35.获取模块,用于响应于用户的信息推荐请求,获取各候选推荐信息;
    36.预测模块,用于针对每个候选推荐信息,将该候选推荐信息输入到预先训练的粗排模型中,以通过所述粗排模型,确定该候选推荐信息对应的预测点击率,其中,所述粗排模型是通过上述模型训练的方法训练得到的;
    37.推荐模块,用于根据每个候选推荐信息对应的预测点击率,确定向所述用户推荐的目标推荐信息,并将所述目标推荐信息发送给所述用户。
    38.本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述模型训练的方法。
    39.本说明书提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述模型训练的方法。
    40.本说明书采用的上述至少一个技术方案能够达到以下有益效果:
    41.在本说明书提供的模型训练的方法,首先获取各正样本以及各负样本,其中,正样本是基于预设的精排模型确定出的每个目标样本对应的预测点击率筛选出的,负样本为各目标样本中除正样本以外的其他样本,各目标样本是将各初始训练样本输入到预设的粗排模型后,基于粗排模型确定出的每个初始训练样本对应的预测点击率筛选出的,进而,针对每个正样本,确定粗排模型针对该正样本确定出的特征向量,作为该正样本对应的粗排特征向量,以及确定精排模型针对该正样本确定出的特征向量,作为该正样本对应的精排特征向量,以及针对每个负样本,确定粗排模型针对该负样本确定出的特征向量,作为该负样本对应的粗排特征向量,并以该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的相似度,相比于该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度越大为优化目标,对粗排模型进行训练。
    42.从上述方法中可以看出,在将粗排模型针对该正样本输出的粗排特征向量与精排模型针对该正样本输出的精排特征向量之间的相似度不断提高的过程中,可以使粗排模型在训练过程中能够学习到精排模型输出的精排特征向量的每一维特征之间的依赖关系,这样可以使得粗排模型部署在实际应用过程中,可以更为准确的提取出各推荐信息的特征,进而向用户推荐更为准确的信息。
    附图说明
    43.此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附图中:
    44.图1为本说明书中提供的一种模型训练的方法的流程示意图;
    45.图2为本说明书中提供的一种信息推荐的方法的流程示意图;
    46.图3为本说明书提供的一种模型训练的装置的示意图;
    47.图4为本说明书提供的一种信息推荐的装置的示意图;
    48.图5为本说明书提供的一种对应于图1的电子设备的示意图。
    具体实施方式
    49.为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书保护的范围。
    50.以下结合附图,详细说明本说明书各实施例提供的技术方案。
    51.图1为本说明书中提供的一种模型训练的方法的流程示意图,包括以下步骤:
    52.s101:获取各正样本以及各负样本,其中,所述正样本是基于预设的精排模型确定出的每个目标样本对应的预测点击率筛选出的,所述负样本为所述各目标样本中除所述正样本以外的其他样本,所述各目标样本是将各初始训练样本输入到预设的粗排模型后,基于所述粗排模型确定出的每个初始训练样本对应的预测点击率筛选出的。
    53.在各网站或应用(application,app)的搜索模块中,通常将搜索功能划分为四个阶段,即,召回、粗排、精排、重排,其中,通过粗排阶段的粗排模型可以根据用户发出的信息推荐请求,将召回阶段召回的上千个候选推荐信息中筛选出几百个并将其排序后输入到精排模型中,从而实现粗排模型对用户的信息推荐请求的响应,而在此之前,需要先对粗排模型进行训练,才可以实现上述功能,因此,需要先选取各初始训练样本,通过各初始训练样本对模型进行训练。例如:假设需要对外卖平台的搜索模块中的粗排模型进行训练时,可以选取召回阶段召回的符合用户发送的历史信息推荐请求的各商家信息作为各初始训练样本,通过将各初始训练样本,对粗排模型进行训练。
    54.进一步地,将各初始训练样本输入到粗排模型中,针对各初始训练样本,通过粗排模型预测出该初始训练样本对应的预测点击率,从而按照每个初始训练样本对应的预测点击率的大小,将各初始训练样本进行排序,进而筛选出概率值高于第一预设阈值的初始训练样本,作为目标样本。
    55.在本说明书中,为了能够更好的对粗排模型进行训练,并使训练出的模型有更好的泛化能力,还需要将各目标样本分为正样本和负样本,利用正样本和负样本之间的差异性,使粗排模型能够通过将正样本与负样本进行对比的方式,更好的学习到精排模型的输出结果。
    56.其中,正样本的确定方式是通过将各目标样本输入到精排模型中,并根据精排模型输出的每个目标样本对应的预测点击率,筛选出点击率高于第二预设阈值的各目标样
    本,作为正样本,并将各目标样本中除所述正样本以外的其他样本,作为负样本。
    57.可以理解为,将粗排模型从各初始训练样本中筛选出的各目标样本输入给精排模型,并由精排模型从各目标样本中筛选出各正样本,进而将精排模型从各目标样本中筛选掉的目标样本作为负样本。换个角度来说,正样本可以理解成是粗排模型和精排模型均筛选出的,而负样本则是粗排模型筛选出,但是精排模型未筛选出的样本。
    58.在本说明书中,用于实现模型训练的方法的执行主体,可以是指服务器等设置于业务平台的指定设备,也可以是指诸如台式电脑、笔记本电脑等指定设备,为了便于描述,下面仅以服务器是执行主体为例,对本说明书提供的排序模型的训练方法进行说明。
    59.s102:针对每个正样本,确定所述粗排模型针对该正样本确定出的特征向量,作为该正样本对应的粗排特征向量,以及确定精排模型针对该正样本确定出的特征向量,作为该正样本对应的精排特征向量,以及针对每个负样本,确定所述粗排模型针对该负样本确定出的特征向量,作为该负样本对应的粗排特征向量。
    60.在实际应用中,由于粗排模型和精排模型是先针对输入的各训练样本,编码生成每个训练样本对应的特征向量,而后根据每个训练样本对应的特征向量,预测出该训练样本对应的预测点击率,并最终基于预测点击率对各训练样本进行筛选的,因此,为了使粗排模型能够更好的学习到精排模型的能力,使得粗排模型最终得到的输出结果与精排模型的输出结果之间的差异在一定程度上有所缩小,需要让粗排模型针对精排输出的针对正样本的特征向量进行学习,以使粗排模型针对正样本输出的该正样本对应的特征向量,能够与精排模型针对该正样本输出的该正样本对应的特征向量一致或近似。
    61.除此之外,由于信息推荐领域中的数据通常是高度结构化的,即,信息推荐领域中的数据对应的每一维特征之间具有高度的依赖关系,每一维特征之间都具有复杂的交叉关联关系,因此,在上述内容中,服务器通过将正样本对应精排特征向量与该正样本对应的粗排特征向量在整体上的相似度不断提高的方式,可以使得粗排模型在训练过程中能够学习到精排模型输出的精排特征向量中每一维特征之间的依赖关系。
    62.不仅如此,服务器还可以通过将该正样本对应的粗排特征向量与各负样本对应的粗排特征向量形成对比,来进一步地提高粗排模型的特征提取能力。换句话说,将负样本对应的粗排特征向量融入到整个训练过程中,实际上是让粗排模型能够更好的学习到正样本与负样本之间的区别,即更好的学习到精排模型区别正负样本的能力。
    63.具体地,服务器可以针对每个正样本,确定粗排模型针对该正样本输出的特征向量,作为该正样本对应的粗排特征向量,以及确定精排模型针对该正样本输出的特征向量,作为该正样本对应的精排特征向量,并针对每个负样本,确定粗排模型针对该负样本输出的特征向量,作为该负样本对应的粗排特征向量,以便后续可以根据确定出的各正样本对应的精排特征向量和粗排特征向量以及各负样本对应的粗排特征向量对粗排模型进行训练。
    64.s103:以该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的相似度,相比于该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度越大为优化目标,对所述粗排模型进行训练。
    65.服务器在确定各正样本对应的精排特征向量和粗排特征向量,以及各负样本对应的粗排特征向量之后,可以针对每个正样本,根据该正样本对应的精排特征向量和粗排特
    征向量之间的相似度,相比于该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度越大为优化目标,对粗排模型进行训练,从而使粗排模型能够学习到精排模型针对正样本的输出结果,进而使粗排模型能够输出与精排模型输出的结果近似或者一致的结果。
    66.具体地,服务器可以针对每个正样本,将该正样本对应的精排特征向量和粗排特征向量,组成正例对,并将该正样本对应的粗排特征向量和任意一个负样本对应的粗排特征向量,组成一个负例对,进一步地,确定出该正例对包含的两个特征向量之间的相似度,以及确定出各负例对包含的两个特征向量之间的相似度。
    67.其中,正例对或负例对包含的两个特征向量之间的相似度的确定方法可以有很多种,本说明书对此不进行限定,例如:计算正例对或负例对包含的两个特征向量的向量点积,并根据计算出向量点积,确定出相应的相似度。再例如:通过计算正例对或负例对包含的两个特征向量之间的夹角对应的余弦值,来确定两个特征向量之间的相似度越高。
    68.在本说明书中,服务器还可以针对每个正样本,根据该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的相似度,以及该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度,确定粗排模型与精排模型的对比损失,当确定出的对比损失越小时,该正样本对应的精排特征向量与粗排特征向量之间的相似度,相比于该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度越大,因此,服务器可以以最小化所述对比损失为优化目标,对所述粗排模型进行训练,其中,对比损失的计算方法可以参考如下公式:
    [0069][0070]
    上述公式中,q是指历史信息推荐请求集,q是指数据集中的一个用户的历史信息推荐请求,{(x0,y0)|y0=1}代表该历史信息推荐请求下正样本,{(x1,y1),(x2,y2),

    ,(xk,yk)|y
    1,2,

    ,k
    =0}代表该历史信息推荐请求下对应的k个负样本,为训练样本x0对应的粗排特征向量,为训练样本x0对应的精排特征向量,代表正样本x0对应的粗排特征向量和精排特征向量的向量点积。
    [0071]
    通过上述公式可以看出,正样本x0对应的粗排特征向量和精排相似度越高,正样本x0对应的粗排特征向量和精排特征向量之间的向量点积越大,而正样本x0对应的粗排特征向量和精排特征向量之间的向量点积相比于正样本x0对应的粗排特征向量和各负样本对应的粗排特征向量的向量点积则越大,对应损失l
    ckt
    越小。
    [0072]
    进一步地,对上述内容进行分析可以看出,最小化对比损失本质上可以理解为最大化正样本对应的粗排特征向量和精排特征向量之间的一致性,而互信息用于表征两个特征向量之间的相互的依赖程度(互信息即为两个特征向量之间的相对熵,两个特征向量之间的互信息越高,当确定一个特征向量之后,对另一个特征向量的不确定程度越低,可以理解为,当确定了一个特征向量之后,基本上就可以确定另一个特征向量了),若两个特征向量之间的互信息越大,则两个特征向量之间的依赖程度越高。因此,最大化正样本对应的粗排特征向量和精排特征向量之间的相似度,则可以等价于最大化正样本对应的粗排特征向
    量和精排特征向量之间互信息,相应的,可以将正样本对应的粗排特征向量和精排特征向量之间的互信息作为该对比损失的下界,对粗排模型进行训练,具体可以参考如下公式:
    [0073][0074]
    上述公式中,表示正样本x0对应的粗排特征向量和精排特征向量的互信息,表示正样本x0对应的粗排特征向量和精排特征向量的互信息度,其中,若是正样本x0对应的粗排特征向量和精排特征向量的互信息越大,正样本x0对应的粗排特征向量和精排特征向量的互信息度越小,n是自然数。
    [0075]
    通过上述公式可以看出,当最小化正样本x0对应的粗排特征向量和精排特征向量的互信息度时,正样本x0对应的互信息越大,正样本x0对应的粗排特征向量和精排特征向量的对比损失的下界越小,因此,服务器可以以最小化所述对比损失的同时,以互信息度不大于对比损失为优化目标,对粗排模型进行训练。这样可以在完成粗排模型的训练后,针对同一个训练样本,粗排模型提取出的特征向量与精排模型提取出的特征向量能够在最大程度上相接近。
    [0076]
    在本说明书中,为了使粗排模型能够得到更好的训练效果,在以最小化对比损失为训练目标的基础上,服务器还可以针对每个负样本,根据粗排模型确定的该正样本对应的预测点击率以及该负样本对应的预测点击率,确定该正样本对应的成对损失(pairwise loss),其中,若该正样本对应的预测点击率相比于该负样本对应的预测点击率越大,该正样本对应的成对损失越小,成对损失的计算方法可以参考如下公式:
    [0077][0078]
    上述公式中,l
    pair
    为成对损失,σ为超参数,si正样本对应的预测点击率,sj为负样本对应的预测点击率,从上述公式中可以看出,当正样本对应的预测点击率相比于该负样本对应的预测点击率越大,该正样本对应的成对损失越小。
    [0079]
    进一步地,由于成对损失是针对于一个正样本和一个负样本计算的损失,而对比损失则是针对一个正样本和多个负样本计算的损失,因此,服务器可以根据成对损失以及对比损失,确定损失和值,并最小化损失和值为优化目标,对粗排模型进行训练,具体可以参考如下公式:
    [0080]
    l=λl
    pair
    +(1-λ)l
    ckt
    [0081]
    上述公式中,λ为用于平衡两个损失的超参数,l
    pair
    为成对损失,l
    ckt
    为对比损失,l为损失和值,通过以最小化损失和值为优化目标,对粗排模型进行训练,可以使粗排模型能够更加全面的学习精排模型的输出结果,进而使粗排模型能够得到更好的训练效果。
    [0082]
    通过上述内容可以看出,服务器可以通过粗排模型从各初始训练样本中筛选出目标样本,并根据精排模型针对目标样本的筛选结果,从目标样本中确定出正样本以及负样本,从而以正样本对应的精排特征向量与粗排特征向量之间的相似度,相比于该正样本对
    应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度越大为训练目标,对粗排模型进行训练,进而可以优化粗排模型的性能,使粗排模型能够在针对同一个正样本时,输出与精排模型输出的结果近似或相同的结果。
    [0083]
    需要说明的是,本技术中所有获取信号、信息或数据的动作都是在遵照所在地国家相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。
    [0084]
    为了进一步地对本说明书进行说明,下面详细描述通过上述方法训练得到的粗排模型,进行信息推荐的方法,如图2所示。
    [0085]
    图2为本说明书中提供的一种信息推荐的方法的流程示意图,包括一下步骤:
    [0086]
    s201:响应于用户的信息推荐请求,获取各候选推荐信息。
    [0087]
    在本说明书中,服务器可以响应于用户的信息推荐请求,通过召回阶段对应的召回模型,根据用户发送的信息推荐请求,召回各候选推荐信息,例如:当用户在视频业务平台所提供的应用(application,app)中发出推荐电影的信息推荐请求时,服务器可以通过召回模型,根据用户的信息推荐请求,从预设的数据库中选取可能被用户点击的各电影的信息,作为各候选推荐信息。
    [0088]
    s202:针对每个候选推荐信息,将该候选推荐信息输入到预先训练的粗排模型中,以通过所述粗排模型,确定该候选推荐信息对应的预测点击率,其中,所述粗排模型是通过上述模型训练的方法训练得到的。
    [0089]
    s203:根据每个候选推荐信息对应的预测点击率,确定向所述用户推荐的目标推荐信息,并将所述目标推荐信息发送给所述用户
    [0090]
    服务器在获取到各候选推荐信息后,可以将每个候选推荐信息输入到通过上述方法训练得到的粗排模型中,以使粗排模型根据用户发送的信息推荐请求,预测出各候选推荐信息对应的预测点击率,并将预测点击率超过预设阈值的各候选推荐信息返回,服务器在接收到粗排模型返回的各候选推荐信息时,可以直接将该候选推荐信息推荐给用户。
    [0091]
    在本说明书中,考虑到由于粗排模型本身的结构的限制导致的粗排模型与精排模型针对同一候选推荐信息输出的结果之间可能具有的偏差,即,训练后的粗排模型的输出结果只是与精排模型的输出结果近似,而不能达到完全一致。
    [0092]
    因此,服务器在接收到粗排模型返回的各候选推荐信息时,还可以将粗排模型输出的各候选推荐信息,作为各初筛推荐信息,并将各初筛推荐信息输入到预设的精排模型中,以使所述精排模型针对每个初筛推荐信息,预测出该初筛推荐信息对应的预测点击率,从而将预测点击率超过预设阈值的各初筛推荐信息作为各目标推荐信息并返回,服务器在接收到精排模型返回的各目标推荐信息后,可以将各目标推荐信息推荐给用户。
    [0093]
    以上为本说明书的一个或多个实施例提供的模型训练的方法以及信息推荐的方法,基于同样的思路,本说明书还提供了相应的模型训练的装置,以及信息推荐的装置,如图3、4所示。
    [0094]
    图3为本说明书提供的一种模型训练的装置的示意图,包括:
    [0095]
    获取模块301,用于获取各正样本以及各负样本,其中,所述正样本是基于预设的精排模型确定出的每个目标样本对应的预测点击率筛选出的,所述负样本为所述各目标样本中除所述正样本以外的其他样本,所述各目标样本是将各初始训练样本输入到预设的粗
    排模型后,基于所述粗排模型确定出的每个初始训练样本对应的预测点击率筛选出的;
    [0096]
    确定模块302,用于确定所述粗排模型针对该正样本确定出的特征向量,作为该正样本对应的粗排特征向量,以及确定精排模型针对该正样本确定出的特征向量,作为该正样本对应的精排特征向量,以及针对每个负样本,确定所述粗排模型针对该负样本确定出的特征向量,作为该负样本对应的粗排特征向量;
    [0097]
    执行模块303,用于以该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的相似度,相比于该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度越大为优化目标,对所述粗排模型进行训练。
    [0098]
    可选地,所述执行模块303具体用于,根据该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的相似度,以及该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度,确定对比损失,其中,若该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的相似度,相比于该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度越大,所述对比损失越小;以最小化所述对比损失为优化目标,对所述粗排模型进行训练。
    [0099]
    可选地,所述执行模块303具体用于,根据该正样本对应的精排特征向量与该正样本对应的粗排特征向量,确定该正样本对应的互信息度,其中,若所述互信息度越小,该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的关联程度越大;以最小化所述对比损失为优化目标,对所述粗排模型进行训练,具体包括:以最小化所述对比损失的同时,所述互信息度不大于所述对比损失为优化目标,对所述粗排模型进行训练。
    [0100]
    可选地,所述执行模块303具体用于,针对每个负样本,根据所述粗排模型确定的该正样本对应的预测点击率以及该负样本对应的预测点击率,确定该正样本对应的成对损失,其中,若该正样本对应的预测点击率相比于该负样本对应的预测点击率越大,该正样本对应的成对损失越小;根据所述成对损失以及所述对比损失,确定损失和值;以最小化所述损失和值为优化目标,对所述粗排模型进行训练。
    [0101]
    图4为本说明书提供的一种信息推荐的装置的示意图,包括:
    [0102]
    获取模块401,用于响应于用户的信息推荐请求,获取各候选推荐信息;
    [0103]
    预测模块402,用于针对每个候选推荐信息,将该候选推荐信息输入到预先训练的粗排模型中,以通过所述粗排模型,确定该候选推荐信息对应的预测点击率,其中,所述粗排模型是通过上述模型训练的方法训练得到的;
    [0104]
    推荐模块403,用于根据每个候选推荐信息对应的预测点击率,确定向所述用户推荐的目标推荐信息,并将所述目标推荐信息发送给所述用户。
    [0105]
    可选地,所述推荐模块403具体用于,根据每个候选推荐信息对应的预测点击率,从所述各候选推荐信息中筛选出各初筛推荐信息;针对每个初筛推荐信息,将该初筛推荐信息输入到预设的精排模型中,以通过所述精排模型,确定出该初筛推荐信息对应的预测点击率;根据每个初筛推荐信息对应的预测点击率,确定向所述用户推荐的目标推荐信息。
    [0106]
    本说明书还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图1提供的一种模型训练的方法。
    [0107]
    本说明书还提供了图5所示的一种对应于图1的电子设备的示意结构图。如图5所述,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,
    当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述图1所述的模型训练的方法。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
    [0108]
    在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(programmable logic device,pld)(例如现场可编程门阵列(field programmable gate array,fpga))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片pld上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(hardware description language,hdl),而hdl也并非仅有一种,而是有许多种,如abel(advanced boolean expression language)、ahdl(altera hardware description language)、confluence、cupl(cornell university programming language)、hdcal、jhdl(java hardware description language)、lava、lola、myhdl、palasm、rhdl(ruby hardware description language)等,目前最普遍使用的是vhdl(very-high-speed integrated circuit hardware description language)与verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
    [0109]
    控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(application specific integrated circuit,asic)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc 625d、atmel at91sam、microchip pic18f26k20以及silicone labs c8051f320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
    [0110]
    上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
    [0111]
    为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
    [0112]
    本领域内的技术人员应明白,本说明书的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
    [0113]
    本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
    [0114]
    这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
    [0115]
    这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
    [0116]
    在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
    [0117]
    内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
    [0118]
    计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
    [0119]
    还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
    ……”
    限定的要素,并不排除在包括所述要
    素的过程、方法、商品或者设备中还存在另外的相同要素。
    [0120]
    本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
    [0121]
    本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
    [0122]
    本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
    [0123]
    以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。

    技术特征:
    1.一种模型训练的方法,其特征在于,包括:获取各正样本以及各负样本,其中,所述正样本是基于预设的精排模型确定出的每个目标样本对应的预测点击率筛选出的,所述负样本为所述各目标样本中除所述正样本以外的其他样本,所述各目标样本是将各初始训练样本输入到预设的粗排模型后,基于所述粗排模型确定出的每个初始训练样本对应的预测点击率筛选出的;针对每个正样本,确定所述粗排模型针对该正样本确定出的特征向量,作为该正样本对应的粗排特征向量,以及确定精排模型针对该正样本确定出的特征向量,作为该正样本对应的精排特征向量,以及针对每个负样本,确定所述粗排模型针对该负样本确定出的特征向量,作为该负样本对应的粗排特征向量;以该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的相似度,相比于该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度越大为优化目标,对所述粗排模型进行训练。2.如权利要求1所述的方法,其特征在于,以该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的相似度,相比于该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量越大为优化目标,具体包括:根据该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的相似度,以及该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度,确定对比损失,其中,若该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的相似度,相比于该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度越大,所述对比损失越小;以最小化所述对比损失为优化目标,对所述粗排模型进行训练。3.如权利要求2所述的方法,其特征在于,以最小化所述对比损失为优化目标,对所述粗排模型进行训练之前,所述方法还包括:根据该正样本对应的精排特征向量与该正样本对应的粗排特征向量,确定该正样本对应的互信息度,其中,若所述互信息度越小,该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的关联程度越大;以最小化所述对比损失为优化目标,对所述粗排模型进行训练,具体包括:以最小化所述对比损失的同时,所述互信息度不大于所述对比损失为优化目标,对所述粗排模型进行训练。4.如权利要求2所述的方法,其特征在于,以最小化所述对比损失为优化目标,对所述粗排模型进行训练,具体包括:针对每个负样本,根据所述粗排模型确定的该正样本对应的预测点击率以及该负样本对应的预测点击率,确定该正样本对应的成对损失,其中,若该正样本对应的预测点击率相比于该负样本对应的预测点击率越大,该正样本对应的成对损失越小;根据所述成对损失以及所述对比损失,确定损失和值;以最小化所述损失和值为优化目标,对所述粗排模型进行训练。5.一种信息推荐的方法,其特征在于,包括:响应于用户的信息推荐请求,获取各候选推荐信息;针对每个候选推荐信息,将该候选推荐信息输入到预先训练的粗排模型中,以通过所
    述粗排模型,确定该候选推荐信息对应的预测点击率,其中,所述粗排模型是通过上述权利要求1~4任一项所述的方法训练得到的;根据每个候选推荐信息对应的预测点击率,确定向所述用户推荐的目标推荐信息,并将所述目标推荐信息发送给所述用户。6.如权利要求5所述的方法,其特征在于,根据每个候选推荐信息对应的预测点击率,确定向所述用户推荐的目标推荐信息,具体包括:根据每个候选推荐信息对应的预测点击率,从所述各候选推荐信息中筛选出各初筛推荐信息;针对每个初筛推荐信息,将该初筛推荐信息输入到预设的精排模型中,以通过所述精排模型,确定出该初筛推荐信息对应的预测点击率;根据每个初筛推荐信息对应的预测点击率,确定向所述用户推荐的目标推荐信息。7.一种模型训练的装置,其特征在于,包括:获取模块,用于获取各正样本以及各负样本,其中,所述正样本是基于预设的精排模型确定出的每个目标样本对应的预测点击率筛选出的,所述负样本为所述各目标样本中除所述正样本以外的其他样本,所述各目标样本是将各初始训练样本输入到预设的粗排模型后,基于所述粗排模型确定出的每个初始训练样本对应的预测点击率筛选出的;确定模块,用于确定所述粗排模型针对该正样本确定出的特征向量,作为该正样本对应的粗排特征向量,以及确定精排模型针对该正样本确定出的特征向量,作为该正样本对应的精排特征向量,以及针对每个负样本,确定所述粗排模型针对该负样本确定出的特征向量,作为该负样本对应的粗排特征向量;执行模块,用于以该正样本对应的精排特征向量与该正样本对应的粗排特征向量之间的相似度,相比于该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度越大为优化目标,对所述粗排模型进行训练。8.一种信息推荐的装置,其特征在于,包括:获取模块,用于响应于用户的信息推荐请求,获取各候选推荐信息;预测模块,用于针对每个候选推荐信息,将该候选推荐信息输入到预先训练的粗排模型中,以通过所述粗排模型,确定该候选推荐信息对应的预测点击率,其中,所述粗排模型是通过上述权利要求1~4任一项所述的方法训练得到的;推荐模块,用于根据每个候选推荐信息对应的预测点击率,确定向所述用户推荐的目标推荐信息,并将所述目标推荐信息发送给所述用户。9.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1~6任一项所述的方法。10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述权利要求1~6任一项所述的方法。

    技术总结
    本说明书公开了一种模型训练的方法及装置,通过粗排模型从各初始训练样本中筛选出目标样本,并根据精排模型针对目标样本的筛选结果,从目标样本中确定出正样本以及负样本,从而以正样本对应的精排特征向量与粗排特征向量之间的相似度,相比于该正样本对应的粗排特征向量与任意一个负样本对应的粗排特征向量之间的相似度越大为训练目标,对粗排模型进行训练,从而可以使粗排模型在学习到精排模型的能力的同时,使粗排模型在训练过程中能够学习到精排模型输出的精排特征向量的每一维特征之间的依赖关系。之间的依赖关系。之间的依赖关系。


    技术研发人员:曹越 周晓江 黄培浩 肖垚 陈达遥 陈胜
    受保护的技术使用者:北京三快在线科技有限公司
    技术研发日:2022.02.15
    技术公布日:2022/5/25
    转载请注明原文地址:https://tc.8miu.com/read-15329.html

    最新回复(0)