一种资源推荐方法、装置、设备及介质与流程

文档序号:30583250发布日期:2022-06-29 13:38阅读:83来源:国知局
一种资源推荐方法、装置、设备及介质与流程

1.本技术涉及大资源推荐技术领域,尤其涉及一种资源推荐方法、装置、设备及介质。


背景技术:

2.随着移动通信技术的快速发展,应用的种类越来越多,每个应用所能够提供的服务也越来越多。其中,许多应用提供了推送提醒服务,比如,直播通知推送、用户祷告通知推送、新闻推送等,以帮助人们更快地获取到喜欢的资源。但由于每个用户的需求不同,如何为不同用户个性化地推荐资源是提高推送提醒服务的关键。


技术实现要素:

3.本技术实施例提供了一种资源推荐方法、装置、设备及介质,用以为不同用户个性化地推荐资源。
4.本技术实施例提供了一种资源推荐方法,所述方法包括:
5.获取待推荐用户的用户信息、待推荐资源的资源信息、所述待推荐用户与所述待推荐资源的交互行为信息、以及所述待推荐用户与所述待推荐资源的第一匹配度;
6.通过预先训练的点击率预测模型,基于所述交互行为信息、所述用户信息、所述资源信息以及所述第一匹配度,确定所述待推荐用户点击所述待推荐资源的点击率;
7.根据所述点击率,从所有所述待推荐资源中,确定推送给所述待推荐用户的目标资源,并将所述目标资源推送给所述待推荐用户。
8.本技术实施例提供了一种资源推荐装置,所述装置包括:
9.获取单元,用于获取待推荐用户的用户信息、待推荐资源的资源信息、所述待推荐用户与所述待推荐资源的交互行为信息、以及所述待推荐用户与所述待推荐资源的第一匹配度;
10.处理单元,用于通过预先训练的点击率预测模型,基于所述交互行为信息、所述用户信息、所述资源信息以及所述第一匹配度,确定所述待推荐用户点击所述待推荐资源的点击率;
11.推送单元,用于根据所述点击率,从所有所述待推荐资源中,确定推送给所述待推荐用户的目标资源,并将所述目标资源推送给所述待推荐用户。
12.本技术提供了一种资源推荐设备,所述资源推荐设备至少包括处理器和存储器,所述处理器用于执行存储器中存储的计算机程序时实现如上述所述资源推荐方法的步骤。
13.本技术提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述资源推荐方法的步骤。
14.本技术提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行上述如上述所述资源推荐方法的步骤。
15.由于在为待推荐用户推荐资源的过程中,预先训练有点击率预测模型,通过该点击率预测模型,可以基于待推荐用户的用户信息、待推荐资源的资源信息、该待推荐用户与该待推荐资源的交互行为信息、以及该待推荐用户与该待推荐资源的第一匹配度,确定将该待推荐资源推送给待推荐用户后,待推荐用户对该待推荐资源的点击率,使得确定的点击率充分考虑到了用户与资源的个性化匹配关系,从而方便后续基于所有待推荐资源分别对应的点击率,将适合待推荐用户的资源推荐给该待推荐用户,不仅有利于快速确定推送给待推荐用户的目标资源,还有利于增加用户粘性,提高用户体验。
附图说明
16.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
17.图1为本技术提供的一种资源推荐过程示意图;
18.图2为本技术提供的具体的资源推荐流程示意图;
19.图3为本技术实施例提供的一种匹配度预测模型和点击率预测模型的结构示意图;
20.图4为本技术实施例提供的一种确定第一匹配度的流程示意图;
21.图5为本技术提供的一种资源推荐装置的结构示意图;
22.图6为本技术实施例提供的一种资源推荐设备结构示意图。
具体实施方式
23.下面将结合附图对本技术作进一步地详细描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
24.本领域技术人员知道,本技术的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本技术可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
25.在本文中,需要理解的是,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
26.为了方便理解,下面对本技术实施例中涉及的部分概念进行解释:
27.推送(push):推送到用户设备上安装的客户端的弹窗消息,用以吸引用户打开应用,从而提升用户的产品使用率及用户粘性。在语聊房场景下,该消息体包括语音房标题、房主头像、语音房公告。
28.多层感知机(multilayer preceptron,mlp):神经网络的关键组件之一。由多个线性层以及对应的激活函数组成。
29.在一种可能的应用场景中,以推送的资源为语聊房为例,当需要向某一用户推送语聊房时,可以基于推送给该用户的资源,生成push消息,该push消息可以在一个预设的时间点发送至用户设备。若用户未关闭用户设备上的push通知功能,push消息可以通过该用
户设备的通知栏弹出进行显示。用户设备接收到用户对显示的push消息的触发操作后,可以将显示界面上的显示内容跳转到该push消息所对应的实时语聊房,从而方便用户浏览为该用户推荐的语聊房。
30.相关技术中,为了确定为用户推荐的资源,可以通过预先训练的模型,基于获取到的用户信息以及资源信息,确定为用户推送的目标资源。对于该种方式,由于在对该模型进行训练的过程中,追求劣质信息的过滤与优质信息的曝光,忽视了为用户推荐的资源是否适合该用户,使得推荐的资源难以精准捕捉用户的兴趣点,从而无法为不同用户进行个性化地推荐资源,进而无法提升用户的产品使用率。
31.为了解决上述的问题,本技术提供了一种资源推荐方法、装置、设备及介质。由于在为待推荐用户推荐资源的过程中,预先训练有点击率预测模型,通过该点击率预测模型,可以基于待推荐用户的用户信息、待推荐资源的资源信息、该待推荐用户与该待推荐资源的交互行为信息、以及该待推荐用户与该待推荐资源的第一匹配度,确定将该待推荐资源推送给待推荐用户后,待推荐用户对该待推荐资源的点击率,使得确定的点击率充分考虑到了用户与资源的个性化匹配关系,从而方便后续基于所有待推荐资源分别对应的点击率,将适合待推荐用户的资源推荐给该待推荐用户,不仅有利于快速确定推送给待推荐用户的目标资源,还有利于增加用户粘性,提高用户体验。
32.需要说明的是,上述实施例中所举出的应用场景仅是为了方便说明所提出的示例性的场景,并不是对本技术实施例所提供的一种资源推荐方法、装置、设备及介质的应用场景的一种限定。本领域技术人员应当知道,本技术实施例所提供的一种资源推荐方法、装置、设备及介质可以应用到所有需要推荐的应用场景中,比如,视频推荐等。
33.实施例1:
34.图1为本技术提供的一种资源推荐过程示意图,该过程包括:
35.s101:获取待推荐用户的用户信息、待推荐资源的资源信息、所述待推荐用户与所述待推荐资源的交互行为信息、以及所述待推荐用户与所述待推荐资源的第一匹配度。
36.本技术提供的资源推荐方法可以应用于资源推荐设备,该资源推荐设备可以是智能设备,如,移动终端、笔记本电脑等,也可以是服务器,如应用服务器等。
37.在本技术中,待推荐资源可以包括但不限于以下类型:新闻、广告、视频、商品、语聊房等。具体实施过程中,可以根据实际需求进行灵活设置,在此不做具体限定。
38.其中,该资源信息至少包括资源标识,比如,语聊房的房间号、视频id等。可选的,该资源信息还可以包括但不限于以下一种或多种:资源的受欢迎程度、资源的发布方的相关信息、资源的发布时间等信息等。该资源的受欢迎程度可以体现该资源的热度,例如,该资源的点赞数量、和该资源的收藏数量等。一般优质的资源发布方所发布的资源更受用户喜欢,而该资源的发布方的相关信息可以反映该发布方是否优质,比如,关注该发布方的用户数量、该发布方获取到的点赞数量等。
39.在本技术中,用户信息至少包括用户标识,比如用户在目标应用上注册的账号。可选的,该用户信息还可以包括但不限于以下一种或多种:用户的属性数据、用户使用目标应用的行为数据、用户在目标应用上的喜好信息、以及向用户发送的各历史push信息分别对应的相关信息中的至少一种。
40.其中,用户的属性数据主要用于反映用户的基本个人情况,例如可以是用户的年
龄、性别、星座、职业、收入水平、教育程度、居住城市等数据。用户使用目标应用的行为数据可以用于反映用户在过去时间使用目标应用的情况,比如,用户过去一周内使用目标应用的总时长,用户过去一周内浏览资源的数量等。用户在目标应用上的喜好信息可以用于反映用户喜好的资源类型,比如,用户关注的主播、用户点赞的资源等。向用户发送的各历史push信息分别对应的相关信息可以体现用户浏览推荐的资源的情况,比如,用户在过去一周内对推荐的资源进行浏览的次数、用户在过去一周内对推荐的资源的浏览时长等。
41.需要说明的是,目标应用为用户可通过用户设备浏览被推荐的资源的应用。
42.在本技术中,待推荐用户与待推荐资源的交互行为信息可以包括但不限于以下一种或多种:待推荐用户浏览该待推荐资源的时长、待推荐用户浏览该待推荐资源的次数等。
43.在一种示例中,该待推荐用户可以是使用该目标应用的任一用户,也可以是预先配置的用户。还可以是从使用该目标应用的所有用户中的部分用户。具体实施过程中,可以根据实际需求进行灵活设置,在此不做具体限定。例如,若待推荐用户是从使用该目标应用的所有用户中的部分用户,则待推荐用户可以是使用该目标应用的所有用户中,开启推送提醒服务的用户。
44.考虑到现有的push推送方法中是对所有用户进行无差别推送的,如果对一些不愿通过push消息浏览资源的用户进行高频推送,可能会造成这些用户的反感情绪,降低用户对目标应用的信任度,进一步影响目标应用所能提供的内容生态。因此,在本技术中,当从使用该目标应用的所有用户中的部分用户,确定待推荐用户时,可以筛选出一些愿意通过push消息浏览资源的用户进行推送。示例性的,若待推荐用户是从使用该目标应用的所有用户中的部分用户,可以通过如下至少一种方式确定待推荐用户包括:
45.方式一、将交互行为信息满足预设的活跃度要求的用户确定为待推荐用户。
46.一般情况下,经常浏览资源的用户更希望被推送推荐的资源。因此,在本技术中,预设有活跃度要求,以通过该活跃度要求,从所有用户中,筛选出经常浏览资源的用户。示例性的,针对每个用户,资源推荐设备可以获取该用户对资源的交互行为信息,然后判断该用户的交互行为信息是否满足预设的活跃度要求。若确定该交互行为信息满足预设的活跃度要求,说明该用户可能是经常浏览资源的用户,则确定该用户为待推荐用户;若确定该交互行为信息不满足预设的活跃度要求,说明该用户可能不希望浏览资源,则确定该用户不为待推荐用户。
47.其中,该预设的活跃度要求可以为用户是否存在对任一资源的操作信息,例如,上麦、收藏、点击、进入语聊房等,也可以是该用户是否对任一资源的浏览时长达到预设时长阈值等。具体实施过程中,可以根据实际需求进行灵活设置,在此不做具体限定。
48.方式二、可以将新注册账号所对应的用户确定为待推荐用户,以提高新注册账号所对应的用户浏览资源的兴趣度,提高该用户使用目标应用的使用率。
49.示例性的,针对每个账号,资源推荐设备可以获取该账号的注册时长,并判断该注册时长是否小于预设的注册时长阈值。若该注册时长小于预设的注册时长阈值,说明该账号所对应的用户为新注册账号所对应的用户,则可以将该用户确定为待推荐用户;若该注册时长不小于预设的注册时长阈值,说明该账号所对应的用户不为新注册账号所对应的用户,则可以将该用户不确定为待推荐用户。
50.方式三、可以将被推送资源的次数小于预设推送阈值的用户确定为待推荐用户,
这样可以保证每个用户的推荐次数的均衡,从而尽可能提高每个用户的产品使用率。
51.示例性的,针对每个用户,资源推荐设备可以统计该用户被推送资源的次数,然后判断被推送资源的次数是否小于预设推送阈值。若被推送资源的次数小于预设推送阈值,则确定该用户为待推荐用户;若被推送资源的次数不小于预设推送阈值,则确定该用户不为待推荐用户。
52.通过上述确定待推荐用户的方式,可以筛选出不希望浏览资源的用户,从而减少对该类用户推荐资源,避免频繁向该类用户推送资源引起该类用户的反感情绪,降低对该类用户的困扰和影响,进而提高用户体验。
53.当基于上述的实施例确定了待推荐用户之后,可以确定为该待推荐用户推送资源的时间。根据该待推荐用户的用户信息以及该时间,生成推送请求,以使资源推荐设备基于该用户信息,确定为该待推荐用户推送目标资源,并在该时间向该待推荐用户推送目标资源。
54.在一种示例中,待推荐资源可以是目标应用提供的任一可浏览的资源,也可以是预先配置的资源,还可以是从目标应用提供的所有资源中的部分资源。示例性的,可以根据预先配置的用户信息与筛选条件的对应关系,确定待推荐用户对应的筛选条件。针对目标应用提供的所有资源,将满足该筛选条件的资源确定为待推荐资源。
55.例如,确定待推荐用户对应的筛选条件为中文语聊房,则从目标应用提供的所有语聊房中,将中文语聊房确定为待推荐资源。
56.需要说明的是,根据不同的场景和需求,设置不同的筛选条件。具体实施过程中,应根据实际需求进行灵活设置,在此不做具体限定。
57.考虑到与用户越匹配的资源,用户偏好该资源的可能性越高,后续用户浏览该资源的可能性也越大。因此,在本技术中,在确定为待推荐用户推送的目标资源时,还可以获取待推荐用户与待推荐资源的匹配度(记为第一匹配度),以方便后续可以基于用户与资源之间的匹配度,准确地确定为待推荐用户推送的目标资源。
58.在一种示例中,该第一匹配度可以通过人工配置的方式获取,也可以通过算法的方式获取。示例性的,根据预先配置的每个资源与不同用户信息之间的匹配得分,确定该待推荐资源与不同用户信息之间的匹配得分,并根据该待推荐资源与不同用户信息之间的匹配得分,确定待推荐用户的用户信息所对应的匹配得分,根据该待推荐用户所对应的匹配得分,确定待推荐用户与待推荐资源的第一匹配度。
59.需要说明的是,资源推荐设备获取到的数据(包括用户信息、资源信息、交互行为信息以及第一匹配度),可以是资源推荐设备自身采集到的,也可以是接收其它设备发送的。
60.s102:通过预先训练的点击率预测模型,基于所述交互行为信息、所述用户信息、所述资源信息以及所述第一匹配度,确定所述待推荐用户点击所述待推荐资源的点击率。
61.在本技术中,预先训练有点击率预测模型,以通过该点击率预测模型,可以预测用户点击该待推荐资源的概率(记为点击率),进而通过该点击率,确定用户对该待推荐资源的喜好程度。具体的,当基于上述的实施例获取到待推荐用户的用户信息、待推荐资源的资源信息、待推荐用户与待推荐资源的交互行为信息、以及待推荐用户与待推荐资源的第一匹配度之后,将交互行为信息、该用户信息、该资源信息以及该第一匹配度输入到预先训练
的点击率预测模型中。通过该预先训练的点击率预测模型,对该交互行为信息、该用户信息、该资源信息以及该第一匹配度进行相应的处理,从而确定该待推荐用户点击该待推荐资源的点击率。
62.在一种示例中,通过如下公式表示通过预先训练的点击率预测模型,基于交互行为信息、用户信息、资源信息以及第一匹配度,确定待推荐用户点击待推荐资源的点击率:
[0063][0064][0065]
其中,z表示待推荐用户u点击待推荐资源i的点击率,w
t
和b表示点击率预测模型包含的参数,x为待推荐用户u的用户信息和待推荐资源i的资源信息,为待推荐用户u与待推荐资源i的交互行为信息,s(u,i)为待推荐用户u与待推荐资源i之间的第一匹配度。
[0066]
s103:根据所述点击率,从所有所述待推荐资源中,确定推送给所述待推荐用户的目标资源,并将所述目标资源推送给所述待推荐用户。
[0067]
由于待推荐资源可能有多个,针对每个待推荐资源,均执行上述的操作,确定待推荐用户点击该待推荐资源的点击率。当获取到每个待推荐资源分别对应的点击率后,可以基于获取到的每个点击率,从所有待推荐资源中,确定推送给待推荐用户的目标资源。
[0068]
示例性的,预设有目标数量。获取到每个点击率后,可以按照点击率从大到小的顺序,将排序在前的目标数量个待推荐资源确定为目标资源。
[0069]
当基于上述的实施例获取到目标资源后,可以将目标资源推送给待推荐用户。
[0070]
示例性的,可以根据该目标资源,生成push消息,然后根据待推荐用户的用户设备的路由信息,将该push消息发送至该待推荐用户的用户设备。
[0071]
由于在为待推荐用户推荐资源的过程中,预先训练有点击率预测模型,通过该点击率预测模型,可以基于待推荐用户的用户信息、待推荐资源的资源信息、该待推荐用户与该待推荐资源的交互行为信息、以及该待推荐用户与该待推荐资源的第一匹配度,确定将该待推荐资源推送给待推荐用户后,待推荐用户对该待推荐资源的点击率,使得确定的点击率充分考虑到了用户与资源的个性化匹配关系,从而方便后续基于所有待推荐资源分别对应的点击率,将适合待推荐用户的资源推荐给该待推荐用户,不仅有利于快速确定推送给待推荐用户的目标资源,还有利于增加用户粘性,提高用户体验。
[0072]
实施例2:
[0073]
为了向不同用户个性化地推送资源,在上述实施例的基础上,在本技术实施例中,获取所述待推荐用户与所述待推荐资源的第一匹配度,包括:
[0074]
通过预先训练的匹配度预测模型,基于所述用户信息以及所述资源信息,获取所述第一匹配度。
[0075]
在本技术中,可以通过算法确定待推荐用户与待推荐资源的第一匹配的。示例性的,预先训练有匹配度预测模型,当基于上述的实施例获取到用户信息以及资源信息后,通过预先训练的匹配度预测模型,可以基于该用户信息以及资源信息,确定待推荐用户与待推荐资源的第一匹配度。
[0076]
在一种示例中,可通过如下方式通过预先训练的匹配度预测模型,基于该用户信
息以及资源信息,确定待推荐用户与待推荐资源的第一匹配度:
[0077]
方式一、资源推荐设备预先将训练完成的匹配度预测模型保存在本地,后续在进行资源推荐的过程中,资源推荐设备可以通过该匹配度预测模型,实时确定待推荐用户与待推荐资源之间的第一匹配度。
[0078]
示例性的,资源推荐设备获取到待推荐用户的用户信息以及待推荐资源的资源信息后,可以将该用户信息以及资源信息输入到匹配度预测模型中。通过该匹配度预测模型,对输入的用户信息以及资源信息进行处理,确定待推荐用户与待推荐资源之间的第一匹配度。
[0079]
在一种示例中,资源推荐设备可以在将用户信息输入到匹配度预测模型之前,根据用户信息,确定该用户对应的用户特征数据,该用户的用户特征数据用于表示用户所反映出的一些偏好特征。其中,资源推荐设备可以根据实际的业务需求,从用户信息中提取指定维度的信息转化为相应的特征向量,从而得到特征向量形式的用户特征数据。资源推荐设备将用户信息转化为特征向量的方式可以有多种,例如,连续词袋模型(continuous bag-of-word model,cbow)、word2vec模型(word to vector)等,本说明书不对采用的具体方式进行限定。资源推荐设备确定了该用户对应的用户特征数据后,将该用户特征数据替代用户信息输入到匹配度预测模型中。
[0080]
同样的,资源推荐设备可以在将资源信息输入到匹配度预测模型之前,根据资源信息,确定该资源对应的资源特征数据,该资源的资源特征数据用于表示资源所反映出的一些特征。其中,资源推荐设备可以根据实际的业务需求,从资源信息中提取指定维度的信息转化为相应的特征向量,从而得到特征向量形式的资源特征数据。资源推荐设备将资源信息转化为特征向量的方式可以有多种,例如,连续词袋模型(continuous bag-of-word model,cbow)、word2vec模型(word to vector)等,本说明书不对采用的具体方式进行限定。资源推荐设备确定了该资源对应的资源特征数据后,将该资源特征数据替代资源信息输入到匹配度预测模型中。
[0081]
具体实施过程中,资源推荐设备获取到待推荐用户的用户信息以及待推荐资源的资源信息后,可以将该用户信息以及资源信息输入到匹配度预测模型中。通过匹配度预测模型中的用户特征提取网络,基于用户信息,获取用户信息对应的用户匹配特征;并通过匹配度预测模型中的资源特征提取网络,基于资源信息,获取资源信息对应的资源匹配特征;通过匹配度预测模型中的输出层,对用户匹配特征以及资源匹配特征进行内积处理,确定第一匹配度。
[0082]
在一种可能的实施方式中,该匹配度预测模型中至少包括用户特征提取网络、资源特征提取网络以及输入层。其中,用户特征提取网络和资源特征提取网络均与该输入层连接。该用户特征提取网络用于对用户信息进行特征提取,以获取更高维且更抽象的用户匹配特征。同样的,该资源特征提取网络用于对资源信息进行特征提取,以获取更高维且更抽象的资源匹配特征。该输入层用于对用户特征提取层输出的用户匹配特征、以及资源特征提取层输出的资源匹配特征进行处理,比如,进行内积计算,从而确定待推荐用户与待推荐资源之间的第一匹配度。
[0083]
示例性的,资源推荐设备获取到待推荐用户的用户特征数据以及待推荐资源的资源特征数据后,可以将该用户特征数据以及资源特征数据输入到匹配度预测模型中。通过
匹配度预测模型中的用户特征提取网络,基于用户特征数据,获取用户特征数据对应的用户匹配特征;并通过匹配度预测模型中的资源特征提取网络,基于资源特征数据,获取资源特征数据对应的资源匹配特征;通过匹配度预测模型中的输出层,对用户匹配特征以及资源匹配特征进行内积处理,确定第一匹配度。
[0084]
其中,该用户特征提取网络可以包括至少一层mlp网络(记为用户侧mlp网络),例如,三层mlp网络,该资源特征提取网络可以包括至少一层mlp网络(记为资源侧mlp网络),例如,三层mlp网络,资源侧mlp网络中的参数与该用户侧mlp网络中的参数不共享。
[0085]
需要说明的是,为了方便后续获取第一匹配度,该用户特征提取网络中最后一层网络层输出的用户匹配特征,与资源特征提取网络中最后一层网络层输出的资源匹配特征的维数相同。
[0086]
以用户特征提取网络与资源特征提取网络均为三层mlp网络,且网络结构一致为例,若任一层mlp网络是由线性层和relu(rectifiedlinear unit,线性整流函数)激活层组成,则对于任一三层mlp网络的输入输出维度变化情况可参见下表:
[0087][0088]
在一种可能的实施方式中,该用户特征提取网络中还包括维数转化网络,以方便后续的用户侧mlp网络提取用户匹配特征。同样的,该资源特征提取网络中还包括维数转化网络,以方便后续的资源侧mlp网络提取资源匹配特征。
[0089]
在一种可能的实施方式中,获取到用户匹配特征以及资源匹配特征后,可以对用户匹配特征以及资源匹配特征分别进行归一化处理,以避免用户匹配特征以及资源匹配特征中存在的误差对确定的第一匹配度的影响,提高第一匹配度的准确性。
[0090]
示例性的,将该用户特征数据以及资源特征数据输入到匹配度预测模型中。通过匹配度预测模型中的用户特征提取网络包含的维数转换网络,对输入的用户数据进行转换。并通过匹配度预测模型中的资源特征提取网络包含的维数转换网络,对输入的资源数据进行转换。然后通过匹配度预测模型中的用户特征提取网络包含的用户侧mlp网络,基于转换后的用户特征数据,获取用户匹配特征。并通过匹配度预测模型中的资源特征提取网络包含的资源侧mlp网络,基于转换后的资源特征数据,获取资源匹配特征。通过匹配度预测模型中的输出层,对获取到的用户匹配特征以及资源匹配特征进行归一化处理,并对归一化处理后的用户匹配特征以及归一化处理后的资源匹配特征进行内积处理,从而确定第一匹配度。
[0091]
方式二、考虑到push场景具有集中高并发的特点,若线上在固定时间点通过该匹
配度预测模型,确定第一匹配度的方式,会使得资源推荐设备在该固定时间点所需的计算量较大,消耗资源推荐设备大量的计算资源,令其余时间的计算资源闲置,降低资源利用率。并且对于一些时效性较强的资源,比如,语聊房只是在某个时间段进行开放等,需要快速且及时地推送给用户。因此,在本技术中,可以预先保存匹配度预测模型针对不同输入的计算结果,以便后续在确定待推荐用户与待推荐资源之间的第一匹配度时,可直接根据预先保存匹配度预测模型针对不同输入的计算结果,确定第一匹配度。示例性的,根据匹配度预测模型针对不同输入的计算结果,确定用户标识-资源标识与匹配度的对应关系,后续根据用户标识-资源标识与匹配度的对应关系、待推荐用户的用户信息中包含的用户标识、以及待推荐资源的资源信息中包含的资源标识,确定第一匹配度。
[0092]
由于直接保存用户标识-资源标识与匹配度的对应关系所需的存储空间,要大于直接保存用户标识与用户匹配特征的对应关系和资源标识与资源匹配特征的对应关系,例如,假设有10个用户标识以及10个资源标识,若保存用户标识-资源标识与匹配度的对应关系,则需要保存100条数据,若保存用户标识与用户匹配特征的对应关系和资源标识与资源匹配特征的对应关系,则只需保存20条数据。因此,在本技术中,可以直接保存用户标识与用户匹配特征的对应关系和资源标识与资源匹配特征的对应关系,这样可以节省资源推荐设备的存储资源。其中,用户标识与用户匹配特征的对应关系是根据输入到匹配度预测模型的用户信息,以及匹配度预测模型对该用户信息进行处理获取到的用户匹配特征确定的,资源标识与资源匹配特征的对应关系是根据输入到匹配度预测模型的资源信息,以及匹配度预测模型对该资源信息进行处理获取到的资源匹配特征确定的。示例性的,后续在确定待推荐用户与待推荐资源之间的第一匹配度时,可以根据预先保存的用户标识与用户匹配特征的对应关系,确定待推荐用户的用户信息包含的用户标识所对应的目标用户匹配特征,并根据预先保存的资源标识与资源匹配特征的对应关系,确定待推荐资源的资源信息包含的资源标识所对应的目标资源匹配特征。资源推荐设备根据目标用户匹配特征与目标资源匹配特征的内积,确定所述第一匹配度。
[0093]
在一种示例中,通过如下公式对匹配特征(包括用户匹配特征和资源匹配特征)进行归一化处理:
[0094][0095]
其中,表示归一化处理后的匹配特征,e表示匹配特征。
[0096]
在一种示例中,通过如下公式确定待推荐用户u与待推荐资源i之间的第一匹配度:
[0097][0098]
其中,s(u,i)表示第一匹配度,表示归一化处理后的用户匹配特征,表示归一化处理后的资源匹配特征。
[0099]
通过上述方式二的方式,可以实现在线上将匹配度预测模型与点击率预测模型分离部署,减低对资源推荐设备的存储空间的要求,节约了资源推荐设备的存储空间。后续仅通过重演点击率预测模型,即可确定为待推荐用户推送的目标资源,极大地节约了资源推荐设备所需的运行资源,缓解了计算资源利用率低的问题。
[0100]
实施例3:
[0101]
为了准确地确定第一匹配度,在上述各实施例的基础上,在本技术中,所述匹配度预测模型和所述点击率预测模型通过如下方式训练:
[0102]
获取任一样本数据;其中,所述样本数据包括样本用户的用户信息、样本资源的资源信息、所述样本用户与所述样本资源的交互行为信息、以及所述样本用户点击所述样本资源的第一点击率;
[0103]
通过原始匹配度预测模型,基于所述样本数据中包括的用户信息以及资源信息,确定所述样本用户与所述样本资源的第二匹配度;
[0104]
通过原始点击率预测模型,基于所述第二匹配度、和所述样本数据中包括的交互行为信息、用户信息以及资源信息,确定所述样本用户点击所述样本资源的第二点击率;
[0105]
基于所述第一点击率以及所述第二点击率,对所述原始匹配度预测模型和所述原始点击率预测模型进行联合训练,以获取训练完成的匹配度预测模型和点击率预测模型。
[0106]
为了提高匹配度预测模型和点击率预测模型的精确度,需要预先收集用于训练原始匹配度预测模型和原始点击率预测模型的样本集,该样本集中包含有大量的样本数据,以基于该样本集中的样本数据,实现对原始匹配度预测模型和原始点击率预测模型进行训练。其中,任一样本数据包括样本用户的用户信息、样本资源的资源信息、该样本用户与该样本资源的交互行为信息、以及该样本用户点击该样本资源的点击率(记为第一点击率)。例如,若该样本用户点击过该样本资源,则该第一点击率可以为1,若该样本用户未点击过该样本资源,则该第一点击率可以为0。
[0107]
需要说明的是,用于训练匹配度预测模型和点击率预测模型的设备可以与资源推荐设备相同,也可以不同。具体实施过程中,可以根据实际需求进行灵活设置,在此不做具体限定。
[0108]
其中,该匹配度预测模型和点击率预测模型可以理解为一个完整的具有非线形特征变换的广义线性(wide&deep)模型,该点击率预测模型可以是线性二分类模型,也可以是其它深度学习模型,比如,循环卷积神经网络模型等。
[0109]
在本技术实施例中,样本数据可以是在用户设备的工作环境中采集到的,例如使用目标应用的各个用户的用户设备获取到的。
[0110]
具体实施过程中,获取样本集中的任一样本数据,将该样本数据中包括的用户信息以及资源信息输入到原始匹配度预测模型中。通过该原始匹配度预测模型,基于该用户信息以及资源信息,确定该样本用户与该样本资源之间的匹配度(记为第二匹配度)。然后将样本数据中包括的交互行为信息、用户信息以及资源信息,以及获取到的第二匹配度输入到原始点击率预测模型中。通过该原始点击率预测模型,基于样本数据中包括的交互行为信息、用户信息以及资源信息,以及获取到的第二匹配度,确定样本用户点击样本资源的点击率(记为第二点击率)。后续基于该样本数据对应的第一点击率以及第二点击率,确定损失值。根据该损失值,对该原始匹配度预测模型和原始点击率预测模型进行联合训练,以对该原始匹配度预测模型和原始点击率预测模型包含的每个参数的参数值进行调整。
[0111]
在一种示例中,该损失值通过如下公式确定:
[0112]
[0113]
其中,l(w)为第w个样本数据的损失值,y表示第二点击率,表示第一点击率。
[0114]
由于样本集中包含有若干个样本数据,针对每个样本数据,均执行上述的步骤,当满足预设的收敛条件时,该匹配度预测模型和点击率预测模型训练完成。
[0115]
其中,满足预设的收敛条件可以为当前迭代中每个样本数据分别对应的损失值的和,小于预设的损失阈值时,或对原始匹配度预测模型和原始点击率预测模型进行训练的迭代次数达到设置的最大迭代次数等。具体实施中可以灵活进行设置,在此不做具体限定。
[0116]
作为一种可能的实施方式,在进行匹配度预测模型和点击率预测模型训练时,可以把样本集中的样本数据分为训练样本和测试样本,先基于训练样本对原始匹配度预测模型和原始点击率预测模型进行训练,再基于测试样本对上述已训练的匹配度预测模型和点击率预测模型的可靠程度进行验证。
[0117]
基于上述的实施例获取到训练完成的匹配度预测模型和训练完成的点击率预测模型之后,线上在确定为待推荐用户推送的目标资源的召回阶段中,可以只重演点击率预测模型,例如,wide&deep模型中的wide侧模型,即lr模型。在为待推荐用户推送的目标资源前,提前将用户与资源的交互行为信息的对应关系、用户标识与用户匹配特征的对应关系、资源标识与资源匹配特征的对应关系、点击率预测模型所包含的参数、以及匹配度预测模型的输出层所包含的参数保存到线上,以方便后续可以通过待推荐用户的用户标识、待推荐资源的资源标识,在上述对应关系中确定所需的数据,并通过预先训练的点击率预测模型,基于确定的数据,为待推荐用户推送资源。
[0118]
其中,根据参数所处理的数据来源不同可以将点击率预测模型的权重参数分为以下几个部分:w
cross
、w
item
、w
user
。其中,w
cross
对应于处理交叉行为信息的参数、w
item
对应于处理资源信息的参数、w
user
对应于处理用户信息的参数。由于在确定为某一待推荐用户推荐的资源时,该用户信息是固定的,使得点击率预测模型中对用户信息的处理结果也是不变的,其对最终确定的点击率并没有影响。因此,在上传点击率预测模型所包含的参数时,可以仅将w
cross
和w
item
两部分的参数保存到线上,这样可以节省资源推荐设备的存储空间以及网络资源。
[0119]
实施例4:
[0120]
为了避免频繁将某些资源推送给用户而造成长尾现象,在上述各实施例的基础上,在本技术中,所述将所述目标资源推送给所述待推荐用户之后,所述方法还包括:
[0121]
统计所述目标资源在第一预设时长内的推送次数;
[0122]
若确定所述推送次数达到预设的流控阈值,则在第二预设时长内不再将所述目标资源确定为待推荐资源。
[0123]
相关技术中,在向用户推送资源时,一般只注重热门资源的召回,即少部分的热门资源占据了较大的推送流量,而大部分的冷门资源的推送流量不足,导致向用户推送的资源较为单调,降低了推送的资源的多样性,并导致长尾分布现象。并且,在固定时间点将热门资源推送给大量的用户,会造成在较短时间内,大量的用户集中浏览该热门资源,比如大量用户在较短时间内均进入某一热门语聊房,从而给维护该热门资源的设备带来巨大的服务压力。因此,在本技术中,可以对热门资源的推送流量进行控制,尽可能的将推送流量分摊给其它资源。
[0124]
为了实现对资源的推送流量进行控制,在本技术中,预先配置有流控阈值。当基于
上述的实施例将任一目标资源推送给待推荐用户之后,可以统计该目标资源在第一预设时长内的推送次数。然后判断该推送次数是否达到预设的流控阈值。若确定该推送次数达到预设的流控阈值,说明该目标资源已占据大量的推送资源,需要进行流控,则在第二预设时长内不再将目标资源确定为待推荐资源,从而实现在第二预设时长内不再将该目标资源推送给其他用户。若确定该推送次数未达到预设的流控阈值,说明该目标资源不需要进行流控,则不对该目标资源进行处理。
[0125]
示例性的,以资源为语聊房为例,当基于上述的实施例确定了推送给用户的语聊房后,统计该语聊房的推送次数。若确定该语聊房的推送次数达到预设的流控阈值,说明该语聊房已占据大量的推送资源,需要进行流控,则在第二5分钟内不再将该语聊房确定为待推荐的语聊房,即在这五分钟内的召回阶段,直接过滤掉该语聊房,不会确定该语聊房与待推荐用户之间的第一匹配度,也不会确定待推荐用户点击该语聊房的点击率,更不会将该语聊房推送给待推荐用户。
[0126]
实施例5:
[0127]
下面通过具体实施例对本技术提供的资源推荐方法进行介绍,图2为本技术提供的具体的资源推荐流程示意图,该流程包括:
[0128]
s201:训练匹配度预测模型和点击率预测模型。
[0129]
在一种示例中,匹配度预测模型和点击率预测模型通过如下方式训练:
[0130]
获取任一样本数据;其中,样本数据包括样本用户的用户信息、样本资源的资源信息、样本用户与样本资源的交互行为信息、以及样本用户点击样本资源的第一点击率;
[0131]
通过原始匹配度预测模型,基于样本数据中包括的用户信息以及资源信息,确定样本用户与样本资源的第二匹配度;
[0132]
通过原始点击率预测模型,基于第二匹配度、和样本数据中包括的交互行为信息、用户信息以及资源信息,确定样本用户点击样本资源的第二点击率;
[0133]
基于第一点击率以及第二点击率,对原始匹配度预测模型和原始点击率预测模型进行联合训练,以获取训练完成的匹配度预测模型和点击率预测模型。
[0134]
s202:确定待推荐用户,并生成待推荐用户的推送请求。
[0135]
在一种示例中,通过如下至少一种方式确定待推荐用户:
[0136]
将交互行为信息满足预设的活跃度要求的用户确定为待推荐用户;
[0137]
将新注册账号所对应的用户确定为待推荐用户;
[0138]
将被推送资源的次数小于预设推送阈值的用户确定为待推荐用户。
[0139]
s203:确定待推荐资源。
[0140]
s204:获取待推荐用户的用户信息、待推荐资源的资源信息、待推荐用户与待推荐资源的交互行为信息、以及待推荐用户与待推荐资源的第一匹配度。
[0141]
对于待推荐用户u的推送请求,资源推荐设备可以依次对待推荐资源集合i=[i1,i2,

,in]中的待推荐资源,组织需要输入到点击率预测模型中的数据。
[0142]
在一种示例中,可以通过预先训练的匹配度预测模型,实时基于用户信息以及资源信息,获取第一匹配度。具体的,通过匹配度预测模型中的用户特征提取网络,基于用户信息,获取用户信息对应的用户匹配特征;并
[0143]
通过匹配度预测模型中的资源特征提取网络,基于资源信息,获取资源信息对应
的资源匹配特征;
[0144]
通过匹配度预测模型中的输出层,对用户匹配特征以及资源匹配特征进行内积处理,确定第一匹配度。
[0145]
其中,资源推荐设备可以在将用户信息输入到匹配度预测模型之前,根据用户信息,确定该用户对应的用户特征数据,该用户的用户特征数据用于表示用户所反映出的一些偏好特征。其中,资源推荐设备可以根据实际的业务需求,从用户信息中提取指定维度的信息转化为相应的特征向量,从而得到特征向量形式的用户特征数据。资源推荐设备确定了该用户对应的用户特征数据后,将该用户特征数据替代用户信息输入到匹配度预测模型中。
[0146]
同样的,资源推荐设备可以在将资源信息输入到匹配度预测模型之前,根据资源信息,确定该资源对应的资源特征数据,该资源的资源特征数据用于表示资源所反映出的一些特征。其中,资源推荐设备可以根据实际的业务需求,从资源信息中提取指定维度的信息转化为相应的特征向量,从而得到特征向量形式的资源特征数据。资源推荐设备确定了该资源对应的资源特征数据后,将该资源特征数据替代资源信息输入到匹配度预测模型中。
[0147]
例如,图3为本技术实施例提供的一种匹配度预测模型和点击率预测模型的结构示意图,如图3所示,将该用户特征数据以及资源特征数据输入到匹配度预测模型中。通过匹配度预测模型中的用户特征提取网络包含的维数转换网络,对输入的用户数据进行转换。并通过匹配度预测模型中的资源特征提取网络包含的维数转换网络,对输入的资源数据进行转换。然后通过匹配度预测模型中的用户特征提取网络包含的用户侧mlp网络,基于转换后的用户特征数据,获取用户匹配特征。并通过匹配度预测模型中的资源特征提取网络包含的资源侧mlp网络,基于转换后的资源特征数据,获取资源匹配特征。通过匹配度预测模型中的输出层,对获取到的用户匹配特征以及资源匹配特征进行归一化处理,并对归一化处理后的用户匹配特征以及归一化处理后的资源匹配特征进行内积处理,从而确定第一匹配度。
[0148]
在另一种示例中,根据预先保存的用户标识与用户匹配特征的对应关系,确定待推荐用户的用户信息包含的用户标识所对应的目标用户匹配特征,并根据预先保存的资源标识与资源匹配特征的对应关系,确定待推荐资源的资源信息包含的资源标识所对应的目标资源匹配特征。资源推荐设备根据目标用户匹配特征与目标资源匹配特征的内积,确定第一匹配度。
[0149]
s205:通过预先训练的点击率预测模型,基于交互行为信息、用户信息、资源信息以及第一匹配度,确定待推荐用户点击待推荐资源的点击率。
[0150]
仍如图3所示,预先训练的点击率预测模型为lr模型,通过lr模型,基于待推荐用户u的用户信息和待推荐资源i的资源信息x,待推荐用户u与待推荐资源i的交互行为信息以及待推荐用户u与待推荐资源i之间的第一匹配度s(u,i),确定待推荐用户u点击待推荐资源i的点击率z。
[0151]
图4为本技术实施例提供的一种确定第一匹配度的流程示意图。如图4所示,线上在确定为待推荐用户推送的目标资源的召回阶段中,可以只重演点击率预测模型,例如,wide&deep模型中的wide侧模型,即lr模型。在为待推荐用户推送的目标资源前,提前将用
户与资源的交互行为信息的对应关系、用户标识与用户匹配特征的对应关系、资源标识与资源匹配特征的对应关系、点击率预测模型所包含的参数、以及匹配度预测模型的输出层所包含的参数保存到线上,以方便后续可以通过待推荐用户的用户标识、待推荐资源的资源标识,在上述对应关系中确定所需的数据,并通过预先训练的点击率预测模型,基于确定的数据,为待推荐用户推送资源。
[0152]
其中,根据参数所处理的数据来源不同可以将点击率预测模型的权重参数分为以下几个部分:w
cross
、w
item
、w
user
。其中,w
cross
对应于处理交叉行为信息的参数、w
item
对应于处理资源信息的参数、w
user
对应于处理用户信息的参数。由于在确定为某一待推荐用户推荐的资源时,该用户信息是固定的,使得点击率预测模型中对用户信息的处理结果也是不变的,其对最终确定的点击率并没有影响。因此,在上传点击率预测模型所包含的参数时,可以仅将w
cross
和w
item
两部分的参数保存到线上,这样可以节省资源推荐设备的存储空间以及网络资源。
[0153]
s206:根据点击率,从所有待推荐资源中,确定推送给待推荐用户的目标资源,并将目标资源推送给待推荐用户。
[0154]
通过上述s205的步骤可以获取到每个待推荐资源分别对应的点击率,从而生成点击率序列y=[y1,y2,
…yn
],将点击率较大的目标数量个资源确定为目标资源。
[0155]
s207:统计目标资源在第一预设时长内的推送次数。
[0156]
s208:判断该推送次数是否大于预设的流量阈值,若是,s209,否则,s202。
[0157]
s209:在第二预设时长内不再将目标资源确定为待推荐资源。
[0158]
实施例6:
[0159]
上述主要从方法流程的角度对本技术提供的方案进行了介绍。可以理解的是,为了实现上述功能,装置可以包括执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本技术能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0160]
本技术实施例提供了一种资源推荐装置,图5为本技术提供的一种资源推荐装置的结构示意图,该装置包括:
[0161]
获取单元51,用于获取待推荐用户的用户信息、待推荐资源的资源信息、所述待推荐用户与所述待推荐资源的交互行为信息、以及所述待推荐用户与所述待推荐资源的第一匹配度;
[0162]
处理单元52,用于通过预先训练的点击率预测模型,基于所述交互行为信息、所述用户信息、所述资源信息以及所述第一匹配度,确定所述待推荐用户点击所述待推荐资源的点击率;
[0163]
推送单元53,用于根据所述点击率,从所有所述待推荐资源中,确定推送给所述待推荐用户的目标资源,并将所述目标资源推送给所述待推荐用户。
[0164]
需要说明的是,本技术实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。在本技术的实施例中的各功能单元可以集成在
一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0165]
实施例7:
[0166]
如图6为本技术实施例提供的一种资源推荐设备结构示意图,在上述各实施例的基础上,本技术实施例还提供了一种资源推荐设备,如图6所示,包括:处理器61、通信接口62、存储器63和通信总线64,其中,处理器61,通信接口62,存储器63通过通信总线64完成相互间的通信;
[0167]
存储器63中存储有计算机程序,当程序被处理器61执行时,使得处理器61执行如下步骤:
[0168]
获取待推荐用户的用户信息、待推荐资源的资源信息、所述待推荐用户与所述待推荐资源的交互行为信息、以及所述待推荐用户与所述待推荐资源的第一匹配度;
[0169]
通过预先训练的点击率预测模型,基于所述交互行为信息、所述用户信息、所述资源信息以及所述第一匹配度,确定所述待推荐用户点击所述待推荐资源的点击率;
[0170]
根据所述点击率,从所有所述待推荐资源中,确定推送给所述待推荐用户的目标资源,并将所述目标资源推送给所述待推荐用户。
[0171]
由于上述资源推荐设备解决问题的原理与资源推荐方法相似,因此上述资源推荐设备的实施可以参见方法的实施,重复之处不再赘述。
[0172]
实施例8:
[0173]
在上述各实施例的基础上,本技术实施例还提供了一种计算机可读存储介质,计算机可读存储介质内存储有可由处理器执行的计算机程序,当程序在处理器上运行时,使得处理器执行时实现如下步骤:
[0174]
获取待推荐用户的用户信息、待推荐资源的资源信息、所述待推荐用户与所述待推荐资源的交互行为信息、以及所述待推荐用户与所述待推荐资源的第一匹配度;
[0175]
通过预先训练的点击率预测模型,基于所述交互行为信息、所述用户信息、所述资源信息以及所述第一匹配度,确定所述待推荐用户点击所述待推荐资源的点击率;
[0176]
根据所述点击率,从所有所述待推荐资源中,确定推送给所述待推荐用户的目标资源,并将所述目标资源推送给所述待推荐用户。
[0177]
在某些可能的实施方式中,获取所述待推荐用户与所述待推荐资源的第一匹配度,包括:
[0178]
通过预先训练的匹配度预测模型,基于所述用户信息以及所述资源信息,获取所述第一匹配度。
[0179]
本技术实施例提供的计算机可读介质解决问题的原理与资源推荐方法解决问题的原理相同,具体内容可参见上述方法实施例。
[0180]
实施例9:
[0181]
作为本实施例的另一种形式,提供一种包含指令的计算机程序产品,该计算机程序产品包括指令,该指令被执行时可以执行上述方法实施例中资源推荐方法。
[0182]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实
施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0183]
本技术是参照根据本技术的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程资源推荐设备的处理器以产生一个机器,使得通过计算机或其他可编程资源推荐设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0184]
这些计算机程序指令也可存储在能引导计算机或其他可编程资源推荐设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0185]
这些计算机程序指令也可装载到计算机或其他可编程资源推荐设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1