CN104243590A - 资源对象推荐方法和装置 - Google Patents
资源对象推荐方法和装置 Download PDFInfo
- Publication number
- CN104243590A CN104243590A CN201410484096.3A CN201410484096A CN104243590A CN 104243590 A CN104243590 A CN 104243590A CN 201410484096 A CN201410484096 A CN 201410484096A CN 104243590 A CN104243590 A CN 104243590A
- Authority
- CN
- China
- Prior art keywords
- resource object
- access
- history
- vector
- user account
- 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.)
- Granted
Links
Abstract
本发明公开了一种资源对象推荐方法和装置,属于计算机网络技术领域。所述资源对象推荐方法包括:获取用户账号所对应的历史资源对象;根据所述历史资源对象以及关系链信息确定需要推荐的目标资源对象,所述关系链信息包括资源对象与资源对象之间的访问向量,所述访问向量由各个用户的历史访问记录统计得到;向所述用户账号推荐所述目标资源对象;解决了现有技术中服务器在推荐资源对象时服务器的计算复杂度较高的问题;达到了可以根据历史资源对象以及关系链信息直接为用户账号推荐资源对象,进而降低服务器的计算复杂度的效果。
Description
技术领域
本发明涉及计算机网络技术领域,特别涉及一种资源对象推荐方法和装置。
背景技术
随着网络技术的发展,服务器可以根据用户兴趣为用户推荐资源对象。资源对象可以是视频、音频、网页、游戏或者应用程序。
以服务器为用户推荐应用程序为例,服务器可以获取用户已经安装的应用程序的类型;从候选应用程序中选择与获取到的应用程序的类型匹配的应用程序,为用户推荐获取到的应用程序。
在实现本发明的过程中,发明人发现上述技术至少存在以下问题:服务器需要对用户自身已安装的应用程序进行分析,得到对应的应用程序的类型,然后才能根据得到的应用程序的类型为用户推荐应用程序,服务器的计算复杂度较高。
发明内容
为了解决现有技术中服务器在进行资源对象推荐时,服务器的计算复杂度较高的问题,本发明实施例提供了一种资源对象推荐方法和装置。所述技术方案如下:
第一方面,提供了一种资源对象推荐方法,所述方法包括:
获取用户账号所对应的历史资源对象;
根据所述历史资源对象以及关系链信息确定需要推荐的目标资源对象,所述关系链信息包括资源对象与资源对象之间的访问向量,所述访问向量由各个用户的历史访问记录统计得到;
向所述用户账号推荐所述目标资源对象。
可选地,所述根据所述历史资源对象以及关系链信息确定需要推荐的目标资源对象,包括:
获取所述关系链信息中向量起点为所述历史资源对象的访问向量;
获取所述访问向量的向量终点所对应的资源对象;
从获取的所述资源对象中选择至少一个资源对象;
将选择得到的所述资源对象确定为所述目标资源对象。
可选地,所述访问向量的向量值是所述历史访问记录中在访问向量起点所对应的资源对象后又访问向量终点所对应的资源对象的历史访问次数,所述从获取的所述资源对象中选择至少一个资源对象,包括:
按照各个资源对象所对应的访问向量的向量值由大到小的顺序对获取的各个资源对象进行排名;
选择排名在前n位的资源对象,n为正整数。
可选地,所述方法还包括:
获取各个用户的历史访问记录;
当所述历史访问记录中存在访问第一资源对象后又访问第二资源对象的访问记录时,检测所述关系链信息中是否存在从所述第一资源对象指向所述第二资源对象的访问向量;
如果所述关系链信息中不存在所述访问向量,则创建所述访问向量,所述访问向量的向量值为初始值;将创建的所述访问向量存储至所述关系链信息;
如果所述关系链信息中存在所述访问向量,则将所述访问向量的向量值加上预定值。
可选地,所述向所述用户账号推荐所述目标资源对象之前,所述方法还包括:
从候选资源对象中随机选择m个资源对象;
所述向用户账号推荐所述目标资源对象,包括:
向所述用户账号推荐所述目标资源对象以及随机选择的所述m个资源对象。
可选地,所述获取用户账号所对应的历史资源对象,包括:
获取所述用户账号最近一次访问的历史资源对象;或,
获取所述用户账号历史访问次数最多的历史资源对象;或,
根据所述用户账号的历史访问记录随机选择一条历史资源对象。
第二方面,提供了一种资源对象推荐装置,所述装置包括:
历史对象获取模块,用于获取用户账号所对应的历史资源对象;
推荐对象确定模块,用于根据所述历史对象获取模块获取到的所述历史资源对象以及关系链信息确定需要推荐的目标资源对象,所述关系链信息包括资源对象与资源对象之间的访问向量,所述访问向量由各个用户的历史访问记录统计得到;
对象推荐模块,用于向所述用户账号推荐所述推荐对象确定模块确定的所述目标资源对象。
可选地,所述推荐对象确定模块,包括:
访问向量获取单元,用于获取所述关系链信息中向量起点为所述历史资源对象的访问向量;
对象获取单元,用于获取所述访问向量获取单元获取到的所述访问向量的向量终点所对应的资源对象;
对象选择单元,用于从所述对象获取单元获取的所述资源对象中选择至少一个资源对象;
推荐对象确定单元,用于将所述对象选择单元选择得到的所述资源对象确定为所述目标资源对象。
可选地,所述对象选择单元,包括:
对象排名子单元,用于在所述访问向量的向量值是所述历史访问记录中在访问向量起点所对应的资源对象后又访问向量终点所对应的资源对象的历史访问次数时,按照各个资源对象所对应的访问向量的向量值由大到小的顺序对获取的各个资源对象进行排名;
对象选择子单元,用于选择排名在前n位的资源对象,n为正整数。
可选地,所述装置还包括:
访问记录获取模块,用于获取各个用户的历史访问记录;
访问向量检测模块,用于在所述历史访问记录中存在访问第一资源对象后又访问第二资源对象的访问记录时,检测所述关系链信息中是否存在从所述第一资源对象指向所述第二资源对象的访问向量;
访问向量创建模块,用于在所述访问向量检测模块的检测结果为所述关系链信息中不存在所述访问向量时,创建所述访问向量,所述访问向量的向量值为初始值;将创建的所述访问向量存储至所述关系链信息;
向量值更新模块,用于在所述访问向量检测模块的检测结果为所述关系链信息中存在所述访问向量时,将所述访问向量的向量值加上预定值。
可选地,所述装置还包括:
对象选择模块,用于从候选资源对象中随机选择m个资源对象;
所述对象推荐模块,还用于向所述用户账号推荐所述目标资源对象以及随机选择的所述m个资源对象。
可选地,所述历史对象获取模块,用于:
获取所述用户账号最近一次访问的历史资源对象;或,
获取所述用户账号历史访问次数最多的历史资源对象;或,
根据所述用户账号的历史访问记录随机选择一条历史资源对象。
本发明实施例提供的技术方案的有益效果是:
通过获取用户账号所对应的历史资源对象,根据历史资源对象以及关系链信息确定需要推荐的目标资源对象,将目标资源对象推荐给用户账号,关系链信息包括资源对象与资源对象之间的访问向量,访问向量由各个用户的历史访问记录统计得到;解决了现有技术中服务器在推荐资源对象时服务器的计算复杂度较高的问题;达到了可以根据历史资源对象以及关系链信息直接为用户账号推荐资源对象,进而降低服务器的计算复杂度的效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的资源对象推荐方法的方法流程图;
图2A是本发明另一个实施例提供的资源对象推荐方法的方法流程图;
图2B是本发明另一实施例提供的访问关系链的示意图;
图3是本发明一个实施例提供的资源对象推荐装置的结构方框图;
图4是本发明另一个实施例提供的资源对象推荐装置的结构方框图;
图5是本发明一个实施例提供的服务器的结构方框图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参考图1,其示出了本发明一个实施例提供的资源对象推荐方法的方法流程图,如图1所示,该资源对象推荐方法包括:
步骤101,获取用户账号所对应的历史资源对象;
步骤102,根据历史资源对象以及关系链信息确定需要推荐的目标资源对象;
关系链信息包括资源对象与资源对象之间的访问向量,访问向量由各个用户的历史访问记录统计得到。
步骤103,向用户账号推荐目标资源对象。
综上所述,本实施例提供的资源对象推荐方法,通过获取用户账号所对应的历史资源对象,根据历史资源对象以及关系链信息确定需要推荐的目标资源对象,将目标资源对象推荐给用户账号,关系链信息包括资源对象与资源对象之间的访问向量,访问向量由各个用户的历史访问记录统计得到;解决了现有技术中服务器在推荐资源对象时服务器的计算复杂度较高的问题;达到了可以根据历史资源对象以及关系链信息直接为用户账号推荐资源对象,进而降低服务器的计算复杂度的效果。
请参考图2A,其示出了本发明另一实施例提供的资源对象推荐方法的方法流程图,如图2A所示,该资源对象推荐方法可以包括:
步骤201,获取各个用户的历史访问记录;
为了后续步骤的执行,服务器可以获取各个用户的历史访问记录。在实际实现时,服务器可以监控系统中每个用户访问资源对象的访问顺序,记录监控得到的各个访问顺序。资源对象可以包括视频、音频、网页、游戏和应用程序中的至少一种,且在实际应用中,资源对象还可以包括其他类型的对象,本实施例对此并不做限定。
比如,以资源对象为游戏为例,系统中的用户A在使用游戏A之后使用的下一个游戏为游戏B,则服务器可以监控并记录先访问游戏A后访问游戏B的访问记录。
步骤202,当历史访问记录中存在访问第一资源对象后又访问第二资源对象的访问记录时,检测关系链信息中是否存在从第一资源对象指向第二资源对象的访问向量;
当服务器获取的历史访问记录中存在访问第一资源对象后又访问第二资源对象的访问记录时,服务器可以检测关系链信息中是否存在从第一资源对象指向第二资源对象的访问向量。
比如,当服务器获得使用游戏A后又使用游戏B的访问记录时,服务器可以检测关系链信息中是否存在从游戏A指向游戏B的访问向量。
步骤203,根据检测结果确定关系链信息;
如果服务器的检测结果为关系链信息中不存在从第一资源对象指向第二资源对象的访问向量,则服务器可以创建访问向量,该访问向量的向量值为初始值,比如访问向量的向量值为1。在服务器创建访问向量之后,服务器可以将创建的访问向量存储至关系链信息。
而如果服务器的检测结果为关系链信息中存在从第一资源对象指向第二资源对象的访问向量,则说明之前已经有某一用户按照先访问第一资源对象后访问第二资源对象的顺序访问了这两个资源对象,此时,服务器可以将该访问向量的向量值加上预定值。其中,预定值可以为预先设定的任意值比如1。
在经过步骤201至步骤203之后,服务器可以建立系统中的各个资源对象的访问关系链。比如,仍然以资源对象为游戏为例,服务器可以建立图2B所示的访问关系链。需要说明的是,本实施例仅以图2B所示的访问关系链为例,在实际实现时,访问关系链中还可以包括更多的资源对象,本实施例对此并不做限定。
在实际实现时,服务器可以在redis数据库中存储关系链信息中的各个访问向量。具体的:
服务器可以通过redis数据库的list数据结构存储各个资源对象的访问顺序,也即访问向量的方向。比如,以服务器存储图2B所示的访问关系链所对应的关系链信息中的起始节点为游戏A的信息为例,服务器统计得到在游戏A之后,有些用户使用了游戏B,有些用户使用了游戏E,而有些用户使用了游戏G,则服务器可以通过list数据结构存储key为A,值为游戏B、游戏E和游戏G的数据。在实际实现时,服务器可以随机存储key对应的各个值,比如,按照游戏B、游戏G和游戏E的顺序进行存储;也可以按照访问key之后又访问各个值的访问次数对各个值进行排序,然后按照排序结果依次存储,比如按照游戏E、游戏B和游戏G的顺序进行存储。
同时,服务器可以通过redis数据库的string数据结构存储访问一个资源对象后又访问另外一个资源对象的访问次数,也即访问向量的向量值。比如,从图2B可知,系统中的各个用户访问游戏A后又访问游戏B的访问次数为89次,访问游戏A后又访问游戏E的访问次数为123次,访问游戏A后又访问游戏G的访问次数为64次;则服务器可以分别存储key为A-B,值为123;key为A-E,值为89;key为A-G,值为64的数据。
需要补充说明的第一点是,本实施例只是以在redis数据库中存储关系链信息为例,在实际实现时,还可以在Mysql数据库或者其它数据库中存储该关系链信息,本实施例对此并不做限定。
需要补充说明的第二点是,步骤201至步骤203可以在步骤204之前只执行一次;比如,服务器在需要为用户账号推荐资源对象时,服务器执行一次。步骤201至步骤203也可以在步骤204之前循环执行多次;比如,服务器实时获取各个用户的历史访问记录,进而根据获取到的历史访问记录更新关系链信息,本实施例对此并不做限定。
步骤204,获取用户账号所对应的历史资源对象;
当服务器需要为某一用户账号推荐资源对象时,服务器可以先获取用户账号所对应的历史资源对象。
其中,服务器获取历史资源对象的获取方式可以包括如下方式中的任一种:
第一种,获取用户账号最近一次访问的历史资源对象。
第二种,获取用户账号历史访问次数最多的历史资源对象。
第三种,根据用户账号的历史访问记录随机选择一条历史资源对象。
本实施例对此并不做限定。
另外,服务器可以在如下几种条件时触发获取用户账号所对应的历史资源对象:
第一种,服务器在预定时刻获取用户账号所对应的历史资源对象;比如服务器在每天24:00时获取用户账号所对应的历史资源对象。
第二种,服务器在用户账号连接网络时获取用户账号所对应的历史资源对象。
第三种,服务器在接收到用户账号访问资源对象的访问触发信号时,获取用户账号所对应的历史资源对象。
本实施例对此也不做限定。
以服务器为用户账号推荐游戏,也即资源对象是游戏为例,在每天24:00时,服务器可以获取用户账号最近一次访问的游戏,比如获取到的用户账号最近一次访问的游戏为游戏A。
步骤205,获取关系链信息中向量起点为历史资源对象的访问向量;
在服务器获取到历史资源对象之后,服务器可以获取关系链信息,获取关系链信息中向量起点为历史资源对象的访问向量。
步骤206,获取访问向量的向量终点所对应的资源对象;
由于访问向量的终点所对应的资源对象是其他用户在访问向量起点所对应的资源对象之后可能访问的资源对象,所以在服务器获取到向量起点为历史资源对象的访问向量之后,为了后续步骤的执行服务器可以获取访问向量的向量终点所对应的资源对象。
在实际实现时,服务器可以从redis数据库中读取key为历史资源对象的list数据的数据值,将读取到的数据值作为访问向量的向量终点所对应的资源对象。
比如,当历史资源对象为游戏A时,服务器可以从redis数据库中的list数据中读取key为游戏A的数据,然后读取该组数据的值,也即服务器可以读取到游戏B、游戏E和游戏G。
步骤207,从获取的资源对象中选择至少一个资源对象;
服务器获取到资源对象之后,服务器可以从获取的资源对象中选择至少一个资源对象。在实际实现时,服务器从获取的资源对象中选择至少一个资源对象的选择步骤可以包括:
第一,按照各个资源对象所对应的访问向量的向量值由大到小的顺序对获取的各个资源对象进行排名;
服务器获取到各个资源对象之后,服务器可以获取各个资源对象所对应的访问向量的向量值,然后按照获取到的各个向量值对各个资源对象进行排名。
在实际实现时,服务器可以从redis数据库中的string数据中读取key为历史资源对象-获取的资源对象的数据的值,将读取到的数据的值作为向量值,然后按照向量值对各个资源对象进行排名。
比如,服务器读取到的A-B的值为89,A-E的值为123,A-G的值为64,则服务器可以按照游戏E、游戏B和游戏G的顺序对三者进行排名。
第二,选择排名在前n位的资源对象,n为正整数。
由于排名越靠前,说明用户访问历史资源对象后访问该资源对象的访问概率越大,所以服务器可以选择排名在前n位的资源对象。比如,当n为2时,服务器可以选择排在前两位的游戏E和游戏B。
需要说明的是,本实施例只是以采用上述选择方式从获取的资源对象中选择资源对象为例,在实际实现时,服务器还可以从获取到的资源对象中随机选择资源对象,本实施例对此并不做限定。
步骤208,将选择得到的资源对象确定为目标资源对象;
步骤209,向用户账号推荐目标资源对象。
在服务器确定目标资源对象之后,服务器可以将目标资源对象推荐给用户账号。用户账号相应的接收服务器推荐的目标资源对象,展示接收到的目标资源对象。
当用户查看用户账号展示的目标资源对象之后,用户可以依据自己的使用需求选择访问目标资源对象,本实施例对此并不做限定。比如,当用户对游戏E比较感兴趣时,用户可以触发用户账号下载游戏E。
在本实施例的一个应用场景中,在应用程序下载中心中,服务器可以根据所有用户在应用程序下载中心中下载应用程序的下载记录创建两个应用程序之间的下载向量,下载向量的向量值为所有用户在下载第一应用程序后下载第二应用程序的下载次数。服务器在redis数据库中存储key为下载向量的向量起点所对应的应用程序,值为该应用程序所指向的各个应用程序的list链表(比如,存储key为应用程序A,值为应用程序C、应用程序F、应用程序G以及应用程序H的数据)。同时服务器存储key为向量起点所对应的应用程序以及向量终点所对应的应用程序,值为先访问向量起点所对应的应用程序后访问向量终点所对应的应用程序的访问次数(比如,存储key为应用程序A-应用程序C,值为100的数据)。当服务器接收到用户账号访问该应用程序下载中心的触发信号时,服务器可以获取用户账号最近一次下载的应用程序(如应用程序A),读取redis数据库的list链表中key为获取到的应用程序的数据的值(应用程序C、应用程序F、应用程序G以及应用程序H),然后在string数据中读取各自对应的访问次数(如100、52、111和87);根据访问次数对各个应用程序排名,将排名在前两位的应用程序C和应用程序G推荐给用户账号。这样,用户账号接收到服务器推荐的应用程序之后,用户账号很可能会请求下载该应用程序,提高了应用程序的下载量,同时,这也方便了用户的使用,简便了用户获取自己感兴趣的应用程序的获取步骤。
在本实施例的另一个应用场景中,在某一视频网站中,网站服务器可以根据所有用户在网站中播放视频的播放记录来创建两个视频之间的播放向量,播放向量的向量值为所有用户在播放第一视频后播放第二视频的播放次数。服务器在redis数据库中存储key为播放向量的播放起点所对应的视频,值为该视频所指向的各个视频的list链表(比如,存储key为视频A,值为视频G以及视频H的数据)。同时服务器存储key为向量起点所对应的视频以及向量终点所对应的视频,值为先访问向量起点所对应的视频后访问向量终点所对应的视频的访问次数(比如,存储key为视频A-视频H,值为100的数据)。当服务器接收到用户账号访问该视频网站的触发信号时,服务器可以获取用户账号最近一次播放的视频(如视频A),读取redis数据库的list链表中key为获取到的视频的数据的值(视频G以及视频H),然后在string数据中读取各自对应的访问次数(如86和100);根据访问次数对各个视频排名,将排名在首位的视频H推荐给用户账号。这样,用户账号接收到服务器推荐的视频之后,用户账号很可能会请求播放该视频,提高了视频的点击量。
服务器还可以通过类似方法向用户账号推荐网页或者音频,本实施例在此不再赘述。
需要补充说明的一点是,如果服务器获取到的历史资源对象是服务器通过其它资源对象如资源对象M推荐给用户账号的资源对象,则在服务器根据历史资源对象给用户账号做资源对象推荐时,由于用户账号已经获取过资源对象M,所以此时服务器将不再继续推荐资源对象M给用户账号。
综上所述,本实施例提供的资源对象推荐方法,通过获取用户账号所对应的历史资源对象,根据历史资源对象以及关系链信息确定需要推荐的目标资源对象,将目标资源对象推荐给用户账号,关系链信息包括资源对象与资源对象之间的访问向量,访问向量由各个用户的历史访问记录统计得到;解决了现有技术中服务器在推荐资源对象时服务器的计算复杂度较高的问题;达到了可以根据历史资源对象以及关系链信息直接为用户账号推荐资源对象,进而降低服务器的计算复杂度的效果。同时,本实施例通过根据由各个用户的历史访问记录统计得到的关系链信息来为用户账号推荐资源对象,提高了为用户账号推荐的资源对象的准确率。
本实施例通过根据访问历史资源对象后访问其它资源对象的访问次数对各个资源对象进行排名,进而只向用户账号推荐排名在前n位的资源对象,提高了推荐的资源对象的准确率。
本实施例通过将关系链信息存储在redis数据库中,进而利用redis数据库的高读写速度,提高服务器获取关系链信息的获取效率,也即提高了服务器为用户账号推荐资源对象的推荐效率。
需要补充说明的一点是,服务器在向用户账号推荐目标资源对象之前,服务器还可以从候选资源对象中随机选择m个资源对象;进而在向用户账号推荐目标资源对象时,向用户账号推送目标资源对象以及随机选择的m个资源对象。
在实际实现时,服务器在随机选择m个资源对象之后,服务器还可以检测随机选择的m个资源对象中是否存在与目标资源对象重复的资源对象,如果有,则去除重复的资源对象,本实施例对此并不做限定。在服务器去除重复的资源对象时,服务器还可以再随机选择一个其它资源对象补上,本实施例对此并不做限定。
在服务器向用户账号推荐资源对象时,服务器向用户账号推荐随机选择的资源对象,使得服务器中的所有候选资源对象均有可能被推荐给用户账号。
以服务器为用户账号推荐视频,且需要为用户账号推荐5个视频为例,服务器可以通过上述实施例的推荐方法选择3个视频,并通过随机选择的方式从候选视频中再选择2个视频,进而向用户账号推荐最终确定的5个视频,这样在服务器保证推荐准确率的同时,也避免了服务器中的某些视频不被推荐的问题,保证了服务器推荐的视频的全面性。
请参考图3,其示出了本发明一个实施例提供的资源对象推荐装置的结构方框图,该资源对象推荐装置可以包括:历史对象获取模块310、推荐对象确定模块320和对象推荐模块330。
历史对象获取模块310,用于获取用户账号所对应的历史资源对象;
推荐对象确定模块320,用于根据所述历史对象获取模块310获取到的所述历史资源对象以及关系链信息确定需要推荐的目标资源对象,所述关系链信息包括资源对象与资源对象之间的访问向量,所述访问向量由各个用户的历史访问记录统计得到;
对象推荐模块330,用于向所述用户账号推荐所述推荐对象确定模块320确定的所述目标资源对象。
综上所述,本实施例提供的资源对象推荐装置,通过获取用户账号所对应的历史资源对象,根据历史资源对象以及关系链信息确定需要推荐的目标资源对象,将目标资源对象推荐给用户账号,关系链信息包括资源对象与资源对象之间的访问向量,访问向量由各个用户的历史访问记录统计得到;解决了现有技术中服务器在推荐资源对象时服务器的计算复杂度较高的问题;达到了可以根据历史资源对象以及关系链信息直接为用户账号推荐资源对象,进而降低服务器的计算复杂度的效果。
请参考图4,其示出了本发明一个实施例提供的资源对象推荐装置的结构方框图,该资源对象推荐装置可以包括:历史对象获取模块410、推荐对象确定模块420和对象推荐模块430。
历史对象获取模块410,用于获取用户账号所对应的历史资源对象;
推荐对象确定模块420,用于根据所述历史对象获取模块410获取到的所述历史资源对象以及关系链信息确定需要推荐的目标资源对象,所述关系链信息包括资源对象与资源对象之间的访问向量,所述访问向量由各个用户的历史访问记录统计得到;
对象推荐模块430,用于向所述用户账号推荐所述推荐对象确定模块420确定的所述目标资源对象。
可选地,所述推荐对象确定模块420,包括:
访问向量获取单元421,用于获取所述关系链信息中向量起点为所述历史资源对象的访问向量;
对象获取单元422,用于获取所述访问向量获取单元421获取到的所述访问向量的向量终点所对应的资源对象;
对象选择单元423,用于从所述对象获取单元获取的所述资源对象中选择至少一个资源对象;
推荐对象确定单元424,用于将所述对象选择单元选择得到的所述资源对象确定为所述目标资源对象。
可选地,所述对象选择单元423,包括:
对象排名子单元423a,用于在所述访问向量的向量值是所述历史访问记录中在访问向量起点所对应的资源对象后又访问向量终点所对应的资源对象的历史访问次数时,按照各个资源对象所对应的访问向量的向量值由大到小的顺序对获取的各个资源对象进行排名;
对象选择子单元423b,用于选择排名在前n位的资源对象,n为正整数。
可选地,所述装置还包括:
访问记录获取模块440,用于获取各个用户的历史访问记录;
访问向量检测模块450,用于在所述历史访问记录中存在访问第一资源对象后跳转访问第二资源对象的访问记录时,检测所述关系链信息中是否存在从所述第一资源对象指向所述第二资源对象的访问向量;
访问向量创建模块460,用于在所述访问向量检测模块450的检测结果为所述关系链信息中不存在所述访问向量时,创建所述访问向量,所述访问向量的向量值为初始值;将创建的所述访问向量存储至所述关系链信息;
向量值更新模块470,用于在所述访问向量检测模块450的检测结果为所述关系链信息中存在所述访问向量时,将所述访问向量的向量值加上预定值。
可选地,所述装置还包括:
对象选择模块480,用于从候选资源对象中随机选择m个资源对象;
所述对象推荐模块430,还用于向所述用户账号推荐所述目标资源对象以及随机选择的所述m个资源对象。
可选地,所述历史对象获取模块410,用于:
获取所述用户账号最近一次访问的历史资源对象;或,
获取所述用户账号历史访问次数最多的历史资源对象;或,
根据所述用户账号的历史访问记录随机选择一条历史资源对象。
综上所述,本实施例提供的资源对象推荐装置,通过获取用户账号所对应的历史资源对象,根据历史资源对象以及关系链信息确定需要推荐的目标资源对象,将目标资源对象推荐给用户账号,关系链信息包括资源对象与资源对象之间的访问向量,访问向量由各个用户的历史访问记录统计得到;解决了现有技术中服务器在推荐资源对象时服务器的计算复杂度较高的问题;达到了可以根据历史资源对象以及关系链信息直接为用户账号推荐资源对象,进而降低服务器的计算复杂度的效果。同时,本实施例通过根据由各个用户的历史访问记录统计得到的关系链信息来为用户账号推荐资源对象,提高了为用户账号推荐的资源对象的准确率。
本实施例通过根据访问历史资源对象后访问其它资源对象的访问次数对各个资源对象进行排名,进而只向用户账号推荐排名在前n位的资源对象,提高了推荐的资源对象的准确率。
请参考图5,其示出了本发明一个实施例提供的服务器的结构示意图。所述服务器500包括中央处理单元(CPU)501、包括随机存取存储器(RAM)502和只读存储器(ROM)503的系统存储器504,以及连接系统存储器504和中央处理单元501的系统总线505。所述服务器500还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)506,和用于存储操作系统513、应用程序514和其他程序模块515的大容量存储设备507。
所述基本输入/输出系统506包括有用于显示信息的显示器508和用于用户输入信息的诸如鼠标、键盘之类的输入设备509。其中所述显示器508和输入设备509都通过连接到系统总线505的输入输出控制器510连接到中央处理单元501。所述基本输入/输出系统506还可以包括输入输出控制器510以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器510还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备507通过连接到系统总线505的大容量存储控制器(未示出)连接到中央处理单元501。所述大容量存储设备507及其相关联的计算机可读介质为服务器500提供非易失性存储。也就是说,所述大容量存储设备507可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器504和大容量存储设备507可以统称为存储器。
根据本发明的各种实施例,所述服务器500还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器500可以通过连接在所述系统总线505上的网络接口单元511连接到网络512,或者说,也可以使用网络接口单元511来连接到其他类型的网络或远程计算机系统(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,所述一个或者一个以上程序用于执行上述实施例提供的资源对象推荐方法。
需要说明的是:上述实施例提供的资源对象推荐装置在推荐资源对象时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的资源推荐对象装置与资源对象推荐方法的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种资源对象推荐方法,其特征在于,所述方法包括:
获取用户账号所对应的历史资源对象;
根据所述历史资源对象以及关系链信息确定需要推荐的目标资源对象,所述关系链信息包括资源对象与资源对象之间的访问向量,所述访问向量由各个用户的历史访问记录统计得到;
向所述用户账号推荐所述目标资源对象。
2.根据权利要求1所述的方法,其特征在于,所述根据所述历史资源对象以及关系链信息确定需要推荐的目标资源对象,包括:
获取所述关系链信息中向量起点为所述历史资源对象的访问向量;
获取所述访问向量的向量终点所对应的资源对象;
从获取的所述资源对象中选择至少一个资源对象;
将选择得到的所述资源对象确定为所述目标资源对象。
3.根据权利要求2所述的方法,其特征在于,所述访问向量的向量值是所述历史访问记录中在访问向量起点所对应的资源对象后又访问向量终点所对应的资源对象的历史访问次数,所述从获取的所述资源对象中选择至少一个资源对象,包括:
按照各个资源对象所对应的访问向量的向量值由大到小的顺序对获取的各个资源对象进行排名;
选择排名在前n位的资源对象,n为正整数。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取各个用户的历史访问记录;
当所述历史访问记录中存在访问第一资源对象后又访问第二资源对象的访问记录时,检测所述关系链信息中是否存在从所述第一资源对象指向所述第二资源对象的访问向量;
如果所述关系链信息中不存在所述访问向量,则创建所述访问向量,所述访问向量的向量值为初始值;将创建的所述访问向量存储至所述关系链信息;
如果所述关系链信息中存在所述访问向量,则将所述访问向量的向量值加上预定值。
5.根据权利要求1至4任一所述的方法,其特征在于,所述向所述用户账号推荐所述目标资源对象之前,所述方法还包括:
从候选资源对象中随机选择m个资源对象;
所述向用户账号推荐所述目标资源对象,包括:
向所述用户账号推荐所述目标资源对象以及随机选择的所述m个资源对象。
6.根据权利要求1至4任一所述的方法,其特征在于,所述获取用户账号所对应的历史资源对象,包括:
获取所述用户账号最近一次访问的历史资源对象;或,
获取所述用户账号历史访问次数最多的历史资源对象;或,
根据所述用户账号的历史访问记录随机选择一条历史资源对象。
7.一种资源对象推荐装置,其特征在于,所述装置包括:
历史对象获取模块,用于获取用户账号所对应的历史资源对象;
推荐对象确定模块,用于根据所述历史对象获取模块获取到的所述历史资源对象以及关系链信息确定需要推荐的目标资源对象,所述关系链信息包括资源对象与资源对象之间的访问向量,所述访问向量由各个用户的历史访问记录统计得到;
对象推荐模块,用于向所述用户账号推荐所述推荐对象确定模块确定的所述目标资源对象。
8.根据权利要求7所述的装置,其特征在于,所述推荐对象确定模块,包括:
访问向量获取单元,用于获取所述关系链信息中向量起点为所述历史资源对象的访问向量;
对象获取单元,用于获取所述访问向量获取单元获取到的所述访问向量的向量终点所对应的资源对象;
对象选择单元,用于从所述对象获取单元获取的所述资源对象中选择至少一个资源对象;
推荐对象确定单元,用于将所述对象选择单元选择得到的所述资源对象确定为所述目标资源对象。
9.根据权利要求8所述的装置,其特征在于,所述对象选择单元,包括:
对象排名子单元,用于在所述访问向量的向量值是所述历史访问记录中在访问向量起点所对应的资源对象后又访问向量终点所对应的资源对象的历史访问次数时,按照各个资源对象所对应的访问向量的向量值由大到小的顺序对获取的各个资源对象进行排名;
对象选择子单元,用于选择排名在前n位的资源对象,n为正整数。
10.根据权利要求7所述的装置,其特征在于,所述装置还包括:
访问记录获取模块,用于获取各个用户的历史访问记录;
访问向量检测模块,用于在所述历史访问记录中存在访问第一资源对象后又访问第二资源对象的访问记录时,检测所述关系链信息中是否存在从所述第一资源对象指向所述第二资源对象的访问向量;
访问向量创建模块,用于在所述访问向量检测模块的检测结果为所述关系链信息中不存在所述访问向量时,创建所述访问向量,所述访问向量的向量值为初始值;将创建的所述访问向量存储至所述关系链信息;
向量值更新模块,用于在所述访问向量检测模块的检测结果为所述关系链信息中存在所述访问向量时,将所述访问向量的向量值加上预定值。
11.根据权利要求7至10任一所述的装置,其特征在于,所述装置还包括:
对象选择模块,用于从候选资源对象中随机选择m个资源对象;
所述对象推荐模块,还用于向所述用户账号推荐所述目标资源对象以及随机选择的所述m个资源对象。
12.根据权利要求7至10任一所述的装置,其特征在于,所述历史对象获取模块,用于:
获取所述用户账号最近一次访问的历史资源对象;或,
获取所述用户账号历史访问次数最多的历史资源对象;或,
根据所述用户账号的历史访问记录随机选择一条历史资源对象。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410484096.3A CN104243590B (zh) | 2014-09-19 | 2014-09-19 | 资源对象推荐方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410484096.3A CN104243590B (zh) | 2014-09-19 | 2014-09-19 | 资源对象推荐方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104243590A true CN104243590A (zh) | 2014-12-24 |
CN104243590B CN104243590B (zh) | 2017-10-13 |
Family
ID=52230918
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410484096.3A Active CN104243590B (zh) | 2014-09-19 | 2014-09-19 | 资源对象推荐方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104243590B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105307023A (zh) * | 2015-10-30 | 2016-02-03 | 北京奇艺世纪科技有限公司 | 应用推荐方法、装置及视频推荐方法、装置 |
CN106339493A (zh) * | 2016-08-31 | 2017-01-18 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及相关装置 |
CN106657132A (zh) * | 2017-01-09 | 2017-05-10 | 北京小米移动软件有限公司 | 访问网站的方法和装置 |
CN107967276A (zh) * | 2016-10-19 | 2018-04-27 | 阿里巴巴集团控股有限公司 | 一种推荐对象的方法和设备 |
CN108153863A (zh) * | 2017-12-25 | 2018-06-12 | 北京奇艺世纪科技有限公司 | 一种视频信息的表示方法及装置 |
CN108255893A (zh) * | 2016-12-29 | 2018-07-06 | 北京国双科技有限公司 | 个性化对象推荐方法和装置 |
CN108520017A (zh) * | 2018-03-21 | 2018-09-11 | 广东欧珀移动通信有限公司 | 应用程序推荐方法、装置、服务器以及存储介质 |
CN108665347A (zh) * | 2018-05-07 | 2018-10-16 | 平安普惠企业管理有限公司 | 基于用户需求的产品推荐方法、装置、设备及存储介质 |
CN110309235A (zh) * | 2019-06-28 | 2019-10-08 | 京东数字科技控股有限公司 | 一种数据处理方法、装置、设备及介质 |
CN111866541A (zh) * | 2020-08-06 | 2020-10-30 | 广州繁星互娱信息科技有限公司 | 直播推荐方法、装置、服务器及存储介质 |
CN114139049A (zh) * | 2021-11-19 | 2022-03-04 | 北京三快在线科技有限公司 | 资源推荐方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1903460A1 (en) * | 2006-09-21 | 2008-03-26 | Sony Corporation | Information processing |
CN102982131A (zh) * | 2012-11-16 | 2013-03-20 | 杭州东信北邮信息技术有限公司 | 一种基于马尔科夫链的图书推荐方法 |
CN102999588A (zh) * | 2012-11-15 | 2013-03-27 | 广州华多网络科技有限公司 | 一种多媒体应用的推荐方法和系统 |
CN103593479A (zh) * | 2013-11-29 | 2014-02-19 | 谢天添 | 应用程序菜单推荐方法及装置 |
CN103593434A (zh) * | 2013-11-12 | 2014-02-19 | 北京奇虎科技有限公司 | 应用推荐方法及装置、服务器设备 |
-
2014
- 2014-09-19 CN CN201410484096.3A patent/CN104243590B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1903460A1 (en) * | 2006-09-21 | 2008-03-26 | Sony Corporation | Information processing |
CN102999588A (zh) * | 2012-11-15 | 2013-03-27 | 广州华多网络科技有限公司 | 一种多媒体应用的推荐方法和系统 |
CN102982131A (zh) * | 2012-11-16 | 2013-03-20 | 杭州东信北邮信息技术有限公司 | 一种基于马尔科夫链的图书推荐方法 |
CN103593434A (zh) * | 2013-11-12 | 2014-02-19 | 北京奇虎科技有限公司 | 应用推荐方法及装置、服务器设备 |
CN103593479A (zh) * | 2013-11-29 | 2014-02-19 | 谢天添 | 应用程序菜单推荐方法及装置 |
Non-Patent Citations (1)
Title |
---|
I. ZUKERMAN、D. W. ALBRECHT、A. E. NICHOLSON: "Predicting users’ requests on the WWW", 《UM99 USER MODELING》 * |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105307023A (zh) * | 2015-10-30 | 2016-02-03 | 北京奇艺世纪科技有限公司 | 应用推荐方法、装置及视频推荐方法、装置 |
CN105307023B (zh) * | 2015-10-30 | 2018-04-13 | 北京奇艺世纪科技有限公司 | 应用推荐方法、装置及视频推荐方法、装置 |
CN106339493A (zh) * | 2016-08-31 | 2017-01-18 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及相关装置 |
CN107967276A (zh) * | 2016-10-19 | 2018-04-27 | 阿里巴巴集团控股有限公司 | 一种推荐对象的方法和设备 |
CN108255893A (zh) * | 2016-12-29 | 2018-07-06 | 北京国双科技有限公司 | 个性化对象推荐方法和装置 |
CN106657132A (zh) * | 2017-01-09 | 2017-05-10 | 北京小米移动软件有限公司 | 访问网站的方法和装置 |
CN108153863A (zh) * | 2017-12-25 | 2018-06-12 | 北京奇艺世纪科技有限公司 | 一种视频信息的表示方法及装置 |
CN108520017A (zh) * | 2018-03-21 | 2018-09-11 | 广东欧珀移动通信有限公司 | 应用程序推荐方法、装置、服务器以及存储介质 |
CN108665347A (zh) * | 2018-05-07 | 2018-10-16 | 平安普惠企业管理有限公司 | 基于用户需求的产品推荐方法、装置、设备及存储介质 |
CN110309235A (zh) * | 2019-06-28 | 2019-10-08 | 京东数字科技控股有限公司 | 一种数据处理方法、装置、设备及介质 |
CN110309235B (zh) * | 2019-06-28 | 2022-01-07 | 京东科技控股股份有限公司 | 一种数据处理方法、装置、设备及介质 |
CN111866541A (zh) * | 2020-08-06 | 2020-10-30 | 广州繁星互娱信息科技有限公司 | 直播推荐方法、装置、服务器及存储介质 |
CN111866541B (zh) * | 2020-08-06 | 2022-07-29 | 广州繁星互娱信息科技有限公司 | 直播推荐方法、装置、服务器及存储介质 |
CN114139049A (zh) * | 2021-11-19 | 2022-03-04 | 北京三快在线科技有限公司 | 资源推荐方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104243590B (zh) | 2017-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104243590A (zh) | 资源对象推荐方法和装置 | |
CN106777229B (zh) | 一种个性化推荐实时性测试方法、装置及电子设备 | |
CN106657197B (zh) | 文件上传的方法和装置 | |
CN110730387B (zh) | 视频播放控制方法和装置、存储介质及电子装置 | |
CN104581407A (zh) | 一种视频预览的方法和装置 | |
CN107864405B (zh) | 一种收视行为类型的预测方法、装置及计算机可读介质 | |
CN106469165A (zh) | 弹幕展示方法及弹幕展示装置 | |
CN110727868A (zh) | 对象推荐方法、装置和计算机可读存储介质 | |
CN110390493B (zh) | 任务管理方法、装置、存储介质及电子设备 | |
US10193989B2 (en) | Visualization of user behavior | |
CN109508405A (zh) | 一种推荐视频的确定方法、装置、电子设备及存储介质 | |
CN108319628B (zh) | 一种用户兴趣确定方法及装置 | |
CN106788993A (zh) | 一种加密通信方法、装置及电子设备 | |
CN104536884A (zh) | 代码测试方法和装置 | |
CN108062401A (zh) | 应用推荐方法、装置及存储介质 | |
CN104579709A (zh) | 数据对象共享的方法和系统、及电子设备 | |
CN113282268B (zh) | 音效配置方法和装置、存储介质及电子设备 | |
CN105487769A (zh) | 一种媒体文件展示方法、装置及电子设备 | |
CN108966041A (zh) | 一种音视频播放埋点方法和装置 | |
CN111210279B (zh) | 一种目标用户预测方法、装置和电子设备 | |
CN111813407B (zh) | 游戏开发方法、游戏运行方法、装置和电子设备 | |
CN114510305A (zh) | 模型训练方法、装置、存储介质及电子设备 | |
CN110413800B (zh) | 一种提供小说信息的方法与设备 | |
CN107508705A (zh) | 一种http元素的资源树构建方法及计算设备 | |
CN109712011B (zh) | 社区发现方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder |
Address after: 511446 Guangzhou City, Guangdong Province, Panyu District, South Village, Huambo Business District Wanda Plaza, block B1, floor 28 Patentee after: Guangzhou Huaduo Network Technology Co., Ltd. Address before: 510655, Guangzhou, Whampoa Avenue, No. 2, creative industrial park, building 3-08, Patentee before: Guangzhou Huaduo Network Technology Co., Ltd. |
|
CP02 | Change in the address of a patent holder |