掌桥专利:专业的专利平台
掌桥专利
首页

推荐处理方法、装置、终端设备以及存储介质

文献发布时间:2023-06-19 10:57:17


推荐处理方法、装置、终端设备以及存储介质

技术领域

本申请涉及人工智能技术领域,尤其涉及一种推荐处理方法、装置、终端设备以及存储介质。

背景技术

随着在线购物平台的不断发展,推荐系统已经成为了电子商务中不可替代的重要组成部分。推荐系统能够学习用户历史行为中所隐藏的偏好信息,从而对用户购物行为进行进一步的预测,帮助顾客挑选满意物品的同时,促进电子商务平台的收益提升。目前,很多推荐系统都是根据不同人群进行物品推荐的,然而即使同一人群之间的不同个体也可能存在喜好的差异,因此,使得推荐准确率较低。

发明内容

本申请实施例提供一种推荐处理方法、装置、终端设备以及存储介质,可提高推荐准确率,适用性高。

本申请实施例提供了一种推荐处理方法,该方法包括:

获取待推荐元素集合中每个待推荐元素的融合特征数据,融合特征数据中包括目标推荐用户的用户特征数据;

根据每个待推荐元素的融合特征数据对待推荐元素集合中每个待推荐元素进行排序预测,得到每个待推荐元素的预测排序值;

基于待推荐元素集合中每个待推荐元素的历史特征数据进行排序优化处理,得到重排序因子序列,重排序因子序列中包括每个待推荐元素对应的重排序因子,历史特征数据中包括样本用户的用户特征数据;

根据每个待推荐元素的预测排序值和每个待推荐元素的重排序因子,确定每个待推荐元素的推荐排序值,以根据推荐排序值确定待推荐元素集合中各个待推荐元素的推荐排列顺序。

本申请实施例提供了一种推荐处理装置,该装置包括:

融合特征数据确定模块,用于获取待推荐元素集合中每个待推荐元素的融合特征数据,融合特征数据中包括目标推荐用户的用户特征数据;

预测排序值确定模块,用于根据每个待推荐元素的融合特征数据对待推荐元素集合中每个待推荐元素进行排序预测,得到每个待推荐元素的预测排序值;

重排序因子获取模块,用于基于待推荐元素集合中每个待推荐元素的历史特征数据进行排序优化处理,得到重排序因子序列,重排序因子序列中包括每个待推荐元素对应的重排序因子,历史特征数据中包括样本用户的用户特征数据;

推荐排序值确定模块,用于根据每个待推荐元素的预测排序值和每个待推荐元素的重排序因子,确定每个待推荐元素的推荐排序值,以根据推荐排序值确定待推荐元素集合中各个待推荐元素的推荐排列顺序。

本申请实施例提供了一种终端设备,该终端设备包括处理器和存储器,该处理器和存储器相互连接。该存储器用于存储支持该终端设备执行上述第一方面和/或第一方面任一种可能的实现方式提供的方法的计算机程序,该计算机程序包括程序指令,该处理器被配置用于调用上述程序指令,执行上述所提供的方法。

本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令当被处理器执行时使该处理器执行上述所提供的方法。

在本申请实施例中,获取待推荐元素集合中每个待推荐元素的融合特征数据;根据每个待推荐元素的融合特征数据对待推荐元素集合中每个待推荐元素进行排序预测,得到每个待推荐元素的预测排序值;基于待推荐元素集合中每个待推荐元素的历史特征数据进行排序优化处理,得到重排序因子序列,重排序因子序列中包括每个待推荐元素对应的重排序因子;根据每个待推荐元素的预测排序值和每个待推荐元素的重排序因子,确定每个待推荐元素的推荐排序值,以根据推荐排序值确定待推荐元素集合中各个待推荐元素的推荐排列顺序。采用本申请实施例,可提高推荐准确率,适用性高。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的一种系统架构示意图;

图2是本申请实施例提供的推荐处理方法的流程示意图;

图3是本申请实施例提供的算法流程示意图;

图4是本申请实施例提供的重排序算法的离线验证结果示意图;

图5是是本申请实施例提供的AB测试的验证结果示意图;

图6是本申请实施例提供的推荐处理装置的一结构示意图;

图7是本申请实施例提供的推荐处理装置的另一结构示意图;

图8是本申请实施例提供的终端设备的结构示意图。

具体实施方式

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

本申请实施例提供的推荐处理方法,可广泛适用于各种线上推荐系统。例如,线上推荐系统可以是商品推荐系统、业务推荐系统、歌曲推荐系统以及视频推荐系统等,具体根据实际应用场景确定,在此不做限制。其中,业务推荐系统可以是用于保险业务推荐的系统等,在此不做限制。为方便描述,本申请将待推荐的对象称为待推荐元素,或称为待推荐物品(item)等。其中,上述所称的待推荐物品是广义的物品,是一切可推荐的对象的总称。

请参见图1,图1是本申请实施例提供的一种系统架构示意图。如图1所示,服务器100a、服务器100b和终端设备101之间可以通过网络互相连接。其中,图1所示的终端设备可以包括手机、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internetdevice,MID)、可穿戴设备(例如智能手表、智能手环等)等,在此不做限制。应当理解的是,服务器100a可以与服务器100b之间进行数据传输,服务器100a和服务器100b也可以分别与终端设备101进行数据传输。其中,终端设备可以装载有具备各种功能性的应用程序,为方便描述,上述终端设备上装载有的各种功能性的应用程序可以以第一应用为例进行示例说明。可选的,第一应用可以是视频类应用、音乐播放类应用、游戏类应用和购物类应用等,或者,第一应用也可以是小程序和网页等,在此不做限制。

可理解的,服务器100a和服务器100b可以是第一应用的本地服务器,也可以是远程服务器(例如,云端服务器)等,在此不做限制。其中,服务器100a可以用于存储与第一应用相关的各种类型的数据(例如第一应用的注册用户的用户特征数据,各个待推荐元素的元素特征数据等)和信息。服务器100b可以用于从服务器100a获取推荐任务所需的各种特征数据,并根据基于各个特征数据进行处理,以生成推荐列表,以发送至终端设备进行显示。也就是说,当终端设备中的第一应用向服务器100b中发送数据获取请求时,该服务器100b可基于接收到的数据获取请求向终端设备的第一应用返回数据情况(例如如图1中的推荐列表),以更新终端设备中第一应用的界面展示情况。

本申请实施例中的方法,获取待推荐元素集合中每个待推荐元素的融合特征数据;根据每个待推荐元素的融合特征数据对待推荐元素集合中每个待推荐元素进行排序预测,得到每个待推荐元素的预测排序值;基于待推荐元素集合中每个待推荐元素的历史特征数据进行排序优化处理,得到重排序因子序列,重排序因子序列中包括每个待推荐元素对应的重排序因子;根据每个待推荐元素的预测排序值和每个待推荐元素的重排序因子,确定每个待推荐元素的推荐排序值,以根据推荐排序值确定待推荐元素集合中各个待推荐元素的推荐排列顺序。采用本申请实施例,可提高推荐准确率。

下面将结合图2至图7分别对本申请实施例提供的方法及相关装置分别进行详细说明。

请参见图2,图2为本申请实施例提供的推荐处理方法的流程示意图。本申请实施例提供的方法可以包括如下步骤S201至S204:

S201、获取待推荐元素集合中每个待推荐元素的融合特征数据。

在一些可行的实施方式中,通过获取目标推荐用户的用户特征数据与待推荐元素集合中每个待推荐元素的元素特征数据,可根据目标推荐用户的用户特征数据与每个待推荐元素的元素特征数据,生成每个待推荐元素对应的融合特征数据。其中,目标推荐用户为本次元素推荐/物品推荐的指向性对象。例如,假设本次物品推荐针对的是用户user1,则用户user1即为目标推荐用户,假设本次物品推荐针对的是用户user2,则用户user2即为目标推荐用户。为方便描述,以下本申请实施例皆以目标推荐用户为例进行说明。可理解的,目标推荐用户通常可以为推荐系统中的注册用户,其中注册用户可以是新注册的用户,例如没有过购买行为或下单记录的用户,或者也可以是老注册用户,即在有过购买行为或下单记录的用户等,在此不做限制。其中,目标推荐用户的用户特征数据包括用户性别、用户年龄、用户浏览历史、用户购买历史等中的至少一项。可理解的,本申请中待推荐元素集合中包括的至少两个待推荐元素为同一推荐任务场景下元素。例如,某个推荐任务场景可以是特卖页场景,或付款完成页面场景,或保单列表页场景,或子女产品页场景等,在此不做限制。其中,待推荐元素也可以称为待推荐物品,待推荐元素的元素特征数据可称为待推荐物品的物品特征数据。应当理解的是,任一待推荐物品的待推荐物品包括物品标识、物品类型、物品价格、物品厂商等中的至少一项。

可理解的,本申请中可将用户特征数据和物品特征数据中包括的各个维度的特征数据转换为LIBSVM格式的特征数据后再进行处理。也就是说,本申请可以采用LIBSVM方式对各个维度的用户特征数据或元素特征数据进行度量。例如,针对用户特征数据中的性别而言,可将性别“男”转化成(性别_男:1)这样的形式,对于浏览历史而言,假设浏览的产品为item a,item b,未浏览过的产品为item c,则浏览历史特征可以构造为(浏览历史_itema:1,浏览历史_item b:1,浏览历史_item c:0),在此不做限制。

在一些可行的实施方式中,通过将待推荐元素集合中一个待推荐元素的元素特征数据与目标推荐用户的用户特征数据进行拼接,可得到该一个待推荐元素的融合特征数据,进而,可生成待推荐元素集合中每个待推荐元素对应的融合特征数据。其中,融合特征数据中用户特征数据与元素特征数据的拼接方式可根据实际应用场景确定,在此不做限制。例如,假设目标推荐用户为用户user1,用户user1对应的用户特征数据为feature1,任一待推荐元素item a的元素特征数据为feature2,则该待推荐元素对应的融合特征数据Ra=[feature1,feature2],或者,该待推荐元素对应的融合特征数据Ra=[feature2,feature1],在此不做限制。

S202、根据每个待推荐元素的融合特征数据对待推荐元素集合中每个待推荐元素进行排序预测,得到每个待推荐元素的预测排序值。

在一些可行的实施方式中,根据每个待推荐元素的融合特征数据对待推荐元素集合中每个待推荐元素进行排序预测,可得到每个待推荐元素的预测排序值。具体地,本申请实施例可将每个待推荐元素的融合特征数据输入到排序值预测模型,通过排序值预测模型对待推荐元素集合中每个待推荐元素进行排序预测,得到每个待推荐元素的预测排序值。其中,本申请中所涉及的排序值预测模型可以是转化率(Conversion Rate,CVR)预测模型,或者,排序值预测模型也可以是点击率(Click-Through-Rate,CTR)预测模型等,在此不做限制。其中,当排序值预测模型为CVR预测模型时,预测排序值为预测转化率,相应地,当排序值预测模型为CTR预测模型时,预测排序值为预测点击率。

通常而言,某个物品的转化率为该物品的转化量与点击量之比,物品的点击率为该物品的点击量与显示量之比。为便于理解,以线下实体店为例对点击率和转化率的概念进行说明。例如,假设在某次促销中,商家印了10000张传单,都发出去了,这10000人也都看了,而实际进店的人数是1000人。那么,看到的10000人即是显示量,进店的1000人即是点击量,因此点击率为1000/1000*100%=10%。进一步地,假设这1000人进店后,有50人下单购买了,则转化率为50/1000*100%=5%。

可理解的,若用于训练初始预测模型的训练样本为样本用户的用户特征数据,待推荐元素的元素特征数据以及待推荐元素对应的历史实际转化率,则排序值预测模型为转化率预测模型。相应地,若用于训练初始预测模型的训练样本为样本用户的用户特征数据,待推荐元素的元素特征数据以及待推荐元素对应的历史实际点击率,则排序值预测模型为点击率预测模型。其中,上述样本用户为推荐系统中的老用户,其可以包括目标推荐用户,也可以不包括目标推荐用户,具体根据实际应用场景确定,在此不做限制。例如,若目标推荐用户为新注册的用户,则样本用户不包括目标推荐用户,若目标推荐用户为老用户,则样本用户可以包括目标推荐用户。

为便于理解,此处以排序值预测模型为转化率预测模型为例,对转化率预测模型的训练过程进行说明。在进行模型训练前,首先,获取训练样本集合,该训练样本集合中可包括多个训练样本。其中,一个训练样本中包括一个样本用户的用户特征数据,一个待推荐元素的元素特征数据以及一个待推荐元素对应的历史实际转化率。在进行模型训练时,通过将各训练样本中的用户特征数据与元素特征数据输入到初始预测模型,可获取得到初始预测模型输出的各训练样本的预测转化率。进而,计算初始预测模型输出的各训练样本的预测转化率与各训练样本中包括的历史实际转化率之间的差距(即损失函数),以根据各训练样本的预测转化率与历史实际转化率之间的差距对初始预测模型的模型参数进行不断调整,直到调整后的初始预测模型收敛时,将调整后的初始预测模型确定为转化率预测模型。可理解的,上述初始预测模型可以为逻辑回归(Logistic Regression,LR)模型、或者XGBOOST模型、或者神经网络模型等,具体根据实际应用场景确定,在此不做限制。具体地,本申请实施例可采用交叉熵作为模型训练时的损失函数,即本申请实施例中的损失函数满足:

S203、基于待推荐元素集合中每个待推荐元素的历史特征数据进行排序优化处理,得到重排序因子序列。

在一些可行的实施方式中,基于待推荐元素集合中每个待推荐元素的历史特征数据进行排序优化处理,可得到重排序因子序列。具体地,将待推荐元素集合中每个待推荐元素的历史特征数据输入到排序值预测模型,可得到每个待推荐元素对应的历史排序值集合,其中,任一待推荐元素对应的历史排序值集合中包括:该任一待推荐元素对N个样本用户的N个历史排序值,N为大于0的整数。因此,基于各个待推荐元素对应的历史排序值集合进行重排序优化处理,可得到重排序因子序列。可理解的,上述一个历史特征数据中包括一个待推荐元素的元素特征数据和一个样本用户的用户特征数据。也就是说,一个待推荐元素的历史特征数据是将该待推荐元素的元素特征数据与一个样本用户的用户特征数据进行拼接后得到的。例如,假设某个样本用户为用户user2,用户user2对应的用户特征数据为feature0,待推荐元素item a的元素特征数据为feature2,则该待推荐元素对应的历史特征数据Ra’=[feature0,feature2],或者,该待推荐元素对应的历史特征数据Ra’=[feature2,feature0],在此不做限制。其中,融合特征数据与历史特征数据的数据格式保持一致。也就是说,若规定用户特征数据与元素特征数据的拼接顺序为[用户特征数据,元素特征数据],则历史特征数据的数据格式为[样本用户的用户特征数据,待推荐元素的元素特征数据],融合特征数据的数据格式为[目标推荐用户的用户特征数据,待推荐元素的元素特征数据]。若规定用户特征数据与元素特征数据的拼接顺序为[元素特征数据,用户特征数据],则历史特征数据的数据格式为[待推荐元素的元素特征数据,样本用户的用户特征数据],融合特征数据的数据格式为[待推荐元素的元素特征数据,目标推荐用户的用户特征数据]。

不难理解的是,若本申请中有N个样本用户,N为大于0的整数(即本申请中有至少一个样本用户),则通过将N个样本用户中每个样本用户的用户特征数据与该一个待推荐元素(例如待推荐元素item a)的元素特征数据进行拼接,可得到该一个待推荐元素对应的N个历史特征数据。因此,通过将该一个待推荐元素对应的N个历史特征数据输入到上述预训练得到的排序值预测模型中,可通过排序值预测模型得到该一个待推荐元素对应的N个历史排序值。进而,针对待推荐元素集合中每个待推荐元素,可得到每个待推荐元素对应的N个历史特征数据,即每个待推荐元素对应的历史排序值集合。

在一些可行的实施方式中,上述基于各个待推荐元素对应的历史排序值集合进行重排序优化处理,得到重排序因子序列可理解为:根据每个待推荐元素的历史排序值集合确定每个待推荐元素的等效排序值H(i),并获取每个待推荐元素对N个样本用户的总曝光数I(i),以及获取每个待推荐元素的价值P(i)。根据各个待推荐元素的等效排序值H(i)、各个待推荐元素对N个样本用户的总曝光数I(i),以及各个待推荐元素的价格P(i)确定待推荐元素集合对应的总转化价值Re v。进而,基于总转化价值Rev确定重排序因子序列。其中,总转化价值Rev满足:

其中,所述I(i)表示每个待推荐元素i对N个样本用户的总曝光数,H(i)表示每个待推荐元素i的等效排序值,P(i)表示每个待推荐元素i的价格。

可理解的,在确定每个待推荐元素对N个样本用户的总曝光数I(i)时,可获取每个待推荐元素对每个样本用户u的曝光数I

其中,rank(CR

举例来说,假设某一线上商城中一共有50个待推荐元素,其中,M等于30,以样本用户为用户user 1为例。针对50个待推荐元素中的任一待推荐元素(例如,以任一待推荐元素为item a为例进行说明)而言,通过将用户user 1的用户特征数据feature1,与待推荐元素item a的元素特征数据feature 2进行拼接,可得到item a对应的融合特征数据Ra=[feature1,feature2]。因此,针对50个待推荐元素,可得到50个待推荐元素对应的50个融合特征数据。可理解的,通过将上述50个待推荐元素对应的50个融合特征数据分别输入至预测排序值模型,则可以得到该50个待推荐元素对应的50个历史排序值。其中,假设将上述50个历史排序值按照从大到小的顺序进行排序后,确定出item a的历史排序值处于第20个位置(即item a的排序序号为20),则由于20<M,因此,对于用户user1而言,item a的曝光数I

可理解的,当根据每个待推荐元素的历史排序值集合确定每个待推荐元素的等效排序值H(i)时,可获取每个待推荐元素的关联信息集合,其中,任一待推荐元素的关联信息集合中包括:任一待推荐元素与N个样本用户中每个样本用户之间的关联信息。获取初始排序因子序列,根据所述初始排序因子序列中每个待推荐元素的初始排序因子、每个待推荐元素对应的历史排序值集合、以及每个待推荐元素的关联信息集合确定每个待推荐元素的等效排序值H(i)。

具体地,所述任一待推荐元素与N个样本用户中每个样本用户之间的关联信息包括所述任一待推荐元素对每个样本用户的曝光数。因此,所述每个待推荐元素的等效排序值H(i)满足:

其中,γ(i)表示每个待推荐元素i对应的初始重排序因子,CR

也就是说,本申请中转化偏差系数ρ(rank(γ(i)*CR

举例来说,假设item a在用户user 1的第一个曝光位的历史转化率为0.7,在用户user 1的第二个曝光位的历史转化率为0.6,在用户user 1的第三个曝光位的历史转化率为0.5,则根据待推荐元素i在任一曝光位置处对应的转化偏差系数为待推荐元素i在任一曝光位置对应的历史排序值与至少一个曝光位置中第一个曝光位置对应的历史排序值的比值可知,该物品a在第一个曝光位的转化偏差系数为0.7/0.7=1,在第二个曝光位的转化偏差系数为0.6/0.7=6/7,在第三个曝光位的转化偏差系数为0.5/0.7=5/7。

可理解的,通过将

其中,由该总转化价值Rev的公式可知,该公式中仅含有一个未知数γ(i),因而可以直接学习γ(i)同Rev的对应关系。也就是说,可基于所述总转化价值Rev确定重排序因子序列:示例性地,可检测各个待推荐元素的平均收入变化值之和是否满足停止条件。若是,则基于重排序因子序列更新规则和初始重排序因子序列,确定新的重排序因子序列,并基于所述新的重排序因子序列进行排序优化处理。其中,重排序因子更新规则是根据第一重排序因子序列与第二重排序因子序列的点除结果、学习率α以及平均收入变化向量ΔR(t)确定的。在本申请中,所述第一重排序因子序列是指:当前初始重排序因子序列所对应的上一次迭代得到的重排序因子序列。所述第二重排序因子序列是指:所述上一次迭代得到的重排序因子序列所对应的上一次迭代得到的重排序因子序列。

换句话说,本申请可基于策略梯度的强化学习方法训练得到使上述总转化价值Rev最大的重排序因子序列。这是因为本申请实施例不能一次性获取最优的重排序因子序列,但是可以通过不断地尝试不同的重排序因子序列,进而获取对应的Rev值。这一过程可以抽象为连续决策过程,即根据环境反馈来更新自身策略。

首先本申请可定义学习过程的三个变量:

状态S:本申请用三元组{I(i),H(i),γ(i)}表示学习过程的状态,每次迭代可以抽象为状态之间的转移。

动作a:本申请定义γ的改变作为动作,任意一个时刻t的动作向量可以表示为a(t)={Δγ(0,t),...,Δγ(N,t)},其中N表示待推荐元素的编号,Δγ(N,t)表示时刻t对item N的重排序因子的改变值。根据上述定义,t+1时刻的重排序因子向量γ(t+1)可以表示为:γ(t+1)=γ(t)+a(t)。

奖励R:考虑到本申请的优化目标是最优化总的转化价值(即总转化价值),那么自然地,本申请定义当前的总转化价值为奖励R。考虑到任意时刻每一个用户的转化价值都对本申请同等重要,所以本申请在计算的时候,在同一时刻t,不对不同用户的R进行降权。根据上述定义,奖励函数可由如下公式计算:

根据上述定义,本申请设计了基于策略梯度的学习算法。在本申请的场景中,本申请使用平均收入变化作为本申请更新方向向量,即:

ΔR(t)=[ΔR(0,t),...,ΔR(N,t)]

其中,ΔR(k,t)表示待推荐元素k在t时刻内的平均收入提升,ΔR(k,t)=R(k,t)-(k,t-1)。同时,本申请还利用两个迭代的γ的差决定更新梯度。基于上述推导,本申请最终的更新公式如下所示:

其中,

其中,ε是预先定义的超参数。

也就是说,本申请可基于策略梯度的强化学习方法训练得到使上述总转化价值Rev最大的重排序因子序列。其中重排序因子序列中包括每个待推荐元素对应的一个重排序因子。

S204、根据每个待推荐元素的预测排序值和每个待推荐元素的重排序因子,确定每个待推荐元素的推荐排序值,以根据推荐排序值确定待推荐元素集合中各个待推荐元素的推荐排列顺序。

在一些可行的实施方式中,根据每个待推荐元素对应的预测排序值和每个待推荐元素对应的重排序因子,可确定每个待推荐元素的推荐排序值,进而,根据各个推荐排序值可确定待推荐元素集合中各个待推荐元素的推荐排列顺序。具体地,在本申请实施例中,可将任一待推荐元素对应的预测排序值与该待推荐元素对应的重排序因子的乘积确定为该待推荐元素的推荐排序值,以此类推,可得到待推荐元素集合中每个待推荐元素的推荐排序值。

请参见图3,图3是本申请实施例提供的算法流程示意图。如图3所示,通过将待推荐元素集合中各个待推荐元素的融合特征数据输入至排序值预测模型中,可得到基于排序值预测模型确定出的预测排序值,通过将待推荐元素集合中各个待推荐元素的历史特征数据输入到排序值预测模型中,可得到每个待推荐元素对应的历史排序值集合,因此,基于各个待推荐元素对应的历史排序值集合进行重排序优化处理,可得到重排序因子序列。最后,通过将将每个待推荐元素的预测排序值和重排序因子相乘,可得到每个待推荐元素的推荐排序值。

举例来说,以推荐值预测模型为转化率预测模型为例,假设目标推荐用户为user1,待推荐元素集合包括待推荐元素item a、待推荐元素item b和待推荐元素item c。其中,通过将待推荐元素item a的元素特征数据、待推荐元素item b的元素特征数据和待推荐元素item c的元素特征数据分别与目标推荐用户user 1的用户特征数据进行融合,可分别得到待推荐元素item a对应的融合特征数据1、待推荐元素item b对应的融合特征数据2、以及待推荐元素item c对应的融合特征数据3。将融合特征数据1、融合特征数据2和融合特征数据3分别输入转化率预测模型,可得到待推荐元素item a的预测转化率为0.7,待推荐元素item b的预测转化率为0.65,待推荐元素item c的预测转化率为0.32。其中,假设获取到的重排序因子序列中item a对应的重排序因子等于0.8,item b对应的重排序因子等于0.9,item a对应的重排序因子等于0.5,则待推荐元素item a的推荐排序值为0.7*0.8=0.56,item b的推荐排序值为0.65*0.9=0.585,item c的推荐排序值为0.32*0.5=0.16。

在一些可行的实施方式中,上述推荐排序值可用于确定待推荐元素集合中各个待推荐元素的排列顺序。例如,可按照待推荐元素的推荐排序值从大到小的顺序,对待推荐元素集合进行排序,以得到待推荐元素集合的物品排列顺序。进而,根据终端设备的显示界面可展示数量n,将物品排列顺序中的前n个待推荐元素展现在终端设备的显示界面中。其中,推荐系统中包括的待推荐元素集合的物品数量m≥显示界面可展示数量n。举例来说,假设m为100,n为10,则可将100个待推荐元素中物品排列顺序前10的待推荐元素依次展示在终端设备的推荐系统的显示界面中。

举例来说,假设待推荐元素集合中包括3个待推荐元素,分别为item a,item b和item c。其中,item a的推荐排序值为0.56,item b的推荐排序值为0.585,item c的推荐排序值为0.16,则根据推荐排序值从大到小的顺序,可确定各个待推荐元素的排列顺序为item b,item a,item c。因此,终端设备显示界面中待推荐元素的显示效果为从上到下依次为item b,item a,item c。

在本申请实施例中,根据目标推荐用户的用户特征数据与待推荐元素集合中每个待推荐元素的元素特征数据,生成每个待推荐元素对应的融合特征数据。根据排序值预测模型和每个待推荐元素对应的融合特征数据确定每个待推荐元素对应的预测排序值。获取重排序因子序列,根据每个待推荐元素对应的预测排序值和重排序因子序列中每个待推荐元素对应的重排序因子确定每个待推荐元素的推荐排序值,推荐排序值用于确定待推荐元素集合的排列顺序。采用本申请实施例,可提高推荐准确率,适用性高。

可理解的,本申请的发明人在实践中还发现,针对不同的目标推荐用户,基于本申请提供的推荐处理方法对待推荐元素集合中包括的各个待推荐元素进行排序后,可提高对目标推荐用户的推荐准确度,有助于帮助顾客挑选满意物品。与此同时,基于本申请提供的推荐处理方法,还可以促进电子商务平台的收益提升。为便于理解,本申请利用实际数据对模型效果进行了验证。其中,本申请中抽取的数据集来源于真实世界的互联网保险数据销售数据,包含大约560万条数据,主要包含以下四个推荐任务场景的数据:

特卖页(scenario 1):针对有一定认知的用户的推荐场景,样本数量为390W。

付款完成页面(scenario 2):针对已经完成产品购买用户的推荐场景,样本数量18.3W。

保单列表页(scenario 3):还未购买用户的推荐场景,样本数量41W。

子女产品页(scenario 4):为子女/小朋友准备的产品推荐场景,样本数量115W。

其中,本申请以多任务学习模型(selective adaptive multi-task network,SAMN)作为推荐值排序模型,以LR模型作为基线,分别在上述四个推荐任务场景的数据上进行了重排序算法的离线验证。请参见图4,图4是本申请实施例提供的重排序算法的离线验证结果示意图。由图4中的验证结果可以看到,我们设计的重排序算法在四个场景分别取得了11.3%,6.1%,7.8%和3%的收入提升。相比基线则提升更为显著,分别为14.7%,8.5%,10.5%和4.5%。

同时,为了验证我们重排序算法的有效性,我们也在现实世界对这一发明进行了部署,并进行了7天的AB测试。请参见图5,图5是是本申请实施例提供的AB测试的验证结果示意图。如图5中的在线验证结果可知,相比于基线,本申请实施例中的重排序算法(以SAMN为基础)在四个场景分别取得16.2%,7.2%,7.15%和2.7%的收入提升。

请参见图6,图6是本申请实施例提供的推荐处理装置的一结构示意图。本申请实施例提供的推荐处理装置包括:

融合特征数据确定模块31,用于获取待推荐元素集合中每个待推荐元素的融合特征数据,所述融合特征数据中包括目标推荐用户的用户特征数据;

预测排序值确定模块32,用于根据每个所述待推荐元素的融合特征数据对所述待推荐元素集合中每个待推荐元素进行排序预测,得到每个所述待推荐元素的预测排序值;

重排序因子获取模块33,用于基于所述待推荐元素集合中每个待推荐元素的历史特征数据进行排序优化处理,得到重排序因子序列,所述重排序因子序列中包括每个所述待推荐元素对应的重排序因子,所述历史特征数据中包括样本用户的用户特征数据;

推荐排序值确定模块34,用于根据每个所述待推荐元素的预测排序值和每个所述待推荐元素的重排序因子,确定每个所述待推荐元素的推荐排序值,以根据所述推荐排序值确定所述待推荐元素集合中各个待推荐元素的推荐排列顺序。

请一并参见图7,图7是本申请实施例提供的推荐处理装置的另一结构示意图。其中:

在一些可行的实施方式中,预测排序值确定模块32用于:

将每个所述待推荐元素的融合特征数据输入到排序值预测模型,通过所述排序值预测模型对所述待推荐元素集合中每个待推荐元素进行排序预测,得到每个所述待推荐元素的预测排序值;

所述重排序因子获取模块33包括:

历史排序值集合获取单元331,用于将所述待推荐元素集合中每个待推荐元素的历史特征数据输入到所述排序值预测模型,得到每个所述待推荐元素对应的历史排序值集合,其中,任一待推荐元素对应的历史排序值集合中包括:该任一待推荐元素对N个样本用户的N个历史排序值,N为大于0的整数;

优化处理单元332,用于基于各个待推荐元素对应的历史排序值集合进行重排序优化处理,得到重排序因子序列。

在一些可行的实施方式中,优化处理单元332包括:

等效排序值确定子单元3321,用于根据每个所述待推荐元素的历史排序值集合确定每个所述待推荐元素的等效排序值H(i);

第一处理子单元3322,用于获取每个所述待推荐元素对N个样本用户的总曝光数I(i),以及获取每个所述待推荐元素的价值P(i);

总转化价值确定子单元3323,用于根据各个待推荐元素的等效排序值H(i)、各个待推荐元素对N个样本用户的总曝光数I(i),以及各个待推荐元素的价格P(i)确定所述待推荐元素集合对应的总转化价值Rev;

重排序因子序列确定子单元3324,用于基于所述总转化价值Rev确定重排序因子序列。

在一些可行的实施方式中,所述总转化价值Rev满足:

其中,所述I(i)表示每个所述待推荐元素i对N个样本用户的总曝光数,H(i)表示每个所述待推荐元素i的等效排序值,P(i)表示每个所述待推荐元素i的价格。

在一些可行的实施方式中,第一处理子单元3322具体用于:

获取每个所述待推荐元素对每个样本用户u的曝光数I

将每个所述待推荐元素对各个样本用户的曝光数之和确定每个所述待推荐元素对所有样本用户的总曝光数I(i);

其中,当任一待推荐元素在任一样本用户对应的排序序号小于等于M时,所述任一待推荐在任一样本用户的曝光数等于1,当任一待推荐元素在任一样本用户的排序序号大于所述M时,所述任一待推荐在任一样本用户的曝光数等于0,其中,M是根据最大曝光数量确定的。

在一些可行的实施方式中,等效排序值确定子单元3321具体用于:

获取每个所述待推荐元素的关联信息集合,其中,任一待推荐元素的关联信息集合中包括:任一待推荐元素与N个样本用户中每个样本用户之间的关联信息;

获取初始排序因子序列,根据所述初始排序因子序列中每个所述待推荐元素的初始排序因子、每个所述待推荐元素对应的历史排序值集合、以及每个所述待推荐元素的关联信息集合确定每个所述待推荐元素的等效排序值H(i)。

在一些可行的实施方式中,所述任一待推荐元素与N个样本用户中每个样本用户之间的关联信息包括:所述任一待推荐元素对每个样本用户的曝光数;

所述每个待推荐元素的等效排序值H(i)满足:

其中,γ(i)表示每个所述待推荐元素i对应的初始重排序因子,CR

每个所述待推荐元素在每个样本用户中的转化偏差系数包括:根据每个所述待推荐元素在待推荐元素集合中的排序序号,从每个所述待推荐元素对应的至少一个候选转化偏差系数中确定出的系数;任一待推荐元素的排序序号是根据任一待推荐元素对应的初始重排序因子与历史排序值的乘积确定的。

在一些可行的实施方式中,重排序因子序列确定子单元3324具体用于:

检测各个待推荐元素的平均收入变化值之和是否满足停止条件;

若是,基于重排序因子序列更新规则和初始重排序因子序列,确定新的重排序因子序列,并基于所述新的重排序因子序列进行排序优化处理。

在一些可行的实施方式中,所述重排序因子更新规则是根据第一重排序因子序列与第二重排序因子序列的点除结果、学习率α以及平均收入变化向量ΔR(t)确定的;

所述第一重排序因子序列是指:当前初始重排序因子序列所对应的上一次迭代得到的重排序因子序列;

所述第二重排序因子序列是指:所述上一次迭代得到的重排序因子序列所对应的上一次迭代得到的重排序因子序列。

在一些可行的实施方式中,推荐排序值确定模块34具体用于:

将每个所述待推荐元素的预测排序值和重排序因子相乘,得到每个所述待推荐元素的推荐排序值。

基于同一发明构思,本申请实施例中提供的推荐处理装置解决问题的原理与有益效果与本申请方法实施例中消息处理方法解决问题的原理和有益效果相似,可以参见方法的实施的原理和有益效果,并且,各个相关模块所执行的各个步骤之间的关系亦可参考前述实施例中相关内容的描述,为简洁描述,在这里不再赘述。

请参见图8,图8是本申请实施例提供的终端设备的结构示意图。如图8所示,本实施例中的终端设备可以包括:一个或多个处理器401和存储器402。上述处理器401和存储器402通过总线403连接。存储器402用于存储计算机程序,该计算机程序包括程序指令,处理器401用于执行存储器402存储的程序指令,执行如下操作:

获取待推荐元素集合中每个待推荐元素的融合特征数据,所述融合特征数据中包括目标推荐用户的用户特征数据;

根据每个所述待推荐元素的融合特征数据对所述待推荐元素集合中每个待推荐元素进行排序预测,得到每个所述待推荐元素的预测排序值;

基于所述待推荐元素集合中每个待推荐元素的历史特征数据进行排序优化处理,得到重排序因子序列,所述重排序因子序列中包括每个所述待推荐元素对应的重排序因子,所述历史特征数据中包括样本用户的用户特征数据;

根据每个所述待推荐元素的预测排序值和每个所述待推荐元素的重排序因子,确定每个所述待推荐元素的推荐排序值,以根据所述推荐排序值确定所述待推荐元素集合中各个待推荐元素的推荐排列顺序。

在一些可行的实施方式中,上述处理器401用于:

将每个所述待推荐元素的融合特征数据输入到排序值预测模型,通过所述排序值预测模型对所述待推荐元素集合中每个待推荐元素进行排序预测,得到每个所述待推荐元素的预测排序值;

上述处理器401还用于:

将所述待推荐元素集合中每个待推荐元素的历史特征数据输入到所述排序值预测模型,得到每个所述待推荐元素对应的历史排序值集合,其中,任一待推荐元素对应的历史排序值集合中包括:该任一待推荐元素对N个样本用户的N个历史排序值,N为大于0的整数;

基于各个待推荐元素对应的历史排序值集合进行重排序优化处理,得到重排序因子序列。

在一些可行的实施方式中,上述处理器401用于:

根据每个所述待推荐元素的历史排序值集合确定每个所述待推荐元素的等效排序值H(i);

获取每个所述待推荐元素对N个样本用户的总曝光数I(i),以及获取每个所述待推荐元素的价值P(i);

根据各个待推荐元素的等效排序值H(i)、各个待推荐元素对N个样本用户的总曝光数I(i),以及各个待推荐元素的价格P(i)确定所述待推荐元素集合对应的总转化价值Rev;

基于所述总转化价值Re v确定重排序因子序列。

在一些可行的实施方式中,所述总转化价值Rev满足:

其中,所述I(i)表示每个所述待推荐元素i对N个样本用户的总曝光数,H(i)表示每个所述待推荐元素i的等效排序值,P(i)表示每个所述待推荐元素i的价格。

在一些可行的实施方式中,上述处理器401用于:

获取每个所述待推荐元素对每个样本用户u的曝光数I

将每个所述待推荐元素对各个样本用户的曝光数之和确定每个所述待推荐元素对所有样本用户的总曝光数I(i);

其中,当任一待推荐元素在任一样本用户对应的排序序号小于等于M时,所述任一待推荐在任一样本用户的曝光数等于1,当任一待推荐元素在任一样本用户的排序序号大于所述M时,所述任一待推荐在任一样本用户的曝光数等于0,其中,M是根据最大曝光数量确定的。

在一些可行的实施方式中,上述处理器401用于:

获取每个所述待推荐元素的关联信息集合,其中,任一待推荐元素的关联信息集合中包括:任一待推荐元素与N个样本用户中每个样本用户之间的关联信息;

获取初始排序因子序列,根据所述初始排序因子序列中每个所述待推荐元素的初始排序因子、每个所述待推荐元素对应的历史排序值集合、以及每个所述待推荐元素的关联信息集合确定每个所述待推荐元素的等效排序值H(i)。

在一些可行的实施方式中,所述任一待推荐元素与N个样本用户中每个样本用户之间的关联信息包括:所述任一待推荐元素对每个样本用户的曝光数;

所述每个待推荐元素的等效排序值H(i)满足:

其中,γ(i)表示每个所述待推荐元素i对应的初始重排序因子,CR

每个所述待推荐元素在每个样本用户中的转化偏差系数包括:根据每个所述待推荐元素在待推荐元素集合中的排序序号,从每个所述待推荐元素对应的至少一个候选转化偏差系数中确定出的系数;任一待推荐元素的排序序号是根据任一待推荐元素对应的初始重排序因子与历史排序值的乘积确定的。

在一些可行的实施方式中,上述处理器401还用于:

检测各个待推荐元素的平均收入变化值之和是否满足停止条件;

若是,基于重排序因子序列更新规则和初始重排序因子序列,确定新的重排序因子序列,并基于所述新的重排序因子序列进行排序优化处理。

在一些可行的实施方式中,所述重排序因子更新规则是根据第一重排序因子序列与第二重排序因子序列的点除结果、学习率α以及平均收入变化向量ΔR(t)确定的;

所述第一重排序因子序列是指:当前初始重排序因子序列所对应的上一次迭代得到的重排序因子序列;

所述第二重排序因子序列是指:所述上一次迭代得到的重排序因子序列所对应的上一次迭代得到的重排序因子序列。

在一些可行的实施方式中,上述处理器401还用于:

将每个所述待推荐元素的预测排序值和重排序因子相乘,得到每个所述待推荐元素的推荐排序值。

应当理解,在一些可行的实施方式中,上述处理器401可以是中央处理单元(central processing unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integratedcircuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。该存储器402可以包括只读存储器和随机存取存储器,并向处理器401提供指令和数据。存储器402的一部分还可以包括非易失性随机存取存储器。例如,存储器402还可以存储设备类型的信息。

具体实现中,上述终端设备可通过其内置的各个功能模块执行如上述图2至图3中各个步骤所提供的实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。

基于同一发明构思,本申请实施例中提供的智能设备解决问题的原理与有益效果与本申请方法实施例中消息处理方法解决问题的原理和有益效果相似,可以参见方法的实施的原理和有益效果,并且,所述处理器401所执行的各个步骤之间的关系亦可参考前述实施例中相关内容的描述,为简洁描述,在这里不再赘述。

本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令被处理器执行时实现图2至图3中各个步骤所提供的推荐处理方法,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。

上述计算机可读存储介质可以是前述任一实施例提供的推荐处理装置或者上述终端设备的内部存储单元,例如电子设备的硬盘或内存。该计算机可读存储介质也可以是该电子设备的外部存储设备,例如该电子设备上配备的插接式硬盘,智能存储卡(smartmedia card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该电子设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该电子设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。

本申请实施例还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述方法实施例所述的推荐处理方法。

本申请实施例还提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述推荐处理的方法。

本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。

本申请实施例装置中的模块可以根据实际需要进行合并、划分和删减。

本申请的权利要求书和说明书及附图中的术语“第一”、“第二”、“第三”、“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置展示该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

本申请实施例提供的方法及相关装置是参照本申请实施例提供的方法流程图和/或结构示意图来描述的,具体可由计算机程序指令实现方法流程图和/或结构示意图的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。这些计算机程序指令可提供到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或结构示意一个方框或多个方框中指定的功能的步骤。

本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。

本申请实施例装置中的模块可以根据实际需要进行合并、划分和删减。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,可读存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。

以上所揭露的仅为本申请一种较佳实施例而已,当然不能以此来限定本申请之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本申请权利要求所作的等同变化,仍属于发明所涵盖的范围。

相关技术
  • 推荐处理方法、装置、终端设备以及存储介质
  • 直播推荐信息处理方法、装置及终端设备
技术分类

06120112739189