CN110032678B - 业务资源推送方法和装置、存储介质和电子装置 - Google Patents
业务资源推送方法和装置、存储介质和电子装置 Download PDFInfo
- Publication number
- CN110032678B CN110032678B CN201910276813.6A CN201910276813A CN110032678B CN 110032678 B CN110032678 B CN 110032678B CN 201910276813 A CN201910276813 A CN 201910276813A CN 110032678 B CN110032678 B CN 110032678B
- Authority
- CN
- China
- Prior art keywords
- target
- application
- account
- vector
- accounts
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种业务资源推送方法和装置、存储介质和电子装置。其中,该方法包括:在第一应用的帐号集合中确定与所述第一应用的第一帐号相关的第一组目标帐号,其中,所述第一帐号在所述第一应用中操作过的第一业务资源与所述第一组目标帐号在所述第一应用中操作过的第二业务资源相似;获取所述第一组目标帐号通过所述第一应用操作的第二应用集合;向所述第一帐号推送所述第二应用集合中的部分或全部。本发明解决了相关技术中的业务资源推送方法存在推送效率差的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种业务资源推送方法和装置、存储介质和电子装置。
背景技术
目前,一些应用的客户端(例如,在线视频媒体平台的客户端,新闻阅读的客户端,网页阅读的客户端等)在主要提供一种业务功能(例如,视频媒体相关业务、新闻阅读相关业务、网页浏览相关业务等)的同时,还可以提供其他业务(例如,游戏)的推送。
相关技术中,在进行业务资源推送时,通常采用基于好友关系的推送方式,例如,对于用户A,可以向用户A推送其好友用户B或者用户C操作过的其他业务资源。然而,基于好友关系的向用户推送业务资源,推送的业务资源可能并不是该用户需要的,导致该用户并不会对推送的业务资源进行操作,导致业务资源推送效率差。
发明内容
本发明实施例提供了一种业务资源推送方法和装置、存储介质和电子装置,以至少解决相关技术中的业务资源推送方法存在推送效率差的技术问题。
根据本发明实施例的一个方面,提供了一种业务资源推送方法,包括:在第一应用的帐号集合中确定与所述帐号集合中的第一帐号相关的第一组目标帐号,其中,所述第一帐号在所述第一应用中操作过的第一业务资源与所述第一组目标帐号在所述第一应用中操作过的第二业务资源相似;获取所述第一组目标帐号通过所述第一应用操作的第二应用集合;向所述第一帐号推送所述第二应用集合中的部分或全部。
根据本发明实施例的另一个方面,提供了一种业务资源推送方法,包括:确定使用第一帐号登录的第一应用的客户端的显示页面被滑动到目标显示区域,其中,所述目标显示区域用于显示向所述第一帐号推送的一个或多个第二应用,所述一个或多个应用为第二应用集合中的部分或全部,所述第二应用集合为第一组目标帐号通过所述第一应用操作的第二应用的集合,所述第一组目标帐号为从所述第一应用的帐号集合中确定出的与所述第一帐号相关的一组帐号,所述第一帐号在所述第一应用中操作过的第一业务资源与所述第一组目标帐号在所述第一应用中操作过的第二业务资源相似;在所述目标显示区域向所述第一帐号推送的所述一个或多个第二应用。
根据本发明实施例的又一方面,还提供了一种业务资源推送装置,包括:第一确定单元,用于在第一应用的帐号集合中确定与该帐号集合中的第一帐号相关的第一组目标帐号,其中,所述第一帐号在所述第一应用中操作过的第一业务资源与所述第一组目标帐号在所述第一应用中操作过的第二业务资源相似;获取单元,用于获取所述第一组目标帐号通过所述第一应用操作的第二应用集合;推送单元,用于向所述第一帐号推送所述第二应用集合中的部分或全部。
根据本发明实施例的又一方面,还提供了一种业务资源推送装置,包括:第二确定单元,用于确定使用第一帐号登录的第一应用的客户端的显示页面被滑动到目标显示区域,其中,所述目标显示区域用于显示向所述第一帐号推送的一个或多个第二应用,所述一个或多个应用为第二应用集合中的部分或全部,所述第二应用集合为第一组目标帐号通过所述第一应用操作的第二应用的集合,所述第一组目标帐号为从所述第一应用的帐号集合中确定出的与所述第一帐号相关的一组帐号,所述第一帐号在所述第一应用中操作过的第一业务资源与所述第一组目标帐号在所述第一应用中操作过的第二业务资源相似;显示单元,用于在所述目标显示区域向所述第一帐号推送的所述一个或多个第二应用。
根据本发明实施例的又一方面,还提供了一种存储介质,上述存储介质存储有计算机程序,上述计算机程序被设置为运行时执行上述的方法。
根据本发明实施例的另一方面,还提供了一种电子装置,包括存储器、处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过所述计算机程序执行上述的方法。
在本发明实施例中,采用根据帐号操作第一应用中的业务资源的相似关系,向帐号推送相似的帐号通过第一应用操作的第二应用的方式,通过在第一应用的帐号集合中确定与该帐号集合中的第一帐号相关的第一组目标帐号,其中,该第一帐号在该第一应用中操作过的第一业务资源与上述第一组目标帐号在该第一应用中操作过的第二业务资源相似;获取上述第一组目标帐号通过该第一应用操作的第二应用集合;向该第一帐号推送该第二应用集合中的部分或全部,由于在第一应用中操作的业务资源可以从侧面刻画出用户的兴趣爱好,因此,基于操作第一应用中的业务资源的相似关系确定出的第一组目标帐号通过第一应用操作的第二应用,被第一帐号的用户喜爱的概率更大,从而实现了提高业务资源推送效率的技术效果,进而解决了相关技术中的业务资源推送方法存在推送效率差的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种业务资源推送方法的应用环境的示意图;
图2是根据本发明实施例的一种可选的业务资源推送方法的流程示意图;
图3是根据本发明实施例的一种可选的业务资源推送方法的示意图;
图4是根据本发明实施例的另一种可选的业务资源推送方法的示意图;
图5是根据本发明实施例的另一种可选的业务资源推送方法的流程示意图;
图6是根据本发明实施例的又一种可选的业务资源推送方法的流程示意图;
图7是根据本发明实施例的又一种可选的业务资源推送方法的示意图;
图8是根据本发明实施例的又一种可选的业务资源推送方法的示意图;
图9是根据本发明实施例的又一种可选的业务资源推送方法的流程示意图;
图10是根据本发明实施例的一种可选的业务资源推送装置的结构示意图;
图11是根据本发明实施例的另一种可选的业务资源推送装置的结构示意图;
图12是根据本发明实施例的一种可选的电子装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本发明实施例中,提供了一种上述业务资源推送方法的实施例。作为一种可选的实施方式,该业务资源推送方法可以但不限于应用于如图1所示的应用环境中。
如图1所示,运行有第一应用的多个终端102通过网络104与服务器106相连。第一应用可以使用帐号进行登录。在第一应用中可以操作该第一应用中包含的业务资源,并且可以通过该第一应用操作一个或多个第二应用。第一应用中的帐号集合可以包含多个终端102登录第一应用的帐号。
服务器106可以通过网络104从一个或多个终端102获取帐号集合中的帐号在第一应用中操作过的业务资源的信息。对于帐号集合中的第一帐号,服务器106可以在帐号集合中确定与第一帐号相关的第一组目标帐号,其中,该第一帐号在该第一应用中操作过的第一业务资源与该第一组目标帐号在该第一应用中操作过的第二业务资源相似,获取该第一组目标帐号通过该第一应用操作的第二应用集合,并向第一帐号推送一个或多个第二应用,该一个或多个第二应用可以是第二应用集合中的部分或全部。推送的方式可以是:发送一个或多个应用的应用信息。
对于使用第一帐号登录第一应用的终端,该终端可以在接收到服务器106推送的一个或多个第二应用之后,可以在第一应用的显示界面的目标显示区域中显示该一个或多个第二应用。
可选地,在本实施例中,上述终端可以包括但不限于以下至少之一(图1中示出的手机仅为示例):手机、平板电脑、笔记本电脑、台式PC机、及用于运行应用程序的硬件设备。上述网络可以包括但不限于以下至少之一:有线网络和无线网络,上述有线网络可以包括但不限于以下至少之一:广域网、城域网、局域网。上述无线网络可以包括但不限于:蓝牙、WIFI及其他实现无线通信的网络,上述服务器可以包括但不限于:上述第一应用的后台服务器,用于进行应用推送的服务器。上述只是一种示例,本实施例对此不做任何限定。
根据本发明实施例的一方面,提供了一种业务资源推送方法,该业务资源推送方法可以应用于如图1所示的服务器106或终端102中,考虑到对终端资源的占用,一般应用于服务器中106中,如图2所示,该方法包括:
S202,在第一应用的帐号集合中确定与帐号集合中的第一帐号相关的第一组目标帐号,其中,第一帐号在第一应用中操作过的第一业务资源与第一组目标帐号在第一应用中操作过的第二业务资源相似;
S204,获取第一组目标帐号通过第一应用操作的第二应用集合;
S206,向第一帐号推送第二应用集合中的部分或全部。
可选地,在本实施例中,上述业务资源推送方法可以但不限于应用于游戏应用的推送过程中,其中,上述业务资源推送方法可以包括但不限于应用于在线视频媒体应用、新闻应用、社交应用以及其他具备业务资源操作功能的应用中,以实现根据操作业务资源来推送用户感兴趣的第二应用。例如,根据用户在在线视频媒体应用中观看的视频资源的相似性,向用户推荐与其相似的用户通过该在线视频媒体应用点击并下载的游戏应用,上述仅是一种示例,本实施例中对此不做任何限定。
下面结合图2对本发明实施例中的业务资源推送方法进行说明。
在步骤S202中,在第一应用的帐号集合中确定与帐号集合中的第一帐号相关的第一组目标帐号,其中,第一帐号在第一应用中操作过的第一业务资源与第一组目标帐号在第一应用中操作过的第二业务资源相似。
第一应用可以是在线视频媒体应用、新闻应用、社交应用以及其他具备业务资源操作功能的应用。
上述帐号集合可以是第一应用中的全部帐号的集合,也可以是从全部帐号中选取出的部分帐号的集合。选取的方式可以是:从全部帐号随机抽取,可以是根据用户帐号体系(例如,是第三方应用帐号登录,还是注册的帐号,不同的第三方应用帐号可以属于不同的用户帐号体系),可以是根据用户设备的类型(例如,Android和iOS),可以是根据帐号对应的用户的性别(例如,男,女),还可以是帐号对应的用户的年龄段(例如,10岁以下,10-20岁,20-30岁,30-40岁,40-60岁,60岁以上等)。上述只是一种示例,本实施例对此不做任何限定。
第一应用可以提供不同类型的业务资源,例如,视频资源、图片资源、网页资源(文本资源)等。业务资源可以通过资源特征进行表示。资源特征可以是资源的描述信息,资源的描述信息可以是资源本身(例如,网页的网页内容),资源的简介(例如,视频简介,网页摘要),也可以是资源的标签(例如,视频属性标签,图像属性标签,网页标签)。
例如,对于第一应用提供的视频资源,其具有视频属性标签可以包括:标签1(视频类型,综艺、电视剧、电影、纪录片等),标签2(视频属性,言情、推理、历史、童话等),标签3(所属国别),标签4(电视剧名称,例如,“aaa”),标签5(主角名,例如,“aaa”),标签6(演员名,例如“bbb”)等等,与该视频资源对应的标签为[标签1,标签2,…,标签6,…]。
标签个数越多,表示业务资源的信息越丰富,表示业务资源的准确性越高,计算相似的复杂度也越高。视频属性标签可以根据需要进行限定,本实施例对此不做任何限定。
在获取到帐号集合之后,对于帐号集合中的第一帐号,可以在帐号集合中确定与第一帐号相关的第一组目标帐号,第一帐号在第一应用中操作过的第一业务资源与第一组目标帐号在第一应用中操作过的第二业务资源相似。第一业务资源可以包括第一应用提供的一种或多个业务资源,第二业务资源可以包括第一应用提供的一种或多个业务资源。
第一业务资源与第二业务资源的相似可以是根据用于表示第一业务资源的资源特征和用于表示第二业务资源的资源特征进行确定。上述相似可以是特征的语义相似(特征的语义是否相似),也可以是特征的词语相似(特征包含的词语是否相同)。
为了简化第一业务资源与第二业务资源相似的确定过程,可以将用户(帐号)进行向量化表示。
作为一种可选的实施方式,可以根据用户在第一应用中操作过的业务资源对应的标签,确定用于表示该用户的向量。对于标签集合中的预定标签,如果用户在第一应用中操作过的业务资源对应的标签中包含该预定标签,则将表示该用户的向量中与该预定标签对应的元素(例如,第n位的元素)的元素值设置为第一预定值(例如,1),否则,设置为第二预定值(例如,0)。
例如,标签集合中包含10个标签,标签1、标签2、……、标签10,如果在第一应用中操作过的业务资源对应的标签中包含标签1、标签3、标签6、标签10,则与该用户对应的标签向量可以表示为[1,0,1,0,0,1,0,0,0,1]。
由于不同的业务资源可以包含相同的标签,因此,同一标签在用户在第一应用中操作过的业务资源对应的标签中可能出现多次。在确定用于表示该用户的向量时,可以将多次出现的标签按一次进行计算,也可以按照多次进行计算。
例如,标签集合中包含10个标签,标签1、标签2、……、标签10,如果在第一应用中操作过的业务资源对应的标签中包含标签1(1次)、标签3(3次)、标签6(1次)、标签10(2次),则与该用户对应的标签向量可以表示为[1,0,1,0,0,1,0,0,0,1],也可以表示为[1,0,3,0,0,1,0,0,0,2]。
作为另一种可选的实施方式,也可根据用户(帐号)对业务资源已执行的预定操作的操作信息和与该业务资源对应的标签,确定用于表示该用户的向量。
用户对业务资源执行操作的操作信息可以从侧面刻画出用户对该业务喜好程度,例如,点击操作的次数、观看操作的时长等。因此,可以结合用户对业务资源已执行的预定操作的操作信息和与该业务资源对应的标签,来确定用于表示该用户的向量。
在本发明的一个可选实施例中,在第一应用的帐号集合中确定与帐号集合中的第一帐号相关的第一组目标帐号可以包括:根据第一帐号对第一业务资源已执行的第一目标操作的第一操作信息和与第一业务资源对应的第一标签,确定出第一向量;根据帐号集合中的帐号对第二业务资源已执行的第一目标操作的第二操作信息和第二业务资源对应的第二标签,确定出第二向量;根据第二向量与第一向量之间的向量相似度,从帐号集合中确定出第一组目标帐号。
第一向量和第二向量的维度可以根据第一应用的全部业务资源所对应的不同标签的个数确定,也可以根据该帐号集合中的全部帐号在第一应用中操作过的全部业务资源所对应的不同标签的个数确定,还可以通过其他方式进行确定。
第一目标操作可以是用户对于第一应用中的业务资源的交互行为,上述交互行为可以包括但不限于:点击观看第一应用中的业务资源,第一操作信息可以包括但不限于以下至少之一:执行第一目标操作的时间,执行第一目标操作持续的时间,执行第一目标操作的次数等。
在第一目标操作的第一操作信息包括对第一业务资源中的各业务资源的点击次数的情况下,为了避免由于用户误点击对确定的标签向量的影响,可以设置观看时间阈值(例如,5s),对于观看时间小于观看时间阈值的点击操作,不进行统计。
对同一业务资源用户可能执行多次第一目标操作(例如,多次点击),可以在用户每次点击(或者,点击之后观看的时长超过观看时间阈值)之后,将该业务资源对应的标签赋予给该用户一次。
同一业务资源可能包含多个独立部分(如,电视剧可以包含不同的剧集以及续集,电影包含上下部,综艺节目可以包含多期),不同部分对应的标签可能不同,因此,可以将同一业务资源的多个独立部分作为单独的业务资源,在用户对该单独的业务资源执行一次第一目标操作(点击,或点击之后观看的时长超过观看时间阈值)之后,将该单独的业务资源对应的标签赋予给该用户一次。
将标签赋予给用户的操作可以由用户操作业务资源实时触发。在将业务资源的标签赋予给帐号集合中的各帐号之后,每个帐号可以对应于一个标签集合。
存在一些标签几乎出现在所有的用户属性分布上的场景,这些标签对用户兴趣刻画的作用可以忽略不计。同时,同一个用户中的不同数量的标签对兴趣刻画的作用不同。为了更准确的刻画用户兴趣,可以将业务资源对应的标签看成词语,用户看成文档,通过计算每个标签的TFIDF(term frequency-inverse document frequency,词频-逆文档频率),来确定标签向量每一个维度的值。
可选地,根据第一帐号对第一业务资源已执行的第一目标操作的第一操作信息和第一业务资源对应的第一标签,确定出第一向量包括:确定出与第一帐号对应的第一标签集合,其中,第一标签集合通过在第一帐号对第一业务资源的目标业务资源执行第一目标操作的情况下,将目标业务资源对应的第一标签添加到第一标签集合中获得;确定出与第一标签集合中的目标标签对应的第一目标值,其中,第一目标值与第一标签集合中包含的目标标签的数量和第一标签集合中包含的标签的总数量的商正相关,与帐号集合中包含的帐号的总数量和第二组目标帐号包含的帐号的数量的商正相关,其中,与第二组目标帐号中的帐号对应的第二标签中包括目标标签;根据第一目标值,确定出第一向量,其中,第一向量中与目标标签对应的目标元素的元素值为第一目标值。
在确定第一向量时,首先获取与第一帐号对应的第一标签集合。在第一帐号对第一业务资源的目标业务资源执行第一目标操作的情况下,将目标业务资源对应的第一标签添加到第一标签集合中。第一业务资源中的不同资源对应的第一标签可以相同,也可以不同。
例如,在检测到第一帐号对该目标资源执行点击操作,或者,执行点击操作且观看时长超过预定时间阈值之后,将该将目标业务资源对应的第一标签添加到第一标签集合,添加的方式可以是直接放入第一标签集合,也可以是按照标签进行添加,如果第一标签集合中已包含该标签,则将该标签的统计次数加1,如果未包含该标签,则将添加到标签,并将该标签的统计次数设为1。
在获取到第一标签集合之后,计算第一向量中各维度的值(元素的元素值)。
对于第一标签集合中的目标标签,第一向量中与目标标签对应的维度的值(即,第一目标值)可以根据以下两个值确定:第一标签集合中,目标标签的数目占第一标签集合中的标签的总数目的比例(第一比例,正相关),以及,对应的标签集合中包含目标标签的帐号的数目占帐号集合中的帐号的总数目的比例(第二比例,负相关)。第一目标值与第一比例值的相关函数及相关系数,以及与第二比例值的相关函数及相关系数,可以根据需要进行设定。
例如,可以将业务资源对应的标签看成词语,用户看成文档,确定该第一标签集合中的各标签对应的词频-逆文档频率,计算公式如公式(1)所示,
TFIDFi,j=tfi,j*idf i(1)
其中,ni,j表示标签ti在用户dj中出现的次数,|D|表示所有用户的总数,|{j:t∈dj}|表示所有用户的文档中出现标签ti的文档数量。为了减小相似度进行的复杂度,可以过滤掉idf值小于给定阈值的标签。
在得到第一标签集合中的各标签对应的各维度的值(例如,TFIDF值)之后,可以将第一帐号表示为第一向量,其中,向量的维度大小为标签总量,向量的每一个维度的值为对应标签的TFIDF值。对于第一标签集合中不包含的标签,可以将该标签对应的维度置0。
需要说明的是,以上仅示出了确定第一向量的方式,对于帐号集合中其他帐号对应的第二向量的确定方式与第一向量类似,在此不作赘述。
在得到各帐号的向量化表示之后(第一向量和第二向量),可以确定各第二向量和第一向量之间的向量相似度,还可以确定任意两个第二向量之间的向量相似度。向量相似度可以采用余弦相似度的计算方式进行确定,也可以采用其他用于计算向量相似度的方式进行确定,本实施例中对此不做具体限定。
在得到各第二向量和第一向量之间的向量相似度之后,可以根据第二向量与第一向量之间的向量相似度,从帐号集合中确定出第一组目标帐号。
作为一种可选的实施方式,确定第一组目标帐号的方式可以是:根据第二向量与第一向量之间的向量相似度的大小,从帐号集合中选取出预定个数(M个)的目标帐号作为该第一组目标帐号。选取目标帐号的方式可以包括多种。
选取的方式可以是:根据设定的阈值(预定阈值),依次从帐号集合中选择出帐号,如果用于表示选取出的帐号的第二向量与第一向量的向量相似度大于预定阈值,将其作为第一组目标帐号中的目标帐号,否则,继续选取帐号;直到第一组目标帐号中的5目标帐号的个数达到预定个数。
选取的方式也可以是:按照帐号集合中的每个目标帐号对应的第二向量与第一向量之间的向量相似度从大到小的顺序对帐号集合中的各帐号进行排序,选取前预定个数的帐号作为第一组目标帐号。
作为另一种可选的实施方式,确定第一组目标帐号的方式还可以是:至少根据第三向量与第一向量之间的向量相似度、以及第四向量与第三向量之间的向量相似度,在帐号集合中确定出第一组目标帐号,其中,第三向量是在目标关系网络中与第一帐号具有一阶邻居关系的第二帐号对应的向量,第四向量是在目标关系网络中通过第二帐号与第一帐号具有二阶邻居关系的第三帐号,目标关系网络为无向加权的关系网络,目标关系网络的节点表示帐号集合中的帐号,目标关系网络中的两个节点之间的边上的权重为两个节点所对应的第二向量之间的向量相似度。
用户对于第二应用的交互行为(例如,浏览、点击或者下载),不止受用户的一阶邻居影响。也就是说,用户的局部影响力不仅会影响其一阶邻居,也可能会对其二阶邻居甚至多阶邻居产生影响。例如,用户朋友的朋友可能会对该用户对第二应用(例如,游戏)的偏好产生一定的影响。
在确定出各第二向量与第一向量之间的相似度,以及任意两个第二向量之间的相似度之后,可以将计算的相似度(即,用户之间的关系)映射到目标关系网络上,形成无向加权的用户关系网络G,即W→G(U,E,W),其中,U为用户集合,E为用户之间边的集合,在用户关系网络中,节点表示用户(帐号)。Wi,j表示为用于表示用户ui的向量和用于表示uj的向量之间的相似度,如果Wi,j>0,则表明用户关系网络中ui和uj之间存在边Ei,j,并且边上的权重为Wi,j。如图3所示,将用户关系映射到网络之后,可以利用图计算的方法探求用户之间更多的关系。
用户关系网络中,节点表示用户,边上的权重表示用户之间关系的权重。类比信息传播理论,用户对其一阶或者多阶邻居的决策具有一定的影响。例如具有消息x,x由用户A传播到A的朋友B,B又将该消息x传播到B的朋友C,用户C在听到该消息x时,可能会做出与x相关的决策。
在将用户之间的关系映射到图上,得到用户关系网络之后,可以推断出用户的局部或者k阶邻居关系。如图3所示,图3示出了节点a的一阶邻居和二阶邻居。可以至少根据第一帐号与其一阶邻居的相似度以及一阶邻居与二阶邻居的相似度,在帐号集合中确定出第一组目标帐号。
对于根据一阶邻居和二阶邻居确定第一组目标帐号的场景,第一组目标帐号的确定方式可以是:确定第一帐号与其一阶邻居的相似度;确定第一帐号与其二阶邻居的相似度;根据相似度的大小从其一阶邻居和其二阶邻居中确定出第一组目标帐号。
第一帐号与其二阶邻居的相似度可以是:第一相似度与第二相似度的加权乘积。其中,第一相似度为第一帐号与其一阶邻居(第一帐号与其二阶邻居之间的节点)的相似度,第二相似度为其一阶邻居与其二阶邻居的相似度。加权的权值可以考虑影响力在间接关联关系中的衰减,根据经验进行设定。
对于第一帐号与其二阶邻居之间有多个一阶邻居的场景,可以分别计算第一帐号与其二阶邻居对应于各一阶邻居的相似度,再对得到的相似度进行求和。
例如,节点b是节点a的二阶邻居,分别通过节点c和节点d相连,则节点b与节点a之间的相似度可以表示为:f1*Wa,c*Wc,b+f2*Wa,d*Wd,b,其中,f1和f2为加权系数,两者可以相同,也可以不同。
对于高于二阶的节点,计算相似度的方式与二阶类似,区别主要在与加权系数的不同,在此不做赘述。
需要说明的是,如果两个节点之间具有多种关系(例如,即可以是一阶邻居,又可以是二阶邻居),仅选择最近的关系作为两个节点之间的关系。如图3所示,节点b2即可认为是节点a的一阶邻居,同时也可认为是节点a的二阶邻居(通过节点b1),两者的关系仅为一阶邻居关系。
可选地,在本发明实施例中,采用“采样和聚集”策略在用户关系网络上进行深度随机游走,挖掘更深层次的用户之间的关系:一方面,用户关系网络中节点数目的庞大导致直接求解用户的局部乃至全局影响是耗时耗力的;另一方面,用户不可能跟其所有的一阶甚至多阶朋友进行消息传播,例如,用户A具有100个一阶朋友,但是A只与其10个好友保持日常联系。
采样策略指的是:根据当前用户节点,依据给定的策略采样当前用户节点的一阶邻居节点;聚集策略指的是将采样得到的k阶用户的信息按照给定的策略聚集,以便于服务当前用户节点。
深度随机游走序列的生成方式为假定当前游走到的节点为vi,从该节点vi的一阶邻居中按照权重大小随机采样一个邻居节点,并将该邻居节点作为随机游走序列达到的当前节点。每一条随机游走停止的条件为达到设定的阈值长度。
假定S为模型训练的数据库,S由所有的随机游走序列聚集得到,ns为随机游走序列s的游走长度,aj={vj-c,…,vj+c}为给定目标节点vj的上下文节点,聚集上下文节点的信息为节点vj服务。则模型的目标是:低维向量化每一个节点(用户),以此最大化以下目标函数:
其中,概率P(vi|vj)的值采用softmax函数进行计算:
其中,om和o'm分别为节点m的输入向量化表示和输出向量化表示。为了加速模型训练的时间,可以采用Hierarchical Softmax方法对上述目标函数近似求解,从而得出每个用户的低维表示向量。具体而言,如图4所示,将每个用户节点作为二叉树的叶子节点,将上述P(vi|vj)的求解转换为层次树中的特定路径的概率大小。假定的路径由一系列树中的节点唯一确定,f0,f1,…,fm,则P(vi|vj)的计算公式如公式(2)所示:
其中,表示二叉树节点ft的父节点的向量化表示。通过上述处理,P(vi|vj)的计算复杂度由O(|U|)降低为O(log|U|)。
对于深度随机游走策略,可以根据边的权重进行随机采样,并降低了节点通过两步游走返回自身的概率;还可以采用其它的游走策略,例如,限制从特定节点游走的概率大小,游走长度的随机性等。
上述随机游走策略假定同一个游走序列上的窗口内的用户之间具有较强的关系。还可以采用其它的聚集策略,例如明确地定义k个聚集函数,收集目标用户的k阶邻居信息、游走窗口参数的调整等。
上述随机游走策略采用的随机游走策略相对于最终的第二应用推荐目标是无监督的,还会可以采用有监督的随机游走策略。
在得出每个帐号的低维表示向量之后,可以根据帐号集合中除了第一帐号以外的其他帐号的低维表示向量,与第一帐号的低维表示向量之间的相似度,从帐号集合中确定出第一组目标帐号。确定的方式与前述类似,在此不做赘述。
在步骤S204中,获取第一组目标帐号通过第一应用操作的第二应用集合。
在第一应用中,可以提供多个第二应用的推送。用户可以根据提供的推送对第二应用执行操作(例如,点击,下载等)。对于第一组目标帐号,可以获取每个目标帐号通过第一应用操作的第二应用,得到第二应用集合。
例如,第二应用为游戏,第一帐号为用户A,第一组目标帐号包括:用户B和用户C,用户B通过第一应用操作的游戏包括:游戏g1,游戏g2,游戏g3,用户B通过第一应用操作的游戏包括:游戏g1,游戏g2,游戏g3,和游戏g4,则第二应用集合包括:{g1,g2,g3,g4}。
在步骤S206中,向第一帐号推送第二应用集合中的部分或全部。
在获取到第二应用集合之后,可以将第二应用集合的全部或者部分推送给第一帐号。可以将第二应用集合的全部推送给第一帐号,或者,从第二应用集合中随机选取出部分推送给第一帐号。
为了提高用户对推送的第二应用的兴趣度,提高推送效率,在向第一帐号推送第二应用集合中的部分或全部之前,可以首先对第二应用集合中的第二应用进行排序。
可选地,根据第一组目标帐号中的每个目标帐号通过第一应用对第二应用集合中的第二应用已执行的第二目标操作的第三操作信息,对第二应用集合中的第二应用进行排序。
在对第二应用集合中的第二应用进行排序时,可以首先根据第一组目标帐号中的每个目标帐号通过第一应用对第二应用集合中的第二应用已执行的第二目标操作的第三操作信息,确定出每个第二应用的推荐指数;根据每个第二应用的推荐指数对第二应用进行排序。
可以采用多种方式确定各第二应用的推荐指数。
作为一种可选的实施方式,可以将第一组目标帐号中通过第一应用操作第二应用的帐号的数量作为第二应用的推荐指数:可以根据第一组目标帐号中通过第一应用操作第二应用的帐号的数量由多到少的顺序对第二应用进行排序。
作为另一种可选的实施方式,可以将通过第一应用操作过第二应用的目标帐号与第一帐号之间的相似度的求和结果作为第二应用的推荐指数:将通过第一应用操作过第二应用的目标帐号与第一帐号之间的相似度进行求和,得到第二应用的推荐指数;根据推荐指数从高到低的顺序对第二应用进行排序。
作为又一种可选的实施方式,可以根据每个目标帐号对第二应用的偏好值,以及每个目标帐号与第一帐号之间的相似度,确定出各第二应用的推荐指数;根据推荐指数从高到低的顺序对第二应用进行排序。
可选地,根据第一组目标帐号中的每个目标帐号通过第一应用对第二应用集合中的第二应用已执行的第二目标操作的第三操作信息,对第二应用集合中的第二应用进行排序包括:根据每个目标帐号通过第一应用对第二应用集合中的第二应用已执行的第二目标操作的操作次数,确定出每个目标帐号对第二应用的偏好值,其中,偏好值为通过目标权重对操作次数进行加权求和得到的结果;根据用于表示每个目标帐号的第五向量与用于表示第一帐号的第六向量之间的向量相似度,对每个目标帐号对第二应用的偏好值进行加权求和,得到与第二应用对应的第二目标值;按照第二应用集合中的第二应用对应的第二目标值从大到小的顺序,对第二应用集合中的第二应用进行排序。
通过第一应用对第二应用集合中的第二应用已执行的第二目标操作可以有多种,例如,点击、下载、打开,具体分解为点击(未安装)、下载、下载完成、注册完成、下载暂停、下载恢复、下载取消、下载失败、打开(已安装)。第二目标操作的第三操作信息可以是:执行各第二目标操作的操作次数。
在确定目标帐号对第二应用的偏好值时,可以为第二目标操作赋予经验性权重,则目标帐号对第二应用的偏好值为:执行各第二目标操作的操作次数的加权求和。
下面结合具体示例对确定目标帐号对第二应用的偏好值的方式进行说明。在第二应用为游戏的场景,用户对于游戏的交互行为(该交互行为由时间、用户帐号体系类型、用户id以及游戏id唯一确定)有点击和下载,具体分解为点击、下载、下载完成、注册完成、下载暂停、下载恢复、下载取消、下载失败。可以将上述这些分解的行为分别赋予经验性权重0.5,0.6,0.7,0.8,0.3,0.8,0.2,0.5。同时,可以得到每个用户的点击和下载次数。采用加权求和的方式求解用户对于游戏的偏好值r,即,ru,i=x1y1+x2y2+…+xKyK,其中,ru,i为用户u对游戏i的偏好值,xk表示用户的游戏行为权重,yk表示相应游戏行为的次数,K表示游戏行为的数量。
在获取到每个目标帐号对第二应用的偏好值之后,可以根据每个目标帐号与第一帐号之间的相似度对每个目标帐号对第二应用的偏好值进行加权求和,得到该第二应用的推荐指数。
在根据推荐指数从高到低的顺序对第二应用进行排序之后,可以得到候选第二应用列表,可以将第二应用列表中的全部第二应用按照顺序推送给第一帐号,也可以将第二应用列表中的前n个第二应用按照顺序推送给第一帐号。
下面结合具体示例对候选第二应用列表的确定方式进行说明。在本示例中,第二应用为游戏。
在得到每个用户在同一向量空间下的低维向量化表示之后,对于给定的目标用户,采用cosine相似度计算方法计算其它用户与目标用户的权重,并将权重大小进行排序,取排序前m个相应用户作为目标用户比较相似的用户集合U。
在得到各用户对各游戏的偏好值之后,可以利用基于用户的协同过滤的思想,给目标用户(第一帐号对应的用户)推荐候选游戏列表,推荐指数的计算公式如公式(4)所示:
其中,ru,i表示用户u对于游戏i的偏好值,Wu,u’表示用户u和u’之间的权重大小,函数aggr采用了加权求和的方式对游戏偏好值进行整合。通过排序目标用户对相应游戏的偏好值,得出该用户的候选游戏推荐列表。
例如,目标用户为A,与u相似的用户为用户B和用户C,相应权重为0.8和0.6,用户A、B和C具有的游戏行为偏好分别为:{g1:0.5},{g1:0.5,g2:0.8,g3:0.4},{g1:0.2,g2:0.3,g3:0.8,g4:0.9},则目标用户A对于游戏g2的偏好值为0.8*0.8+0.6*0.3=0.82,同理得出A对于g3和g4的偏好值为0.8和0.54,因此,目标用户A的游戏推荐列表为{g2:0.82,g3:0.8,g4:0.54}。
在本实施例中,采用根据帐号操作第一应用中的业务资源的相似关系,向帐号推送相似的帐号通过第一应用操作的第二应用的方式,通过在第一应用的帐号集合中确定与该帐号集合中的第一帐号相关的第一组目标帐号,其中,该第一帐号在该第一应用中操作过的第一业务资源与上述第一组目标帐号在该第一应用中操作过的第二业务资源相似;获取上述第一组目标帐号通过该第一应用操作的第二应用集合;向该第一帐号推送该第二应用集合中的部分或全部,解决了相关技术中的业务资源推送方法存在推送效率差的技术问题,提高了业务资源推送的效率。
作为一种可选的技术方案,在第一应用的帐号集合中确定与帐号集合中的第一帐号相关的第一组目标帐号包括:
S1,根据第一帐号对第一业务资源已执行的第一目标操作的第一操作信息和与第一业务资源对应的第一标签,确定出第一向量;
S2,根据帐号集合中的帐号对第二业务资源已执行的第一目标操作的第二操作信息和第二业务资源对应的第二标签,确定出第二向量;
S3,根据第二向量与第一向量之间的向量相似度,从帐号集合中确定出第一组目标帐号。
通过本发明实施例,通过将用户向量化表示,并基于向量之间的相似度表示用户之间的相似度(用户之间的关系),简化了用户之间相似度的确定过程,提高了第一组目标帐号的确定过程。
可选地,根据第一帐号对第一业务资源已执行的第一目标操作的第一操作信息和第一业务资源对应的第一标签,确定出第一向量包括:
S11,确定出与第一帐号对应的第一标签集合,其中,第一标签集合通过在第一帐号对第一业务资源的目标业务资源执行第一目标操作的情况下,将目标业务资源对应的第一标签添加到第一标签集合中获得;
S12,确定出与第一标签集合中的目标标签对应的第一目标值,其中,第一目标值与第一标签集合中包含的目标标签的数量和第一标签集合中包含的标签的总数量的商正相关,与帐号集合中包含的帐号的总数量和第二组目标帐号包含的帐号的数量的商正相关,其中,与第二组目标帐号中的帐号对应的第二标签中包括目标标签;
S13,根据第一目标值,确定出第一向量,其中,第一向量中与目标标签对应的目标元素的元素值为第一目标值。
通过本发明实施例,在确定用于表示用户的向量时综合了标签表示用户的能力,提高了向量表示用户的准确性。
可选地,根据第二向量与第一向量之间的向量相似度,从帐号集合中确定出第一组目标帐号包括:
S31,在帐号集合中确定出第一组目标帐号,其中,第一组目标帐号中的每个目标帐号对应的第二向量与第一向量之间的向量相似度大于预定阈值;或者,
S32,按照帐号集合中的每个目标帐号对应的第二向量与第一向量之间的向量相似度从大到小的顺序,将帐号集合中的前M个目标帐号确定为第一组目标帐号,其中,M为自然数。
通过本发明实施例,通过多种方式从帐号集合确定出第一组目标帐号,可以适用于不同的场景,提高了第一组目标帐号确定方式的多样性。
作为一种可选的技术方案,根据第二向量与第一向量之间的向量相似度,从帐号集合中确定出第一组目标帐号包括:
S33,至少根据第三向量与第一向量之间的向量相似度、以及第四向量与第三向量之间的向量相似度,在帐号集合中确定出第一组目标帐号,其中,第三向量是在目标关系网络中与第一帐号具有一阶邻居关系的第二帐号对应的向量,第四向量是在目标关系网络中通过第二帐号与第一帐号具有二阶邻居关系的第三帐号,目标关系网络为无向加权的关系网络,目标关系网络的节点表示帐号集合中的帐号,目标关系网络中的两个节点之间的边上的权重为两个节点所对应的第二向量之间的向量相似度。
通过本发明实施例,至少根据用户的二阶邻居关系确定第一组目标帐号,可以提高第一组目标帐号确定的准确性。
作为一种可选的技术方案,向第一帐号推送第二应用集合中的部分或全部包括:
S1,根据第一组目标帐号中的每个目标帐号通过第一应用对第二应用集合中的第二应用已执行的第二目标操作的第三操作信息,对第二应用集合中的第二应用进行排序;
S2,根据排序得到的排序结果,从第二应用集合中选取出部分或者全部的第二应用向第一帐号推送。
通过本发明实施例,通过对第二应用集合中的应用进行排序并推送,可以根据用户可能的感兴趣的程度进行第二应用的推送,提高了推送的效率。
作为一种可选的技术方案,根据第一组目标帐号中的每个目标帐号通过第一应用对第二应用集合中的第二应用已执行的第二目标操作的第三操作信息,对第二应用集合中的第二应用进行排序包括:
S11,根据每个目标帐号通过第一应用对第二应用集合中的第二应用已执行的第二目标操作的操作次数,确定出每个目标帐号对第二应用的偏好值,其中,偏好值为通过目标权重对操作次数进行加权求和得到的结果;
S12,根据用于表示每个目标帐号的第五向量与用于表示第一帐号的第六向量之间的向量相似度,对每个目标帐号对第二应用的偏好值进行加权求和,得到与第二应用对应的第二目标值;
按照第二应用集合中的第二应用对应的第二目标值从大到小的顺序,对第二应用集合中的第二应用进行排序。
通过本发明实施例,对第二应用的排序综合考虑了用户之间的相似度以及用户对第二应用的偏好程度,提高了排序结果的准确性。
作为一种可选的技术方案,
在第一应用的帐号集合中确定与帐号集合中的第一帐号相关的第一组目标帐号包括:在第一应用的帐号集合中确定与帐号集合中的第一帐号相关的第一组目标帐号,其中,第一帐号在第一应用中操作过的第一视频资源与第一组目标帐号在第一应用中操作过的第二视频资源相似;
获取第一组目标帐号通过第一应用操作的第二应用集合包括:获取第一组目标帐号通过第一应用操作的游戏应用集合。
通过本发明实施例,根据用户第一应用中操作视频资源的相似性,向用户推荐相似用户通过第一应用操作过的第二应用,可以提高用户操作推荐游戏的可能性,提高了游戏推送的效率。
下面结合具体示例本实施例中的业务资源推送方法进行说明。在本示例中,第一应用提供的业务资源为视频资源,第二应用为游戏。图5示出了基于深度随机游走的游戏推荐算法,基于该算法,可以为用户推荐其可能感兴趣的游戏。
根据本发明实施例的另一方面,还提供了一种业务资源推送方法,该业务资源推送方法可以应用于如图1所示的终端102中。如图6所示,该方法包括:
S602,确定使用第一帐号登录的第一应用的客户端的显示页面被滑动到目标显示区域,其中,目标显示区域用于显示向第一帐号推送的一个或多个第二应用,一个或多个应用为第二应用集合中的部分或全部,第二应用集合为第一组目标帐号通过第一应用操作的第二应用的集合,第一组目标帐号为从第一应用的帐号集合中确定出的与第一帐号相关的一组帐号,第一帐号在第一应用中操作过的第一业务资源与第一组目标帐号在第一应用中操作过的第二业务资源相似;
S604,在目标显示区域向第一帐号推送的一个或多个第二应用。
可选地,在本实施例中,上述业务资源推送方法可以但不限于应用于游戏应用的推送过程中,其中,上述业务资源推送方法可以包括但不限于应用于在线视频媒体应用、新闻应用、社交应用以及其他具备业务资源操作功能的应用中,以实现根据操作业务资源来推送用户感兴趣的第二应用。例如,根据用户在在线视频媒体应用中观看的视频资源的相似性,向用户推荐与其相似的用户通过该在线视频媒体应用点击并下载的游戏应用,上述仅是一种示例,本实施例中对此不做任何限定。
下面结合图6对本发明实施例中的业务资源推送方法进行说明。
在步骤S602中,确定使用第一帐号登录的第一应用的客户端的显示页面被滑动到目标显示区域。
上述客户端运行在用户终端(例如,终端102)中,该客户端使用第一帐号登录。目标显示区域可以位于客户端的当前显示界面(例如,主界面、业务资源的显示界面)中。目标显示区域可以位于当前显示界面的预定位置,可以通过上下滑动当前显示界面方式,滑动到目标显示区域,目标显示区域也可以位于单独的显示界面或者单独的显示区域,例如,通过切换显示界面,将客户端的显示界面被滑动到目标显示区域,或者,通过在当前的显示界面中通过滑动操作,调取出目标显示区域,调取的目标显示区域可以位于当前显示界面的上层,或者,添加到当前显示界面。
在步骤S602之后,客户端可以通过用户终端向服务器发送请求消息,其中,请求消息用于请求获取向第一帐号推送的一个或多个第二应用的应用信息;接收服务器发送的用于响应请求消息的响应消息,其中,响应消息中携带有一个或多个第二应用的应用信息。
一个或多个第二应用的应用信息可以包括但不限于:第二应用的应用图标,用于跳转至第二应用的下载界面的链接等。
服务器响应请求消息,确定向第一帐号推送的一个或多个第二应用的方式与前述类似,在此不做赘述。
在步骤S604中,在目标显示区域向第一帐号推送的一个或多个第二应用。
在接收到服务器推送的一个或多个第二应用之后,可以在目标显示区域中显示一个或多个第二应用。在目标显示区域的显示一个或多个第二应用的方式可以有多种,例如,可以在目标显示区域中显示第一数量的第二应用,在检测到用户对目标区域执行的滑动操作或点击操作之后,依次显示出其余的第二应用,或者,切换到其他的第一数量的第二应用等。又例如,可以在目标显示区域中显示第一数量的第二应用,在检测到对目标按钮的触控操作之后,跳转至一个或多个第二应用的显示界面。上述仅为示例,本实施例对此不做限定。
例如,如图7所示,第一应用提供的业务资源为视频资源,第二应用为游戏,在视频显示界面被下滑到用于显示推送的游戏的显示区域时,在上述显示区域中显示推送的游戏。由于用户并未安装推送的游戏,在游戏图标下显示游戏的“下载”按钮。又例如,如图8所示,由于用户已安装推送的游戏,在游戏图标下显示游戏的“进入”按钮。
可选地,在步骤S604之后,检测到对一个或多个第二应用中的目标应用执行的目标操作;在客户端所在的终端安装有目标应用的情况下,响应目标操作,跳转至目标应用;或者,在客户端所在的终端未安装有目标应用的情况下,响应目标操作,跳转至目标应用的下载界面。
用户可以对目标显示区域推送的第二应用进行操作,例如,执行目标操作(点击、双击、滑动),如果在用户终端上安装有***作的第二应用,则跳转至目标应用(例如,启动目标应用),如果在用户终端上未安装***作的第二应用,则跳转至***作的第二应用的下载界面。
在本实施例中,采用根据帐号操作第一应用中的业务资源的相似关系,向帐号推送相似的帐号通过第一应用操作的第二应用的方式,通过在第一应用的帐号集合中确定与该帐号集合中的第一帐号相关的第一组目标帐号,其中,该第一帐号在该第一应用中操作过的第一业务资源与上述第一组目标帐号在该第一应用中操作过的第二业务资源相似;获取上述第一组目标帐号通过该第一应用操作的第二应用集合;向该第一帐号推送该第二应用集合中的部分或全部,在检测到客户端的显示页面被下滑到目标显示区域时,在该目标显示区域显示向第一帐号推送的一个或多个第二应用,解决了相关技术中的业务资源推送方法存在推送效率差的技术问题,提高了业务资源推送的效率。
作为一种可选的技术方案,在确定使用第一帐号登录的第一应用的客户端的显示页面被下滑到目标显示区域之后,上述方法还包括:
S1,向服务器发送请求消息,其中,请求消息用于请求获取向第一帐号推送的一个或多个第二应用的应用信息;
S2,接收服务器发送的用于响应请求消息的响应消息,其中,响应消息中携带有一个或多个第二应用的应用信息。
通过本发明实施例,在客户端的显示页面被下滑到目标显示区域之后,通过请求-响应的方式获取推送的一个或多个第二应用的应用信息,可以保证推送的一个或多个第二应用的实时性,提高了业务资源推送的准确性。
作为一种可选的技术方案,在目标显示区域向第一帐号推送的一个或多个第二应用之后,上述方法还包括:
检测到对一个或多个第二应用中的目标应用执行的目标操作;
在客户端所在的终端安装有目标应用的情况下,响应目标操作,跳转至目标应用;或者,
在客户端所在的终端未安装有目标应用的情况下,响应目标操作,跳转至目标应用的下载界面。
通过本发明实施例,在检测到对目标应用执行的目标操作之后,跳转至目标应用或跳转至目标应用的下载界面,便于用户对推送的第二应用进行操作,提高了用户体验。
下面结合具体示例对上述业务资源推送方法进行说明。在本示例中,第一应用提供的业务资源包括:视频资源,第二应用为游戏。
本示例中所提供的业务资源推送方法通过视频标签构建用户与用户之间的关系网络,在该关系网络上推断用户的局部或者k阶邻居关系,然后基于推断的深度关系和已知的用户与游戏的交互数据,利用表示学习和用户协同过滤的思想实现个性化的游戏推荐。
协同过滤的方法可以包括但不限于:基于内存的方法(memory-based method)和基于模型的方法(model-based method)。本示例中主要针对基于内存的方法中的基于用户协同过滤的方法,该方法的主要思想是根据不同用户对游戏的交互行为、偏好数据或者自身属性,计算用户之间的关系,从而给用户推荐与其相似的用户所喜好的游戏。
本示例中的业务资源推送方法,针对以下内容进行了设计:
1)用户关系网络中,用户对于游戏的交互行为,例如浏览、点击或者下载,不止受用户的一阶邻居影响。即,用户的局部影响力不仅会影响其一阶邻居,也可能会对其二阶邻居甚至多阶邻居产生影响。例如,朋友的朋友可能会对我们的游戏偏好产生一定的影响。
2)如果第一应用的日活用户数据量庞大,将整个用户关系网络作为模型输入的计算复杂度非常高,模型需要大量的时间进行训练。
本示例中的业务资源推送方法主要依据用户的行为记录,例如观看的视频、与游戏的交互行为等,发现用户的隐式兴趣,从而进行用户的个性化游戏推荐。
如图9所示,本示例中的业务资源推送方法包括以下步骤:
S1,构建用户关系网络。
服务器可以周期地(例如,一天、两天等)获取各用户的候选游戏推荐列表。为获取各用户的候选游戏推荐列表,可以首先构建用户关系网络。
由于只存在少量用户对游戏具有直接的交互行为,因此,可以根据用户其它的行为构建用户关系网络,以此探求用户之间的关系。用户在使用第一应用时,会根据自身的兴趣观看感兴趣的视频。因此,当一个用户观看了视频后,该视频对应的视频标签,例如“电视剧名称”、“综艺片段”等,会被当成用户的视频属性标签。因此,每个用户具有一个或者多个视频属性标签。
将视频属性标签看成词语,用户看成文档,计算每个用户的每个标签的TFIDF值,并过滤掉idf值小于给定阈值的标签,每个用户可以表示为视频属性标签向量,其中,向量的维度大小为标签的总量,向量的每一个维度的值为对应标签的TFIDF值。
根据得到的用户视频属性标签向量,我们采用简单直接的cosine相似度方法计算用户之间的关系,并将上述关系映射到图上,形成无向加权的用户关系网络G,即W→G(U,E,W),其中Wi,j=cosine(vi,vj),vi和vj为用户ui和uj的标签向量,U为用户集合,E为用户之间边的集合;如果Wi,j>0,则表明用户关系网络中ui和uj之间存在边Ei,j,并且边上的权重为Wi,j。构建的用户关系网络可以如图3所示。
S2,根据深度随机游走策略,低维向量化表示每一个节点。
根据深度随机游走策略,低维向量化表示每一个节点(用户)的方式与前述类似,在此不做赘述。
S3,确定各用户对游戏的偏好值。
计算偏好值的方式与前述类似,在此不做赘述。
S4,获取候选游戏推荐列表。
在低维向量化表示每一个节点之后,可以得到在同一向量空间下,每个用户的低维向量化表示。对于给定的目标用户(第一帐号),采用cosine相似度计算方法计算其它用户与目标用户的权重,并将权重大小进行排序,取排序前m个相应用户作为目标用户比较相似的用户集合U。
根据用户集合U中各用户与目标用户的相似度,以及各用户对游戏的偏好值,获取候选游戏推荐列表,获取的方式与前述类似,在此不作赘述。
S5,将获取的候选游戏推荐列表推送给客户端。
服务器在获取到各用户的候选游戏推荐列表之后,将获取的候选游戏推荐列表推送给各用户(即,各用户登录的客户端)。
S6,检测到视频页被下拉至游戏横滑处。
用户在使用第一应用观看视频时,下拉视频页至游戏横滑区域(游戏横滑处)。在游戏横滑处可以显示服务器推送的游戏,用户可以浏览、点击或者下载感兴趣的游戏。
S7,在游戏横划处显示候选游戏推荐列表中的游戏。
在视频页被下拉至游戏横滑处时,可以在游戏横划处显示服务器推送的候选游戏推荐列表中的游戏。
需要说明的是,也可以通过请求-响应的方式由客户端主动向服务器请求候选游戏推荐列表。服务器周期地为各用户生成候选游戏推荐列表(周期地更新各用户生成候选游戏推荐列表)。客户端在检测到用户打开视频页或者检测到视频页被下拉至游戏横滑处时,向服务器发送请求消息,以请求本用户的候选游戏推荐列表。
候选游戏推荐列表可以作为最终游戏横划处的游戏列表的候选列表。最终游戏列表的产生需要综合多种因素,例如多个算法产生的候选列表的组合、运营方对游戏推荐列表的重新定义以及人工的干预等。
可以以点击通过率CTR(Click Through Rate)为评价指标,对本示例中的业务资源推送方法。
通过本示例,采用“采样和聚集”策略计算用户的局部或者k阶邻居关系,并利用深度随机游走的表示学习思想将用户向量化。求解得到的用户向量不仅用于游戏推荐,还可以用于其它机器学习应用的算法输入。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
根据本发明实施例的又一方面,还提供了一种用于实施上述业务资源推送方法的业务资源推送装置。如图10所示,该装置包括:
(1)第一确定单元1002,用于在第一应用的帐号集合中确定与帐号集合中的第一帐号相关的第一组目标帐号,其中,第一帐号在第一应用中操作过的第一业务资源与第一组目标帐号在第一应用中操作过的第二业务资源相似;
(2)获取单元1004,用于获取第一组目标帐号通过第一应用操作的第二应用集合;
(3)推送单元1006,用于向第一帐号推送第二应用集合中的部分或全部。
可选地,在本实施例中,上述业务资源推送装置可以位于服务器中,可以但不限于应用于游戏应用的推送过程中,其中,上述业务资源推送方法可以包括但不限于应用于在线视频媒体应用、新闻应用、社交应用以及其他具备业务资源操作功能的应用中,以实现根据操作业务资源来推送用户感兴趣的第二应用。例如,根据用户在在线视频媒体应用中观看的视频资源的相似性,向用户推荐与其相似的用户通过该在线视频媒体应用点击并下载的游戏应用,上述仅是一种示例,本实施例中对此不做任何限定。
可选地,在本实施例中,第一确定单元1002可以用于执行前述步骤S202,获取单元1004可以用于执行前述步骤S204,推送单元1006可以用于执行前述步骤S206。
在本实施例中,采用根据帐号操作第一应用中的业务资源的相似关系,向帐号推送相似的帐号通过第一应用操作的第二应用的方式,通过在第一应用的帐号集合中确定与该帐号集合中的第一帐号相关的第一组目标帐号,其中,该第一帐号在该第一应用中操作过的第一业务资源与上述第一组目标帐号在该第一应用中操作过的第二业务资源相似;获取上述第一组目标帐号通过该第一应用操作的第二应用集合;向该第一帐号推送该第二应用集合中的部分或全部,解决了相关技术中的业务资源推送方法存在推送效率差的技术问题,提高了业务资源推送的效率。
作为一种可选的技术方案,第一确定单元1002包括:
(1)第一确定模块,用于根据第一帐号对第一业务资源已执行的第一目标操作的第一操作信息和与第一业务资源对应的第一标签,确定出第一向量;
(2)第二确定模块,用于根据帐号集合中的帐号对第二业务资源已执行的第一目标操作的第二操作信息和第二业务资源对应的第二标签,确定出第二向量;
(3)第三确定模块,用于根据第二向量与第一向量之间的向量相似度,从帐号集合中确定出第一组目标帐号。
通过本发明实施例,通过将用户向量化表示,并基于向量之间的相似度表示用户之间的相似度(用户之间的关系),简化了用户之间相似度的确定过程,提高了第一组目标帐号的确定过程。
可选地,第一确定模块包括:
(1)第一确定子模块,用于确定出与第一帐号对应的第一标签集合,其中,第一标签集合通过在第一帐号对第一业务资源的目标业务资源执行第一目标操作的情况下,将目标业务资源对应的第一标签添加到第一标签集合中获得;
(2)第二确定子模块,用于确定出与第一标签集合中的目标标签对应的第一目标值,其中,第一目标值与第一标签集合中包含的目标标签的数量和第一标签集合中包含的标签的总数量的商正相关,与帐号集合中包含的帐号的总数量和第二组目标帐号包含的帐号的数量的商正相关,其中,与第二组目标帐号中的帐号对应的第二标签中包括目标标签;
(3)第三确定子模块,用于根据第一目标值,确定出第一向量,其中,第一向量中与目标标签对应的目标元素的元素值为第一目标值。
通过本发明实施例,在确定用于表示用户的向量时综合了标签表示用户的能力,提高了向量表示用户的准确性。
可选地,第三确定模块包括:
(1)第四确定子模块,用于在帐号集合中确定出第一组目标帐号,其中,第一组目标帐号中的每个目标帐号对应的第二向量与第一向量之间的向量相似度大于预定阈值;或者,
(2)第五确定子模块,用于按照帐号集合中的每个目标帐号对应的第二向量与第一向量之间的向量相似度从大到小的顺序,将帐号集合中的前M个目标帐号确定为第一组目标帐号,其中,M为自然数。
通过本发明实施例,通过多种方式从帐号集合确定出第一组目标帐号,可以适用于不同的场景,提高了第一组目标帐号确定方式的多样性。
作为一种可选的技术方案,第三确定模块包括:
(1)第六确定子模块,用于至少根据第三向量与第一向量之间的向量相似度、以及第四向量与第三向量之间的向量相似度,在帐号集合中确定出第一组目标帐号,其中,第三向量是在目标关系网络中与第一帐号具有一阶邻居关系的第二帐号对应的向量,第四向量是在目标关系网络中通过第二帐号与第一帐号具有二阶邻居关系的第三帐号,目标关系网络为无向加权的关系网络,目标关系网络的节点表示帐号集合中的帐号,目标关系网络中的两个节点之间的边上的权重为两个节点所对应的第二向量之间的向量相似度。
通过本发明实施例,至少根据用户的二阶邻居关系确定第一组目标帐号,可以提高第一组目标帐号确定的准确性。
作为一种可选的技术方案,推送单元1006包括:
(1)排序模块,用于根据第一组目标帐号中的每个目标帐号通过第一应用对第二应用集合中的第二应用已执行的第二目标操作的第三操作信息,对第二应用集合中的第二应用进行排序;
(2)选取模块,用于根据排序得到的排序结果,从第二应用集合中选取出部分或者全部的第二应用向第一帐号推送。
通过本发明实施例,通过对第二应用集合中的应用进行排序并推送,可以根据用户可能的感兴趣的程度进行第二应用的推送,提高了推送的效率。
作为一种可选的技术方案,排序模块包括:
(1)第七确定子模块,用于根据每个目标帐号通过第一应用对第二应用集合中的第二应用已执行的第二目标操作的操作次数,确定出每个目标帐号对第二应用的偏好值,偏好值为通过目标权重对操作次数进行加权求和得到的结果;
(2)求和子模块,用于根据用于表示每个目标帐号的第五向量与用于表示第一帐号的第六向量之间的向量相似度,对每个目标帐号对第二应用的偏好值进行加权求和,得到与第二应用对应的第二目标值;
(3)排序子模块,用于按照第二应用集合中的第二应用对应的第二目标值从大到小的顺序,对第二应用集合中的第二应用进行排序。
通过本发明实施例,对第二应用的排序综合考虑了用户之间的相似度以及用户对第二应用的偏好程度,提高了排序结果的准确性。
作为一种可选的技术方案,第一确定单元1002包括:第三确定模块,获取单元1004包括:获取模块,其中,
(1)第三确定模块,用于在第一应用的帐号集合中确定与帐号集合中的第一帐号相关的第一组目标帐号,其中,第一帐号在第一应用中操作过的第一视频资源与第一组目标帐号在第一应用中操作过的第二视频资源相似;
(2)获取模块,获取第一组目标帐号通过第一应用操作的游戏应用集合。
通过本发明实施例,根据用户第一应用中操作视频资源的相似性,向用户推荐相似用户通过第一应用操作过的第二应用,可以提高用户操作推荐游戏的可能性,提高了游戏推送的效率。
根据本发明实施例的又一方面,还提供了一种用于实施上述业务资源推送方法的业务资源推送装置,如图11所示,该装置包括:
(1)第二确定单元1102,用于确定使用第一帐号登录的第一应用的客户端的显示页面被滑动到目标显示区域,其中,目标显示区域用于显示向第一帐号推送的一个或多个第二应用,一个或多个应用为第二应用集合中的部分或全部,第二应用集合为第一组目标帐号通过第一应用操作的第二应用的集合,第一组目标帐号为从第一应用的帐号集合中确定出的与第一帐号相关的一组帐号,第一帐号在第一应用中操作过的第一业务资源与第一组目标帐号在第一应用中操作过的第二业务资源相似;
(2)显示单元1104,用于在目标显示区域向第一帐号推送的一个或多个第二应用。
可选地,在本实施例中,上述业务资源推送装置可以位于终端中,可以但不限于应用于游戏应用的推送过程中,其中,上述业务资源推送方法可以包括但不限于应用于在线视频媒体应用、新闻应用、社交应用以及其他具备业务资源操作功能的应用中,以实现根据操作业务资源来推送用户感兴趣的第二应用。例如,根据用户在在线视频媒体应用中观看的视频资源的相似性,向用户推荐与其相似的用户通过该在线视频媒体应用点击并下载的游戏应用,上述仅是一种示例,本实施例中对此不做任何限定。
可选地,在本实施例中,第二确定单元1102可以用于执行前述步骤S602,显示单元1104可以用于执行前述步骤S604。
在本实施例中,采用根据帐号操作第一应用中的业务资源的相似关系,向帐号推送相似的帐号通过第一应用操作的第二应用的方式,通过在第一应用的帐号集合中确定与该帐号集合中的第一帐号相关的第一组目标帐号,其中,该第一帐号在该第一应用中操作过的第一业务资源与上述第一组目标帐号在该第一应用中操作过的第二业务资源相似;获取上述第一组目标帐号通过该第一应用操作的第二应用集合;向该第一帐号推送该第二应用集合中的部分或全部,在检测到客户端的显示页面被下滑到目标显示区域时,在该目标显示区域显示向第一帐号推送的一个或多个第二应用,解决了相关技术中的业务资源推送方法存在推送效率差的技术问题,提高了业务资源推送的效率。
作为一种可选的技术方案,上述装置还包括:
(1)发送单元,用于在确定使用第一帐号登录的第一应用的客户端的显示页面被下滑到目标显示区域之后,向服务器发送请求消息,其中,请求消息用于请求获取向第一帐号推送的一个或多个第二应用的应用信息;
(2)接收单元,用于接收服务器发送的用于响应请求消息的响应消息,其中,响应消息中携带有一个或多个第二应用的应用信息。
通过本发明实施例,在客户端的显示页面被下滑到目标显示区域之后,通过请求-响应的方式获取推送的一个或多个第二应用的应用信息,可以保证推送的一个或多个第二应用的实时性,提高了业务资源推送的准确性。
作为一种可选的技术方案,上述装置还包括:
(1)检测单元,用于在目标显示区域向第一帐号推送的一个或多个第二应用之后,检测到对一个或多个第二应用中的目标应用执行的目标操作;
(2)跳转单元,用于在客户端所在的终端安装有目标应用的情况下,响应目标操作,跳转至目标应用;或者,在客户端所在的终端未安装有目标应用的情况下,响应目标操作,跳转至目标应用的下载界面。
通过本发明实施例,在检测到对目标应用执行的目标操作之后,跳转至目标应用或跳转至目标应用的下载界面,便于用户对推送的第二应用进行操作,提高了用户体验。
根据本发明实施例,还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以位于网络中的网络设备。上述网络设备可以是服务器或者终端。上述存储介质被设置为存储有用于执行上述业务资源推送方法的程序代码。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
S1,在第一应用的帐号集合中确定与帐号集合中的第一帐号相关的第一组目标帐号,其中,第一帐号在第一应用中操作过的第一业务资源与第一组目标帐号在第一应用中操作过的第二业务资源相似;
S2,获取第一组目标帐号通过第一应用操作的第二应用集合;
S3,向第一帐号推送第二应用集合中的部分或全部。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
S1,确定使用第一帐号登录的第一应用的客户端的显示页面被滑动到目标显示区域,其中,目标显示区域用于显示向第一帐号推送的一个或多个第二应用,一个或多个应用为第二应用集合中的部分或全部,第二应用集合为第一组目标帐号通过第一应用操作的第二应用的集合,第一组目标帐号为从第一应用的帐号集合中确定出的与第一帐号相关的一组帐号,第一帐号在第一应用中操作过的第一业务资源与第一组目标帐号在第一应用中操作过的第二业务资源相似;
S2,在目标显示区域向第一帐号推送的一个或多个第二应用。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、ROM(Read-Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取器)、磁盘或光盘等。
根据本发明实施例,还提供了一种用于实施上述业务资源推送方法的电子装置,可选地,在本实施例中,上述电子装置可以位于网络中的网络设备。如图12所示,该电子装置包括:一个或多个(图中仅示出一个)处理器1202、存储器1204、以及传输装置1206。该存储器中存储有计算机程序,该处理器被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,在第一应用的帐号集合中确定与帐号集合中的第一帐号相关的第一组目标帐号,其中,第一帐号在第一应用中操作过的第一业务资源与第一组目标帐号在第一应用中操作过的第二业务资源相似;
S2,获取第一组目标帐号通过第一应用操作的第二应用集合;
S3,向第一帐号推送第二应用集合中的部分或全部。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,确定使用第一帐号登录的第一应用的客户端的显示页面被滑动到目标显示区域,其中,目标显示区域用于显示向第一帐号推送的一个或多个第二应用,一个或多个应用为第二应用集合中的部分或全部,第二应用集合为第一组目标帐号通过第一应用操作的第二应用的集合,第一组目标帐号为从第一应用的帐号集合中确定出的与第一帐号相关的一组帐号,第一帐号在第一应用中操作过的第一业务资源与第一组目标帐号在第一应用中操作过的第二业务资源相似;
S2,在目标显示区域向第一帐号推送的一个或多个第二应用。
本领域普通技术人员可以理解,图12所示的结构仅为示意,电子装置也可以是服务器(如,云端服务器)、智能手机(如Android手机、iOS手机等)、平板电脑、掌声电脑以及MID(Mobile Internet Devices,移动互联网设备)、PAD等终端设备。图12其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图12中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图12所示不同的配置。
其中,存储器1204可用于存储软件程序以及模块,如本发明实施例中的业务资源推送方法对应的程序指令/模块,处理器1202通过运行存储在存储器1204内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的业务资源推送方法。存储器1204可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1204可进一步包括相对于处理器1202远程设置的存储器,这些远程存储器可以通过网络连接至处理器1202。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
上述传输装置1206用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1206包括一个NIC(Network InterfaceController,网络适配器),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1206为RF(Radio Frequency,射频)模块,其用于通过无线方式与互联网进行通讯。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (13)
1.一种业务资源推送方法,其特征在于,包括:
在第一应用的帐号集合中确定与所述帐号集合中的第一帐号相关的第一组目标帐号,其中,所述第一帐号在所述第一应用中操作过的第一业务资源与所述第一组目标帐号在所述第一应用中操作过的第二业务资源相似;
获取所述第一组目标帐号通过所述第一应用操作的第二应用集合;
根据每个所述目标帐号通过所述第一应用对所述第二应用集合中的第二应用已执行的第二目标操作的操作次数,确定出所述第一组目标帐号中的每个目标帐号对所述第二应用的偏好值,其中,所述偏好值为通过目标权重对所述操作次数进行加权求和得到的结果;
根据用于表示每个所述目标帐号的第五向量与用于表示所述第一帐号的第六向量之间的向量相似度,对每个所述目标帐号对所述第二应用的所述偏好值进行加权求和,得到与所述第二应用对应的第二目标值;
按照所述第二应用集合中的所述第二应用对应的所述第二目标值从大到小的顺序,对所述第二应用集合中的所述第二应用进行排序;
根据排序得到的排序结果,从所述第二应用集合中选取出部分或者全部的所述第二应用向所述第一帐号推送。
2.根据权利要求1所述的方法,其特征在于,在所述第一应用的所述帐号集合中确定与所述帐号集合中的所述第一帐号相关的所述第一组目标帐号包括:
根据所述第一帐号对所述第一业务资源已执行的第一目标操作的第一操作信息和与所述第一业务资源对应的第一标签,确定出第一向量;
根据所述帐号集合中的帐号对所述第二业务资源已执行的所述第一目标操作的第二操作信息和所述第二业务资源对应的第二标签,确定出第二向量;
根据所述第二向量与所述第一向量之间的向量相似度,从所述帐号集合中确定出所述第一组目标帐号。
3.根据权利要求2所述的方法,其特征在于,根据所述第一帐号对所述第一业务资源已执行的所述第一目标操作的所述第一操作信息和所述第一业务资源对应的所述第一标签,确定出所述第一向量包括:
确定出与所述第一帐号对应的第一标签集合,其中,所述第一标签集合通过在所述第一帐号对所述第一业务资源的目标业务资源执行所述第一目标操作的情况下,将所述目标业务资源对应的所述第一标签添加到所述第一标签集合中获得;
确定出与所述第一标签集合中的目标标签对应的第一目标值,其中,所述第一目标值与所述第一标签集合中包含的目标标签的数量和所述第一标签集合中包含的标签的总数量的商正相关,与所述帐号集合中包含的帐号的总数量和第二组目标帐号包含的帐号的数量的商正相关,其中,与所述第二组目标帐号中的帐号对应的所述第二标签中包括所述目标标签;
根据所述第一目标值,确定出所述第一向量,其中,所述第一向量中与所述目标标签对应的目标元素的元素值为所述第一目标值。
4.根据权利要求2所述的方法,其特征在于,根据所述第二向量与所述第一向量之间的向量相似度,从所述帐号集合中确定出所述第一组目标帐号包括:
在所述帐号集合中确定出所述第一组目标帐号,其中,所述第一组目标帐号中的每个目标帐号对应的所述第二向量与所述第一向量之间的向量相似度大于预定阈值;或者,
按照所述帐号集合中的每个目标帐号对应的所述第二向量与所述第一向量之间的向量相似度从大到小的顺序,将所述帐号集合中的前M个目标帐号确定为所述第一组目标帐号,其中,所述M为自然数。
5.根据权利要求2所述的方法,其特征在于,根据所述第二向量与所述第一向量之间的所述向量相似度,从所述帐号集合中确定出所述第一组目标帐号包括:
至少根据第三向量与所述第一向量之间的向量相似度、以及第四向量与所述第三向量之间的向量相似度,在所述帐号集合中确定出所述第一组目标帐号,其中,所述第三向量是在目标关系网络中与所述第一帐号具有一阶邻居关系的第二帐号对应的向量,所述第四向量是在所述目标关系网络中通过所述第二帐号与所述第一帐号具有二阶邻居关系的第三帐号,所述目标关系网络为无向加权的关系网络,所述目标关系网络的节点表示所述帐号集合中的帐号,所述目标关系网络中的两个节点之间的边上的权重为所述两个节点所对应的所述第二向量之间的向量相似度。
6.根据权利要求1至5中任一项所述的方法,其特征在于,
在第一应用的帐号集合中确定与所述帐号集合中的第一帐号相关的第一组目标帐号包括:在第一应用的帐号集合中确定与所述帐号集合中的第一帐号相关的第一组目标帐号,其中,所述第一帐号在所述第一应用中操作过的第一视频资源与所述第一组目标帐号在所述第一应用中操作过的第二视频资源相似;
获取所述第一组目标帐号通过所述第一应用操作的所述第二应用集合包括:获取所述第一组目标帐号通过所述第一应用操作的游戏应用集合。
7.一种业务资源推送方法,其特征在于,包括:
确定使用第一帐号登录的第一应用的客户端的显示页面被滑动到目标显示区域,其中,所述目标区域用于显示向所述第一帐号推送的一个或多个第二应用,所述一个或多个应用为第二应用集合中的部分或全部,所述第二应用集合为第一组目标帐号通过所述第一应用操作的第二应用的集合,所述第一组目标帐号为从所述第一应用的帐号集合中确定出的与所述第一帐号相关的一组帐号,所述第一帐号在所述第一应用中操作过的第一业务资源与所述第一组目标帐号在所述第一应用中操作过的第二业务资源相似;
在所述目标显示区域向所述第一帐号推送的所述一个或多个第二应用;
其中,所述向所述第一帐号推送的一个或多个第二应用,包括:
根据每个所述目标帐号通过所述第一应用对所述第二应用集合中的第二应用已执行的第二目标操作的操作次数,确定出所述第一组目标帐号中的每个目标帐号对所述第二应用的偏好值,其中,所述偏好值为通过目标权重对所述操作次数进行加权求和得到的结果;
根据用于表示每个所述目标帐号的第五向量与用于表示所述第一帐号的第六向量之间的向量相似度,对每个所述目标帐号对所述第二应用的所述偏好值进行加权求和,得到与所述第二应用对应的第二目标值;
按照所述第二应用集合中的所述第二应用对应的所述第二目标值从大到小的顺序,对所述第二应用集合中的所述第二应用进行排序;
根据排序得到的排序结果,从所述第二应用集合中选取出部分或者全部的所述第二应用向所述第一帐号推送。
8.根据权利要求7所述的方法,其特征在于,在确定使用所述第一帐号登录的所述第一应用的所述客户端的所述显示页面被滑动到所述目标显示区域之后,所述方法还包括:
向服务器发送请求消息,其中,所述请求消息用于请求获取向所述第一帐号推送的所述一个或多个第二应用的应用信息;
接收所述服务器发送的用于响应所述请求消息的响应消息,其中,所述响应消息中携带有所述一个或多个第二应用的所述应用信息。
9.根据权利要求7或8所述的方法,其特征在于,在所述目标显示区域向所述第一帐号推送的所述一个或多个第二应用之后,所述方法还包括:
检测到对所述一个或多个第二应用中的目标应用执行的目标操作;
在所述客户端所在的终端安装有所述目标应用的情况下,响应所述目标操作,跳转至所述目标应用;或者,
在所述客户端所在的终端未安装有所述目标应用的情况下,响应所述目标操作,跳转至所述目标应用的下载界面。
10.一种业务资源推送装置,其特征在于,包括:
第一确定单元,用于在第一应用的帐号集合中确定与所述帐号集合中的第一帐号相关的第一组目标帐号,其中,所述第一帐号在所述第一应用中操作过的第一业务资源与所述第一组目标帐号在所述第一应用中操作过的第二业务资源相似;
获取单元,用于获取所述第一组目标帐号通过所述第一应用操作的第二应用集合;
推送单元,用于向所述第一帐号推送所述第二应用集合中的部分或全部;
所述推送单元,包括:
排序模块,用于根据所述第一组目标帐号中的每个目标帐号通过所述第一应用对所述第二应用集合中的第二应用已执行的第二目标操作的第三操作信息,对所述第二应用集合中的所述第二应用进行排序;
选取模块,用于根据排序得到的排序结果,从所述第二应用集合中选取出部分或者全部的所述第二应用向所述第一帐号推送;
所述排序模块包括:
第七确定子模块,用于根据每个所述目标帐号通过所述第一应用对所述第二应用集合中的所述第二应用已执行的所述第二目标操作的操作次数,确定出每个所述目标帐号对所述第二应用的偏好值,其中,所述偏好值为通过目标权重对所述操作次数进行加权求和得到的结果;
求和子模块,用于根据用于表示每个所述目标帐号的第五向量与用于表示所述第一帐号的第六向量之间的向量相似度,对每个所述目标帐号对所述第二应用的所述偏好值进行加权求和,得到与所述第二应用对应的第二目标值;
排序子模块,用于按照所述第二应用集合中的所述第二应用对应的所述第二目标值从大到小的顺序,对所述第二应用集合中的所述第二应用进行排序。
11.一种业务资源推送装置,其特征在于,包括:
第二确定单元,用于确定使用第一帐号登录的第一应用的客户端的显示页面被滑动到目标显示区域,其中,所述目标区域用于显示向所述第一帐号推送的一个或多个第二应用,所述一个或多个应用为第二应用集合中的部分或全部,所述第二应用集合为第一组目标帐号通过所述第一应用操作的第二应用的集合,所述第一组目标帐号为从所述第一应用的帐号集合中确定出的与所述第一帐号相关的一组帐号,所述第一帐号在所述第一应用中操作过的第一业务资源与所述第一组目标帐号在所述第一应用中操作过的第二业务资源相似;
显示单元,用于在所述目标显示区域向所述第一帐号推送的所述一个或多个第二应用;
其中,所述向所述第一帐号推送的一个或多个第二应用,包括:
根据每个所述目标帐号通过所述第一应用对所述第二应用集合中的第二应用已执行的第二目标操作的操作次数,确定出所述第一组目标帐号中的每个目标帐号对所述第二应用的偏好值,其中,所述偏好值为通过目标权重对所述操作次数进行加权求和得到的结果;
根据用于表示每个所述目标帐号的第五向量与用于表示所述第一帐号的第六向量之间的向量相似度,对每个所述目标帐号对所述第二应用的所述偏好值进行加权求和,得到与所述第二应用对应的第二目标值;
按照所述第二应用集合中的所述第二应用对应的所述第二目标值从大到小的顺序,对所述第二应用集合中的所述第二应用进行排序;
根据排序得到的排序结果,从所述第二应用集合中选取出部分或者全部的所述第二应用向所述第一帐号推送。
12.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至6,或7至9中任一项中所述的方法。
13.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至6,或7至9中任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910276813.6A CN110032678B (zh) | 2019-04-08 | 2019-04-08 | 业务资源推送方法和装置、存储介质和电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910276813.6A CN110032678B (zh) | 2019-04-08 | 2019-04-08 | 业务资源推送方法和装置、存储介质和电子装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110032678A CN110032678A (zh) | 2019-07-19 |
CN110032678B true CN110032678B (zh) | 2023-08-25 |
Family
ID=67237645
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910276813.6A Active CN110032678B (zh) | 2019-04-08 | 2019-04-08 | 业务资源推送方法和装置、存储介质和电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110032678B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111368552B (zh) * | 2020-02-26 | 2023-09-26 | 北京市公安局 | 一种面向特定领域的网络用户群组划分方法及装置 |
CN111339468B (zh) * | 2020-02-28 | 2023-08-04 | 北京嘀嘀无限科技发展有限公司 | 信息推送方法、装置、电子设备和存储介质 |
CN112035256A (zh) * | 2020-08-28 | 2020-12-04 | 北京字节跳动网络技术有限公司 | 一种资源分配方法、装置、电子设备及介质 |
CN113672816B (zh) * | 2021-10-21 | 2022-02-08 | 腾讯科技(深圳)有限公司 | 帐号特征信息的生成方法、装置和存储介质及电子设备 |
CN115017400B (zh) * | 2021-11-30 | 2023-05-26 | 荣耀终端有限公司 | 一种应用app推荐方法及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015105499A1 (en) * | 2014-01-10 | 2015-07-16 | Citrix Systems, Inc. | Providing mobile application management functionalities |
CN107888703A (zh) * | 2017-11-29 | 2018-04-06 | 广东欧珀移动通信有限公司 | 信息推送方法、装置、服务器及可读存储介质 |
CN108452526A (zh) * | 2017-11-28 | 2018-08-28 | 腾讯科技(上海)有限公司 | 游戏故障原因的查询方法和装置、存储介质、电子装置 |
CN109032683A (zh) * | 2017-05-31 | 2018-12-18 | 腾讯科技(深圳)有限公司 | 配置数据处理方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001357312A (ja) * | 1999-11-24 | 2001-12-26 | Sega Corp | 情報処理装置、ファイルサーバ、課金管理システムおよび課金管理方法並びにプログラムを記録した記録媒体 |
US8132219B2 (en) * | 2002-06-21 | 2012-03-06 | Tivo Inc. | Intelligent peer-to-peer system and method for collaborative suggestions and propagation of media |
-
2019
- 2019-04-08 CN CN201910276813.6A patent/CN110032678B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015105499A1 (en) * | 2014-01-10 | 2015-07-16 | Citrix Systems, Inc. | Providing mobile application management functionalities |
CN109032683A (zh) * | 2017-05-31 | 2018-12-18 | 腾讯科技(深圳)有限公司 | 配置数据处理方法及装置 |
CN108452526A (zh) * | 2017-11-28 | 2018-08-28 | 腾讯科技(上海)有限公司 | 游戏故障原因的查询方法和装置、存储介质、电子装置 |
CN107888703A (zh) * | 2017-11-29 | 2018-04-06 | 广东欧珀移动通信有限公司 | 信息推送方法、装置、服务器及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110032678A (zh) | 2019-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110032678B (zh) | 业务资源推送方法和装置、存储介质和电子装置 | |
US11977575B2 (en) | Media content discovery and character organization techniques | |
US8204878B2 (en) | System and method for finding unexpected, but relevant content in an information retrieval system | |
US9838743B2 (en) | Techniques for context aware video recommendation | |
Lytvyn et al. | Design of a recommendation system based on Collaborative Filtering and machine learning considering personal needs of the user | |
US8812982B2 (en) | Targeting questions to users of a social networking system | |
US10218800B2 (en) | Systems and methods for providing recommendations and explanations | |
US20140114998A1 (en) | Determining demographics based on user interaction | |
US20140282493A1 (en) | System for replicating apps from an existing device to a new device | |
TW201447797A (zh) | 內容個人化之多相排序方法和系統 | |
CN111552835B (zh) | 文件推荐方法、装置及服务器 | |
KR20140089602A (ko) | 소셜 네트워킹 시스템에서 컨셉에 대한 범용 소셜 컨텍스트의 제공 | |
US20230267062A1 (en) | Using machine learning model to make action recommendation to improve performance of client application | |
CN107562758B (zh) | 一种推送信息的方法、装置及电子设备 | |
CN110874639A (zh) | 操作信息的获取方法及装置 | |
CN113961791A (zh) | 信息推送方法、装置、计算机设备及存储介质 | |
CN118233673A (zh) | 一种视频内容推荐方法和装置 | |
KR20230135433A (ko) | 고객 경험을 4가지 차원으로 나누어 분석하고, 기능 중심의 사고에서 벗어나 경험 중심의 사고를 통해 고객 경험을 극대화하는 신규 서비스 발굴에 사용되는 플랫폼 및 분석 방법 | |
CN113849735A (zh) | 一种基于混合模型的游戏推荐方法和*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |