一种基于多任务预测的确定推荐对象的方法及系统与流程

专利2022-06-29  61


本说明书实施例涉及计算机技术领域,特别涉及一种基于多任务预测的确定推荐对象的方法及系统。



背景技术:

目前,越来越多的网络平台利用推荐系统给用户推荐符合用户兴趣的对象(例如商品、短视频等)。在实际应用中,推荐系统可能需要同时优化多个目标任务。例如,用户的点击率和平台的成交总额。因此,有必要提出一种基于多任务预测的确定推荐对象的方法及系统,以提高多个任务的综合完成度。



技术实现要素:

本说明书实施例的一个方面提供一种基于多任务预测的确定推荐对象的方法,包括:获取目标用户的用户特征和至少一个候选对象的对象特征;利用推荐模型对所述至少一个候选对象中的每一个进行以下处理,以得到至少一个决策值:通过推荐模型处理所述用户特征和所述对象特征,确定与该候选对象对应的两个或以上的预测值;其中,所述两个或以上的预测值与两个或以上的预设任务分别相关,所述两个或两个以上的预设任务与目标任务相关;基于所述两个或以上的预测值,确定与该候选对象对应的决策值,其中,决策值反映所述目标任务的完成度;以及,基于所述至少一个决策值,从所述至少一个候选对象中确定向所述目标用户推荐的目标对象。

本说明书实施例的一个方面提供一种基于多任务预测的确定推荐对象的系统,包括:特征获取模块,用于获取目标用户的用户特征和至少一个候选对象的对象特征;决策值确定模块,用于利用推荐模型对所述至少一个候选对象中的每一个进行以下处理,以得到至少一个决策值:通过推荐模型处理所述用户特征和所述对象特征,确定与该候选对象对应的两个或以上的预测值;其中,所述两个或以上的预测值与两个或以上的预设任务分别相关,两个或两个以上的预设任务与目标任务相关;基于所述两个或以上的预测值,确定与该候选对象对应的决策值,其中,决策值反映所述目标任务的完成度;目标对象确定模块,用于基于所述至少一个决策值,从所述至少一个候选对象中确定向所述目标用户推荐的目标对象。

本说明书实施例的一个方面提供一种基于多任务预测的确定推荐对象的装置,包括处理器,所述处理器用于执行如上所述的一种基于多任务预测的确定推荐对象的方法。

本说明书实施例的一个方面提供一种基于多任务预测的推荐模型的训练方法,包括:获取多个携带有标签的训练样本;其中,所述训练样本包括样本用户特征和样本对象特征,所述标签用于表征目标任务的完成度;基于多个训练样本迭代更新初始推荐模型的参数以减小各训练样本对应的损失函数值,得到训练好的推荐模型;其中,各训练样本对应的损失函数值通过以下过程确定:通过推荐模型处理样本用户特征和样本对象特征,获取两个或以上的预测值以及基于所述两个或以上的预测值确定决策值;其中,所述两个或以上的预测值与两个或以上的预设任务分别相关,所述两个或以上的预设任务与目标任务相关;至少基于所述决策值及该训练样本对应的标签之间的差异,确定该训练样本对应的损失函数值。

本说明书实施例的一个方面提供一种基于多任务预测的推荐模型的训练系统,包括:训练样本获取模块,用于获取多个携带有标签的训练样本;其中,所述训练样本包括样本用户特征和样本对象特征,所述标签用于表征目标任务的完成度;参数调整模块,用于基于多个训练样本迭代更新所述初始推荐模型的参数以减小各训练样本对应的损失函数值,得到训练好的推荐模型;其中,各训练样本对应的损失函数值通过以下过程确定:通过推荐模型处理样本用户特征和样本对象特征,获取两个或以上的预测值以及基于所述两个或以上的预测值确定决策值;其中,所述两个或以上的预测值与两个或以上的预设任务分别相关,所述两个或以上的预设任务与所述目标任务相关;至少基于所述决策值及该训练样本对应的标签之间的差异,确定该训练样本对应的损失函数值。

本说明书实施例的一个方面提供一种基于多任务预测的推荐模型的训练装置,包括处理器,所述处理器用于执行如上所述的一种基于多任务预测的推荐模型的训练方法。

附图说明

本说明书将以示例性实施例的方式进一步描述,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:

图1是根据本说明书的一些实施例所示的基于多任务预测的确定推荐对象的系统的应用场景示意图;

图2是根据本说明书的一些实施例所示的基于多任务预测的确定推荐对象的方法的流程图;

图3是根据本说明书的一些实施例所示的推荐模型的结构示意图;

图4是根据本说明书的一些实施例所示的基于多任务预测的推荐模型的训练方法的流程图;

图5是根据本说明书的一些实施例所示的通过连续点击事件产生多个训练样本的过程示意图;

图6是根据本说明书的一些实施例所示的基于多任务预测的确定推荐对象的系统的模块图;

图7是根据本说明书的一些实施例所示的基于多任务预测的推荐模型的训练系统的模块图。

具体实施方式

为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。

应当理解,本说明书中所使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。

如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。

本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。

图1是根据本说明书的一些实施例所示的基于多任务预测的确定推荐对象的系统的应用场景示意图。

如图1所示,基于多任务预测的确定推荐对象系统100可以包括处理设备110、网络120以及用户终端130。

处理设备110可用于处理与确定推荐的目标对象相关联的信息和/或数据来执行在本说明书中揭示的一个或者多个功能。在一些实施例中,处理设备110可以用于获取目标用户的用户特征和至少一个候选对象的对象特征。在一些实施例中,处理设备110可以利用推荐模型对至少一个候选对象中的每一个进行处理,得到至少一个决策值。在一些实施例中,处理设备110可以基于至少一个决策值,从至少一个候选对象中确定向所述目标用户推荐的目标对象。在一些实施例中,处理设备110可以包括一个或多个处理引擎(例如,单核心处理引擎或多核心处理器)。仅作为范例,处理设备110可以包括中央处理器(中央处理器)、特定应用集成电路(asic)、专用指令集处理器(asip)、图像处理器(gpu)、物理运算处理单元(ppu)、数字信号处理器(dsp)、现场可程序门阵列(fpga)、可程序逻辑装置(pld)、控制器、微控制器单元、精简指令集计算机(risc)、微处理器等中的一种或多种组合。

网络120可以促进信息和/或数据的交换。在一些实施例中,基于多任务预测的确定推荐对象系统100的一个或者多个组件(例如处理设备110、用户终端130)可以通过网络120传送信息至基于多任务预测的确定推荐对象系统100的其他组件。例如,处理设备110可以通过网络120获取用户终端130产生的用户特征。又例如,用户终端130可以通过网络120获取处理设备110推荐的目标对象。在一些实施例中,网络120可以是任意形式的有线或者无线网络,或其任意组合。仅作为范例,网络120可以是有线网络、光纤网络、远程通信网络、内部网络、互联网、局域网(lan)、广域网(wan)、无线局域网(wlan)、城域网(man)、广域网(wan)、公共交换电话网络(pstn)、蓝牙网络等中的一种或多种组合。

用户终端130可以是带有数据获取、存储和/或发送功能的设备。在一些实施例中,用户终端130的使用者可以是使用应用平台的在线服务的用户。在一些实施例中,用户终端130可以包括但不限于移动设备130-1、平板电脑130-2、笔记本电脑130-3、台式电脑130-4等或其任意组合。示例性的移动设备130-1可以包括但不限于智能手机、个人数码助理(personaldigitalassistance,pda)、掌上游戏机、智能手表、可穿戴设备、虚拟显示设备、显示增强设备等或其任意组合。在一些实施例中,用户终端130可以将获取到的数据发送至基于多任务预测的确定推荐对象系统100中的一个或多个设备。例如,用户终端130可以将获取到的数据传输至处理设备110。在一些实施例中,用户终端130获取到的数据可以是用户在用户终端130产生的用户特征数据。

本说明书实施例所披露的技术方案可以应用于对象推荐的场景。基于不同的应用平台所具备的不同业务,可以向用户进行不同的对象推荐。仅作为示例,在一些场景中,应用平台会向用户发放一定的用户权益(包括但不限于现金红包、优惠券、津贴),进而拉动消费。例如,具备金融业务的应用平台利用推荐模型向用户推荐现金红包,使得用户可以利用点击获取的现金红包购买理财产品。又例如,具备移动支付业务的应用平台利用推荐模型向用户推荐津贴,使得用户可以利用点击的购物津贴进行线上或线下购物。向特定的用户发放(或推荐)适当的用户权益,能够为平台的整体收益带来更大的贡献。如何确定向用户推荐的用户权益成为亟待解决的问题。

在一些实施例中,当应用平台利用推荐模型进行对象推荐时,可能会预设多个任务,例如提高点击率、转化率和/或平台成交额,此时,推荐模型为多任务模型。当然,应用平台希望通过向用户推荐合适的对象,从而提高这些任务的综合完成度。

仅作为示例,若多任务模型的预设多个任务分别为主任务1和附属任务2,其中,主任务1可以是优化点击率任务,附属任务2可以是优化gmv(即平台成交额)任务。则多任务模型的训练方式可以为:针对每个任务分别构造损失函数,利用有监督学习的思想训练双塔模型,共同调整模型的共享层参数(例如双塔模型共享的嵌入层参数)。然而,该种训练方式可能存在以下特点:附属任务2的训练样本不足,如平台成交额的数值分散,导致每种平台成交额对应的样本不足,导致共享层参数劣化,影响模型的预测精度。

因此,本说明书实施例披露了一种基于多任务预测的确定推荐对象的方法,利用强化学习的思想将推荐模型作为执行体网络,执行不同预设任务的预测,并基于预测结果确定决策值,该决策值反映基于不同预设任务的预测结果确定的目标任务的完成度,将gmv作为与目标任务完成度对应的奖励来考虑,这样既避免了gmv预测网络对点击率预测网络的干扰,保证了点击率优化的效果,又对gmv进行了优化。以下结合附图,以用户权益推荐为例对本说明书所披露的技术方案进行详细阐述。应当理解,本说明书所披露的对象推荐方法以及推荐模型可以用于其他基于多任务向用户进行对象推荐的场景,例如导航系统中向用户推荐行驶路径等等。

图2是根据本说明书的一些实施例所示的基于多任务预测的确定推荐对象的方法的流程图。

步骤202,获取目标用户的用户特征和至少一个候选对象的对象特征。

在一些实施例中,该步骤可以由特征获取模块610执行。

在一些实施例中,目标用户可以是使用应用平台的在线服务的用户。例如,使用移动支付平台的在线交易服务的用户。又例如,使用电商平台的在线购物服务的用户。

在一些实施例中,候选对象可以为用户权益。在一些实施例中,用户权益可以是指应用平台向用户提供的优惠。例如,平台向用户提供的现金红包、优惠券、津贴等。在实际应用中,应用平台可以根据其包括的业务向用户提供不同的用户权益。例如,应用平台包括话费充值业务,则可以提供话费权益,即关于充值话费的现金红包或优惠券。又例如,应用平台包括理财业务,则可以提供理财权益,即关于购买不同理财产品的现金红包或优惠券,例如10元的保险现金红包、2元的基金红包等。可以理解的,用户权益的存在可以在一定程度上引导用户在应用平台进行消费,进而为平台的整体收益做出贡献。

在一些实施例中,用户特征至少反映目标用户的个人属性以及历史消费行为。在一些实施例中,反映目标用户的个人属性的用户特征可以包括目标用户的收入、年龄以及职业信息。在一些实施例中,历史消费行为可以是指目标用户在一个或多个应用平台上的历史消费行为。在一些实施例中,历史消费行为可以包括目标用户历史点击的用户权益和/或目标用户历史购买的商品。例如目标用户历史点击获取的现金红包,和/或,例如目标用户历史购买的理财产品、实体商品等。

在一些实施例中,对象特征至少反映候选对象的成本信息。在一些实施例中,成本信息可以包括约束成本,即应用平台向用户提供用户权益所需要的成本。在一些实施例中,对象特征还可以反映用户权益的分类属性。在一些实施例中,分类属性可以包括用户权益的id信息、类目信息等。所述类目信息可以包括现金红包、折扣券等权益类型。

在一些实施例中,特征获取模块610可以从用户终端130或存储设备中获取反映目标用户的个人属性的用户特征。在一些实施例中,特征获取模块610可以从购物日志或存储设备中获取反映目标用户的历史消费行为的用户特征。在一些实施例中,特征获取模块610可以从存储设备中获取候选对象的对象特征。

步骤204,通过推荐模型处理所述用户特征和所述对象特征,确定与所述候选对象对应的两个或以上的预测值;其中,所述两个或以上的预测值与两个或以上的预设任务分别相关,所述两个或以上的预设任务与目标任务相关。

在一些实施例中,该步骤可以由决策值确定模块620执行。

在一些实施例中,推荐模型可以是预先训练好的机器学习模型。训练好的推荐模型可以对至少一个候选对象中的每一个进行处理,得到与至少一个候选对象对应的两个或以上的预测值。关于推荐模型的训练过程可以参见图4及其相关描述,在此不再赘述。

在一些实施例中,两个或以上的预测值与两个或以上的预设任务分别相关。这里的预设任务可以基于目标任务进行设定。在一些实施例中,目标任务可以是增加平台的整体收益,因此,两个或以上的预设任务可以包括点击率预测任务和gmv(即平台成交额)预测任务。可以理解,点击率与平台成交额都会影响着最终目标的实现。如此处所述的,两个或以上的预测值可以包括第一预测值以及第二预测值。在一些实施例中,第一预测值可以反映目标用户点击候选对象的概率。其中,“点击”可以理解为用户接收该候选对象。示例地,若候选对象为支付宝平台提供的“10元的保险现金红包”,则第一预测值可以是与目标用户点击该现金红包的概率相关的数值。在一些实施例中,第二预测值可以反映目标用户通过该候选对象产生的消费金额。可以理解,用户权益在用户进行实际消费时才会产生效力,即,用户通过使用用户权益时会带来消费金额。然而,平台并不能提前获知用户通过该用户权益能够产生多少消费金额,因此,推荐模型的另一预设任务在于预测目标用户通过该候选对象产生的消费金额。仍以上述候选对象为“10元的保险现金红包”为例,若推荐模型预测目标用户会使用该现金红包在支付宝平台购买价值200元的保险,则第二预测值为200。

在其他一些实施例中,预设任务还可以包括其他与最终目标相关的任务,本说明书对预设任务的数量以及类型不做限制。

步骤206,基于所述两个或以上的预测值,确定与候选对象对应的决策值,其中,决策值反映所述目标任务的完成度。

在一些实施例中,该步骤可以由决策值确定模块620执行。

在一些实施例中,可以基于每个候选对象的两个或以上的预测值确定其对应的决策值。决策值可以反映目标任务的完成度。示例地,仍以上述两个或以上的预设任务为点击率预测任务和gmv预测任务为例,则决策值可以反映基于点击率预测结果与gmv预测结果确定的推荐该候选对象对增加平台整体收益这一最终目标的完成度。

在一些实施例中,决策值与第一预测值和/或第二预测值正相关。可以理解的,第一预测值和/或第二预测值越大,则决策值越大。在一些实施例中,可以通过公式(1)确定决策值

(1)

其中,为决策值,为第二预测值,为第一预测值。由于目标用户通过候选对象所产生的消费金额可能差异较大,因此,第二预测值的范围可能较大。通过对第二预测值进行求对数处理,可以将第二预测值的范围缩小,从而便于推荐模型的训练。

步骤208,基于至少一个决策值,从所述至少一个候选对象中确定向所述目标用户推荐的目标对象。

具体的,该步骤可以由目标对象确定模块630执行。

在一些实施例中,目标对象确定模块630可以将决策值进行排序,从至少一个候选对象中选取排名前预设名次的候选对象确定为目标对象。其中,预测名次可以根据实际需求进行具体设置。例如,5、8或10等。在一些实施例中,目标对象确定模块630可以将最高的决策值所对应的候选对象确定为目标对象。

本说明书实施例利用强化学习的思想,将推荐模型作为执行体网络,基于第一预测值和/或第二预测值确定决策值(即奖励值),基于决策值选取最优的候选对象推荐给目标用户。可以同时优化点击率和gmv,即既提升了用户的满意度又提升了应用平台的成交额。

图3是根据本说明书的一些实施例所示的推荐模型的结构示意图。

在一些实施例中,可以基于预设任务以及预设任务与决策值的关系构建推荐模型。在一些实施例中,可以基于神经网络构建推荐任务。如图3所示,推荐模型可以包括嵌入层、特征交叉层、第一多层感知器、第二多层感知器以及输出层。

在一些实施例中,嵌入层可以用于将用户特征和对象特征转换为各自的向量表示。在一些实施例中,特征获取模块610获取的用户特征和对象特征可能为高维稀疏特征,通过嵌入层可以将高维稀疏特征映射为低维稠密特征,即转换后的向量表示维度下降。在一些实施例中,嵌入层可以包括tf-idf、word2vec网络或bert网络等。

在一些实施例中,特征交叉层用于对用户特征的向量表示和对象特征的向量表示进行特征融合处理,得到融合向量表示。在一些实施例中,特征交叉层可以包括wide&deep网络、deepfm网络或deepandcross网络。

在一些实施例中,第一多层感知器用于对融合向量表示进行处理,得到第一预测值。在一些实施例中,第二多层感知器用于对融合向量表示和第一预测值进行处理,得到第二预测值。

在一些实施例中,输出层用于对第一预测值和第二预测值进行决策值运算,输出决策值。关于决策值运算可以参见上述步骤206中对于公式(1)的细节描述,在此不再赘述。

图4是根据本说明书的一些实施例所示的基于多任务预测的推荐模型的训练方法的流程图。

步骤402,获取多个携带有标签的训练样本;其中,所述训练样本包括样本用户特征和样本对象特征,所述标签用于表征目标任务的完成度。

在一些实施例中,该步骤可以由训练样本获取模块710执行。

在一些实施例中,训练样本可以是输入至初始推荐模型中用于训练推荐模型的数据。在一些实施例中,训练样本包括样本用户特征和样本对象特征。在一些实施例中,样本用户特征至少反映样本用户的个人属性以及历史消费行为。在一些实施例中,个人属性包括以下至少之一:收入、年龄以及职业。在一些实施例中,历史消费行为包括样本用户历史点击的用户权益和/或样本用户历史购买的商品。在一些实施例中,样本对象可以为用户权益。在一些实施例中,样本对象特征至少反映样本对象的成本信息。关于训练样本的具体细节可以参见上述步骤202及其相关描述,在此不再赘述。

在一些实施例中,标签可以用于表征训练样本的某种真实信息。在一些实施例中,标签可以用于表征目标任务的完成度。由上述步骤204及其相关描述可知,两个或两个以上的预设任务可以为点击率预测任务和gmv(即平台成交额)预测任务。针对该两个或以上的预设任务,目标任务的完成度可以理解为用户点击候选对象并通过该候选对象进行消费这一事件对达成目标任务(增加平台整体收益)的贡献。因此,标签表征的完成度可以是指用户通过候选对象产生的实际消费金额,这一信息可以在用户历史消费行为中获知。不难理解,该标签在一定程度上也可以作为对用户点击候选对象并通过该候选对象进行消费这一事件的奖励。可以理解的,用户如果点击了候选对象,但并未完成购买,则此时用户通过该候选对象产生的实际消费金额为0,即标签为0。

在一些实施例中,可以通过人工标注的方式对训练样本进行标签标注。在一些实施例中,训练样本获取模块710可以从处理设备110的存储设备中获取训练样本。

在一些实施例中,训练样本可以来自不同样本用户对不同样本候选对象的点击事件,这些样本候选对象为平台历史推荐给用户的。在一些实施例中,一个训练样本可以来自单次点击事件。作为示例,平台向用户推荐了样本候选对象a、b、c,样本用户点击了样本候选对象a,并通过样本候选对象a产生了500元消费金额。基于此事件可以构造训练样本,包括该样本用户特征、样本候选对象a以及标签(或奖励值)500。

在一些实施例中,多个训练样本可以来自同一样本用户对同一样本候选对象的多次点击事件,或称为连续点击事件,这些训练样本可以看成具有一定的因果关联。仅作为示例,以样本对象为“10元的保险现金红包”为例,则连续点击事件可以是指用户多次点击该“10元的保险现金红包”,进行多次保险的购买。

参考图5可知,通过连续点击事件可以产生多个训练样本。对该多个训练样本分别进行标签标注后,可以得到多个携带有标签的训练样本。这些训练样本,与同一样本用户对同一样本对象的多次点击事件分别对应。示例地,样本用户1第一次点击样本对象1产生训练样本1,样本用户1第二次点击样本对象1产生训练样本2,样本用户1第三次点击样本对象1产生训练样本3,以此类推,样本用户1第n次点击样本对象1产生训练样本n。

步骤404,基于多个训练样本迭代更新初始推荐模型的参数以减小各训练样本对应的损失函数值,得到训练好的推荐模型。

在一些实施例中,该步骤可以由参数调整模块720执行。

在模型训练过程中,参数调整模块720会不断地基于多个训练样本更新初始推荐模型的参数。具体的,参数调整模块720会不断地调整初始推荐模型的参数,以减小各个训练样本对应的损失函数值,使得损失函数值满足预设条件。例如,损失函数值收敛,或损失函数值小于预设值。当损失函数满足预设条件时,模型训练完成,得到训练好的推荐模型。训练好的推荐模型可以基于目标用户的用户特征和至少一个候选对象的对象特征得到与至少一个候选对象对应的至少一个决策值,为目标用户推荐目标对象。

在一些实施例中,各训练样本对应的损失函数值可以通过以下过程确定:通过推荐模型处理样本用户特征和样本对象特征,获取两个或以上的预测值以及基于两个或以上的预测值确定决策值;其中,两个或以上的预测值与两个或以上的预设任务分别相关,两个或以上的预设任务与目标任务相关;至少基于决策值及该训练样本对应的标签之间的差异,确定该训练样本对应的损失函数值。

在一些实施例中,两个或以上的预测值包括第一预测值以及第二预测值,其中,第一预测值反映样本用户点击该样本对象的概率,第二预测值反映样本用户通过该样本对象产生的消费金额。关于决策值、第一预测值以及第二预测值的具体细节可以参见步骤206及其相关描述,在此不再赘述。

在一些实施例中,训练样本可以是通过单次点击事件而产生的样本。针对通过单次点击事件产生的训练样本,可以通过上述基于决策值及该训练样本对应的标签之间的差异,确定该训练样本对应的损失函数值。具体的,可以通过公式(2)确定训练样本对应的损失函数值

(2)

其中,为损失函数值,为模型计算得到的该训练样本的决策值,y为训练样本的标签值。

在一些实施例中,训练样本可以是通过连续点击事件而产生的样本。

针对连续点击事件产生的至少一个训练样本中的每一个,至少基于决策值及该训练样本对应的标签之间的差异,确定该训练样本对应的损失函数值,包括:基于训练样本对应的标签与至少一个其他训练样本对应的标签的一部分之和与决策值之间的差异确定损失函数值。在一些实施例中,至少一个其他训练样本对应的点击事件晚于该训练样本对应的点击事件。仍以图5为例,若至少一个训练样本为训练样本1,则至少一个其他训练样本为训练样本2和3。

具体的,可以通过公式(3)确定至少一个训练样本对应的损失函数值

(3)

其中,l为损失函数值,为所述至少一个训练样本的决策值,i为所述至少一个训练样本对应的点击次数,n为连续点击事件的点击总次数,为折扣系数,一般取自数值范围(0,1),为训练样本的标签值(或奖励值)。

示例地,仍以上述示例为例,若至少一个训练样本为训练样本1,则i=1,n=3,训练样本1的损失函数值l==;其中,为训练样本1的决策值,为训练样本1的标签值,为折扣系数,为训练样本2的标签值,为训练样本3的标签值。可以理解,对于来自连续点击事件的训练样本,奖励值不仅与当前次的消费金额有关,还与未来点击事件产生的消费金额有关。基于上式构造损失函数,可以刻画出连续点击事件的特点,提高模型预测准确度。

图6是根据本说明书的一些实施例所示的基于多任务预测的确定推荐对象的系统的模块图。

如图6所示,基于多任务预测的确定推荐对象的系统600可以包括特征获取模块610、决策值确定模块620以及目标对象确定模块630。

特征获取模块610可以用于获取目标用户的用户特征和至少一个候选对象的对象特征。在一些实施例中,所述候选对象为用户权益;所述用户特征至少反映所述目标用户的个人属性以及历史消费行为;所述个人属性包括以下至少之一:收入、年龄以及职业;所述对象特征至少反映候选对象的成本信息。在一些实施例中,所述历史消费行为包括所述目标用户历史点击的用户权益和/或目标用户历史购买的商品。

在一些实施例中,决策值确定模块620可以用于利用推荐模型对所述至少一个候选对象中的每一个进行以下处理,以得到至少一个决策值:通过推荐模型处理所述用户特征和所述对象特征,确定与该候选对象对应的两个或以上的预测值;其中,所述两个或以上的预测值与两个或以上的预设任务分别相关,所述两个或以上的预设任务与目标任务相关;基于所述两个或以上的预测值,确定与该候选对象对应的决策值,其中,决策值反映所述目标任务的完成度。

在一些实施例中,所述两个或以上的预测值包括第一预测值以及第二预测值;所述推荐模型包括:嵌入层、特征交叉层、第一多层感知器以及第二多层感知器;所述嵌入层用于将所述用户特征和所述对象特征转换为各自的向量表示;所述特征交叉层用于对用户特征的向量表示和对象特征的向量表示进行特征融合处理,得到融合向量表示;所述第一多层感知器用于对所述融合向量表示进行处理,得到所述第一预测值;所述第二多层感知器用于对所述融合向量表示和所述第一预测值进行处理,得到所述第二预测值。在一些实施例中,所述特征交叉层包括:wide&deep网络、deepfm网络或deepandcross网络。在一些实施例中,所述决策值与第一预测值和/或第二预测值正相关。在一些实施例中,所述两个或以上的预测值包括第一预测值以及第二预测值,其中,第一预测值反映目标用户点击该候选对象的概率,所述第二预测值反映目标用户通过该候选对象产生的消费金额。

目标对象确定模块630可以用于基于所述至少一个决策值,从所述至少一个候选对象中确定向所述目标用户推荐的目标对象。

图7是根据本说明书的一些实施例所示的基于多任务预测的推荐模型的训练系统的模块图。

如图7所示,基于多任务预测的推荐模型的训练系统700可以包括:训练样本获取模块710和参数调整模块720。

训练样本获取模块710可以用于获取多个携带有标签的训练样本;其中,所述训练样本包括样本用户特征和样本对象特征,所述标签用于表征目标任务的完成度。在一些,所述样本对象为用户权益;所述样本用户特征至少反映所述样本用户的个人属性以及历史消费行为;所述个人属性包括以下至少之一:收入、年龄以及职业;所述样本对象特征至少反映样本对象的成本信息。在一些实施例中,所述历史消费行为包括所述样本用户历史点击的用户权益和/或样本用户历史购买的商品。

参数调整模块720可以用于基于多个训练样本迭代更新初始推荐模型的参数以减小各训练样本对应的损失函数值,得到训练好的推荐模型;其中,各训练样本对应的损失函数值通过以下过程确定:通过推荐模型处理样本用户特征和样本对象特征,获取两个或以上的预测值以及基于所述两个或以上的预测值确定决策值;其中,所述两个或以上的预测值与两个或以上的预设任务分别相关,所述两个或以上的预设任务与所述目标任务相关;至少基于所述决策值及该训练样本对应的标签之间的差异,确定该训练样本对应的损失函数值。在一些实施例中,所述两个或以上的预测值包括第一预测值以及第二预测值,其中,第一预测值反映样本用户点击该样本对象的概率,所述第二预测值反映样本用户通过该样本对象产生的消费金额。

在一些实施例中,所述多个携带有标签的训练样本中,至少一个训练样本与至少一个其他训练样本,与同一样本用户对同一样本对象的多次点击事件分别对应;对于所述至少一个训练样本中的每一个:所述至少基于所述决策值及该训练样本对应的标签之间的差异,确定该训练样本对应的损失函数值,包括:基于该训练样本对应的标签与所述至少一个其他训练样本对应的标签的一部分之和与所述决策值之间的差异确定所述损失函数值,其中,所述至少一个其他训练样本对应的点击事件晚于该训练样本对应的点击事件。

应当理解,图6或图7所示的系统及其模块可以利用各种方式来实现。例如,在一些实施例中,系统及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、cd或dvd-rom的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。

需要注意的是,以上对于基于多任务预测的确定推荐对象的系统600及其模块、以及基于多任务预测的推荐模型的训练系统700及其模块图的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。例如,图6中披露的特征获取模块610、决策值确定模块620、以及目标对象确定模块630可以是一个系统中的不同模块,也可以是一个模块实现上述的两个模块的功能。又例如,基于多任务预测的确定推荐对象的系统600中各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。诸如此类的变形,均在本说明书的保护范围之内。

本说明书实施例例还提供一种基于多任务预测的确定推荐对象的装置,包括处理器,所述处理器用于执行前述的基于多任务预测的确定推荐对象的方法。

本说明书实施例还提供一种基于多任务预测的推荐模型的训练装置,包括处理器,所述处理器用于执行前述的基于多任务预测的推荐模型的训练方法。

本说明书实施例可能带来的有益效果包括但不限于:(1)利用强化学习的思想将推荐模型作为执行体网络,将gmv(平台成交额)的优化部分作为奖励,选取最优奖励对应的候选对象推荐给目标用户,同时优化点击率及gmv,提高了目标任务的完成度。(2)将gmv作为与目标任务完成度对应的奖励来考虑,避免了gmv预测网络对点击率预测网络的干扰,提升了最终的模型效果。需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。

上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。

同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。

此外,本领域技术人员可以理解,本说明书的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本说明书的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本说明书的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。

计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、rf、或类似介质,或任何上述介质的组合。

本说明书各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如java、scala、smalltalk、eiffel、jade、emerald、c 、c#、vb.net、python等,常规程序化编程语言如c语言、visualbasic、fortran2003、perl、cobol2002、php、abap,动态编程语言如python、ruby和groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或处理设备上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(lan)或广域网(wan),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(saas)。

此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的处理设备或移动设备上安装所描述的系统。

同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。

一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。

针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。

最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。


技术特征:

1.一种基于多任务预测的确定推荐对象的方法,包括:

获取目标用户的用户特征和至少一个候选对象的对象特征;

利用推荐模型对所述至少一个候选对象中的每一个进行以下处理,以得到至少一个决策值:

通过推荐模型处理所述用户特征和所述对象特征,确定与该候选对象对应的两个或以上的预测值;其中,所述两个或以上的预测值与两个或以上的预设任务分别相关,所述两个或以上的预设任务与目标任务相关;

基于所述两个或以上的预测值,确定与该候选对象对应的决策值,其中,决策值反映所述目标任务的完成度;

以及,基于所述至少一个决策值,从所述至少一个候选对象中确定向所述目标用户推荐的目标对象。

2.如权利要求1所述的方法,所述两个或以上的预测值包括第一预测值以及第二预测值;

所述推荐模型包括:嵌入层、特征交叉层、第一多层感知器以及第二多层感知器;

所述嵌入层用于将所述用户特征和所述对象特征转换为各自的向量表示;

所述特征交叉层用于对用户特征的向量表示和对象特征的向量表示进行特征融合处理,得到融合向量表示;

所述第一多层感知器用于对所述融合向量表示进行处理,得到所述第一预测值;

所述第二多层感知器用于对所述融合向量表示和所述第一预测值进行处理,得到所述第二预测值。

3.如权利要求2所述的方法,所述特征交叉层包括:wide&deep网络、deepfm网络或deepandcross网络。

4.如权利要求2所述的方法,所述决策值与第一预测值和/或第二预测值正相关。

5.如权利要求1所述的方法,所述候选对象为用户权益;

所述用户特征至少反映所述目标用户的个人属性以及历史消费行为;所述个人属性包括以下至少之一:收入、年龄以及职业;

所述对象特征至少反映候选对象的成本信息。

6.如权利要求5所述的方法,所述历史消费行为包括所述目标用户历史点击的用户权益和/或目标用户历史购买的商品。

7.如权利要求5所述的方法,所述两个或以上的预测值包括第一预测值以及第二预测值,其中,第一预测值反映目标用户点击该候选对象的概率,所述第二预测值反映目标用户通过该候选对象产生的消费金额。

8.一种基于多任务预测的确定推荐对象的系统,包括:

特征获取模块,用于获取目标用户的用户特征和至少一个候选对象的对象特征;

决策值确定模块,用于利用推荐模型对所述至少一个候选对象中的每一个进行以下处理,以得到至少一个决策值:通过推荐模型处理所述用户特征和所述对象特征,确定与该候选对象对应的两个或以上的预测值;其中,所述两个或以上的预测值与两个或以上的预设任务分别相关,所述两个或以上的预设任务与目标任务相关;基于所述两个或以上的预测值,确定与该候选对象对应的决策值,其中,决策值反映所述目标任务的完成度;

目标对象确定模块,用于基于所述至少一个决策值,从所述至少一个候选对象中确定向所述目标用户推荐的目标对象。

9.一种基于多任务预测的确定推荐对象的装置,包括处理器,所述处理器用于执行如权利要求1-7任一项所述方法。

10.一种基于多任务预测的推荐模型的训练方法,包括:

获取多个携带有标签的训练样本;其中,所述训练样本包括样本用户特征和样本对象特征,所述标签用于表征目标任务的完成度;

基于多个训练样本迭代更新初始推荐模型的参数以减小各训练样本对应的损失函数值,得到训练好的推荐模型;

其中,各训练样本对应的损失函数值通过以下过程确定:

通过推荐模型处理样本用户特征和样本对象特征,获取两个或以上的预测值以及基于所述两个或以上的预测值确定决策值;其中,所述两个或以上的预测值与两个或以上的预设任务分别相关,所述两个或以上的预设任务与所述目标任务相关;

至少基于所述决策值及该训练样本对应的标签之间的差异,确定损失函数的值。

11.如权利要求10所述的方法,所述样本对象为用户权益;

所述样本用户特征至少反映所述样本用户的个人属性以及历史消费行为;所述个人属性包括以下至少之一:收入、年龄以及职业;

所述样本对象特征至少反映样本对象的成本信息。

12.如权利要求11所述的方法,所述历史消费行为包括所述样本用户历史点击的用户权益和/或样本用户历史购买的商品。

13.如权利要求11所述的方法,所述两个或以上的预测值包括第一预测值以及第二预测值,其中,第一预测值反映样本用户点击该样本对象的概率,所述第二预测值反映样本用户通过该样本对象产生的消费金额。

14.如权利要求11所述的方法,所述多个携带有标签的训练样本中,至少一个训练样本与至少一个其他训练样本,与同一样本用户对同一样本对象的多次点击事件分别对应;

对于所述至少一个训练样本中的每一个:

所述至少基于所述决策值及该训练样本对应的标签之间的差异,确定该训练样本对应的损失函数值,包括:基于该训练样本对应的标签与所述至少一个其他训练样本对应的标签的一部分之和与所述决策值之间的差异确定所述损失函数值,其中,所述至少一个其他训练样本对应的点击事件晚于该训练样本对应的点击事件。

15.一种基于多任务预测的推荐模型的训练系统,包括:

训练样本获取模块,用于获取多个携带有标签的训练样本;其中,所述训练样本包括样本用户特征和样本对象特征,所述标签用于表征目标任务的完成度;

参数调整模块,用于基于多个训练样本迭代更新初始推荐模型的参数以减小各训练样本对应的损失函数值,得到训练好的推荐模型;

其中,各训练样本对应的损失函数值通过以下过程确定:

通过推荐模型处理样本用户特征和样本对象特征,获取两个或以上的预测值以及基于所述两个或以上的预测值确定决策值;其中,所述两个或以上的预测值与两个或以上的预设任务分别相关,所述两个或以上的预设任务与所述目标任务相关;

至少基于所述决策值及该训练样本对应的标签之间的差异,确定该训练样本对应的损失函数值。

16.一种基于多任务预测的推荐模型的训练装置,包括处理器,所述处理器用于执行如权利要求10-14任一项所述方法。

技术总结
本说明书实施例公开了一种基于多任务预测的确定推荐对象的方法及系统,所述方法包括:获取目标用户的用户特征和至少一个候选对象的对象特征;利用推荐模型对所述至少一个候选对象中的每一个进行以下处理,以得到至少一个决策值:通过推荐模型处理所述用户特征和所述对象特征,确定与该候选对象对应的两个或以上的预测值;其中,所述两个或以上的预测值与两个或以上的预设任务分别相关,所述两个或两个以上的预设任务与目标任务相关;基于所述两个或以上的预测值,确定与该候选对象对应的决策值,其中,决策值反映所述目标任务的完成度;以及,基于所述至少一个决策值,从所述至少一个候选对象中确定向所述目标用户推荐的目标对象。

技术研发人员:钱浩;周俊;崔卿;李龙飞
受保护的技术使用者:支付宝(杭州)信息技术有限公司
技术研发日:2020.04.24
技术公布日:2020.06.05

转载请注明原文地址: https://bbs.8miu.com/read-50194.html

最新回复(0)