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

内容推荐方法、装置、服务器及存储介质

文献发布时间:2023-06-19 11:32:36


内容推荐方法、装置、服务器及存储介质

技术领域

本申请实施例涉及计算机技术领域,特别涉及一种内容推荐方法、装置、服务器及存储介质。

背景技术

内容推荐是指从推荐内容库中筛选出内容推荐给用户,筛选推荐内容时通常需要结合用户特征和历史行为数据,基于用户特征和历史行为数据从推荐内容库中召回用户可能感兴趣的内容。

现有技术中,推荐系统向新用户或冷启动用户推荐内容时,一般是根据实时在线或离线接收用户行为进行汇总统计,从推荐库中召回推荐内容,但冷启动用户往往没有足够的用户行为数据,出现召回推荐内容不足。

发明内容

本申请实施例提供了一种内容推荐方法、装置、服务器及存储介质。所述技术方案如下:

一方面,本申请实施例提供了一种内容推荐方法,所述方法包括:

接收终端发送的内容推荐请求,所述内容推荐请求中包含用户信息;

基于所述用户信息从第一召回池中获取第一召回内容,所述第一召回池中包含全量召回内容;

响应于所述第一召回内容的召回量小于召回量阈值,从第二召回池中获取第二召回内容,所述第二召回池中的召回内容基于所述第一召回池中召回内容的历史召回记录确定得到;

基于所述第一召回内容和所述第二召回内容向所述终端推送目标召回内容。

另一方面,本申请实施例提供了一种内容推荐装置,所述装置包括:

接收模块,用于接收终端发送的内容推荐请求,所述内容推荐请求中包含用户信息;

第一召回模块,用于基于所述用户信息从第一召回池中获取第一召回内容,所述第一召回池中包含全量召回内容;

第二召回模块,用于响应于所述第一召回内容的召回量小于召回量阈值,从第二召回池中获取第二召回内容,所述第二召回池中的召回内容基于所述第一召回池中召回内容的历史召回记录确定得到;

推送模块,用于基于所述第一召回内容和所述第二召回内容向所述终端推送目标召回内容。

另一方面,本申请实施例提供了一种服务器,所述直播服务器包括处理器和存储器,所述存储器中存储有至少一段程序,所述至少一段程序由所述处理器加载并执行以实现上述方面所述的内容推荐方法。

另一方面,本申请实施例提供了一种计算机可读存储介质,所述存储介质存储有至少一条指令,所述至少一条指令用于被处理器执行以实现如上述方面所述的内容推荐方法。

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

本申请实施例提供的技术方案带来的有益效果至少包括:

本申请实施例提供的方法,服务器根据获取到的终端发送的内容推荐请求,获取内容推荐请求中包含的用户信息,进而根据用户信息从第一召回池中获取第一召回内容;此外,考虑到冷启动阶段,仅基于用户信息不足以从第一召回池中召回足量内容,通过从第二召回池中获取第二召回内容,将第一召回内容和第二召回内容推送至终端,确保向用户推送足量推荐内容;并且,由于第二召回内容是基于第一召回池中召回内容的历史召回记录确定得到的,因此采用本申请实施例提供的方案,在保证召回足量内容的前提下,能够提高内容召回质量,提高后续用户使用召回内容的概率。

附图说明

图1示出了本申请一个示例性实施例提供的内容推荐方法的实施环境的示意图;

图2是本申请一个示例性实施例提供的内容推荐方法的流程图;

图3示出了本申请一个示例性实施例提供的推荐系统的系统架构图;

图4是本申请另一个示例性实施例提供的内容推荐方法的流程图;

图5是本申请另一个示例性实施例提供的内容推荐方法的流程图;

图6是本申请一个示例性实施例提供的第二召回池更新过程的流程图;

图7示出了本申请一个示例性实施例示出的内容推荐方法的实施示意图;

图8是本申请一个示例性实施例提供的内容推荐装置的结构框图;

图9是本申请一个实施例提供的服务器的结构框图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步的详细描述。

相关技术中,对于冷启动用户召回的推荐内容不足时,推荐平台大多采用补充当前点击量较高的内容或通过运营手动配置内容的方式补充,然而基于对内容的搜索量或点击量确定的方式无法保证推荐内容的热度,通过运营手动配置的方式实时性较差,且流程繁琐。

本申请实施例提供的方案中,推荐系统基于获取到的用户信息,根据用户信息选择内容推送给用户,并且在推送的同时对内容进行在线实时汇总统计,得到近期已推荐内容的热度数据,也就是最新的热门已推荐数据。主要解决用户无法从推荐系统中得到足够的推荐内容以及冷启动用户的推荐,确保向用户推送了近期召回热度较高的内容,提高了内容召回质量,且提高后续用户使用召回内容的概率。

请参考图1,其示出了本申请一个实施例提供的实施环境的示意图。该实施环境可以包括:终端110和服务器120。

终端110中安装有具有推送功能的应用程序,终端可以是诸如手机、台式电脑、平板电脑、多媒体播放设备和膝上型便携计算机等电子设备。应用程序可以是音乐类应用程序、社交类应用程序、购物类应用程序、新闻类应用程序、视频类应用程序和美食类应用程序等。本实施例中,用户通过使用终端110登录相应的用户帐号,通过向服务器120发送推荐请求,获取相应的推送内容。

终端110通过无线网络或有线网络与服务器120相连。

服务器120包括一台服务器、多台服务器、云计算平台和虚拟化中心中的至少一种。服务器120为终端110中的应用程序提供后台服务。例如,服务器120可以是上述所说的应用程序的后台服务器。本申请实施例中,服务器120运行有推荐系统121,推荐系统121是用于根据用户的推荐请求,从海量的内容中召回需要推荐的内容,服务器120可以接收来自终端110发送的推荐请求,根据推送请求从推荐系统121中获取推荐内容,并将推荐内容发送至终端110;可选的,服务器120还用于存储对应各个帐号的帐号信息。如对于音乐类软件,服务器120可以存储对应帐号的历史收听记录、历史推荐记录、历史收藏记录、音乐购买记录、用户的评论以及点赞记录等,服务器120基于存储的记录信息向用户推荐歌曲,此外,服务器120还可以存储用户帐号之间的社交关系,根据社交关系确定与之关联的其他用户帐号,进而将其他帐号的信息作为推荐依据。

图2是本申请一个示例性实施例提供的内容推荐方法的流程图,本实施例以该方法用于图1中的服务器为例进行说明。该方法包括以下步骤。

步骤201,接收终端发送的内容推荐请求,内容推荐请求中包含用户信息。

当用户启动应用程序获取推荐内容时,通过触发终端向服务器发送内容推荐请求。其中,内容推荐请求中包含有终端对应的用户帐号。当服务器接收到终端发送的内容推送请求时,获取内容推送请求中包含的用户信息,用户信息可以是用户的帐号标识,服务器根据帐号标识获取帐号对应的帐号信息,用户的帐号信息可以包括用户特征信息和用户行为数据中的至少一种。用户特征信息可以包括用户的性别信息、年龄信息、职业信息和喜好信息等;用户行为数据可以包括用户对应用程序的点击操作和浏览内容等。

以终端启动音乐应用程序为例,当用户启动音乐软件并需要获取推荐歌曲时,通过对歌曲推荐控件的点击操作,触发终端向服务器发送推荐请求,服务器根据获取到终端发送的推荐请求,获取终端对应的用户信息,其中包括登录音乐软件的帐号信息、用户的听歌记录、用户偏好的音乐风格等信息。

步骤202,基于用户信息从第一召回池中获取第一召回内容,第一召回池中包含全量召回内容。

如图3所示,服务器中运行有推荐系统320,推荐系统320用于根据服务器获取到的用户信息向用户推荐内容,推荐系统320由第一召回池321和第二召回池322组成,第一召回池321中包含全量召回内容。

推荐系统基于获取到的用户信息从第一召回池中获取第一召回内容,第一召回池中包含有用于向用户推荐内容的全量召回内容,如应用程序是音乐软件时,对应第一召回池中保存的是音乐曲库,第一召回内容是基于用户信息召回的待推荐歌曲;应用程序是新闻类软件时,对应第一召回池保存的是新闻信息库,第一召回内容是基于用户信息召回的待推荐新闻。其中,用户信息可以是基于用户的帐号信息、用户特征信息及用户行为数据中的至少一种获得的召回内容。

在一种可能的实施方式中,当服务器接收到终端发送的推荐请求时,推荐系统根据获取的用户的帐号信息及对应用户的年龄信息、性别信息及职业信息等,对用户进行分类,如根据用户的年龄信息确定用户是“70后”,则将召回的歌曲属性定位为经典老歌或戏曲音乐,若用户年龄是“00后”,则更多的推荐摇滚音乐和唱片骑师(Disc Jockey,DJ)歌曲;如根据用户的性别信息推荐歌曲,当用户是女性时,则更多的推荐男歌手演唱的歌曲。

在另一种可能的实施方式中,还可以根据用户的历史听歌记录进行推荐,如获取用户近一个月的历史听歌记录,对历史记录的歌曲进行分类和排名,如用户听歌记录中比较靠前的歌曲类型为轻音乐和民谣,则从第一召回池中选取一定比例或一定数量的轻音乐和民谣歌曲。此外,还可以根据获取到的用户对应用程序的用户行为数据确定用户的喜好,如根据用户播放歌曲的歌曲内容,从第一召回池中获取与用户播放歌曲较为相似的歌曲。

此外,还可以通过获取用户收藏的歌曲或关注的歌手从第一召回池中获取相关的歌曲和歌手的其他歌曲,或根据平台的听歌排行榜或下载排行榜选取第一召回内容,本申请实施例对选取第一召回内容的方式不作具体限定。

步骤203,响应于第一召回内容的召回量小于召回量阈值,从第二召回池中获取第二召回内容,第二召回池中的召回内容基于第一召回池中召回内容的历史召回记录确定得到。

在一种可能的场景下,若发送内容推荐请求的用户是冷启动用户,即无历史行为数据的用户,如新注册用户,服务器获取不到终端发送的推荐请求中包含的用户信息,或注册用户的使用时间较短,服务器获取到的用户信息数据不足以从第一召回池中获取到足够的第一召回内容,即第一召回内容的召回量达不到召回量阈值,无法向用户推荐内容。

如图3所示,当从第一召回池321中获取的第一召回内容的召回量小于设定阈值时,需要从第二召回池322中获取第二召回内容,以使召回内容的召回量达到召回量阈值或超过召回阈值,确保终端接收到推荐内容达到一定数量,不至于推荐内容过少,影响用户阅览。其中,第二召回池322中的召回内容是基于第一召回池321中召回的历史召回记录确定得到,即第二召回池322中保存的召回内容是历史召回记录中满足一定条件下的第一召回内容。

示意性的,服务器根据用户信息多次从第一召回池中获取一定数量的待推荐歌曲,并将多次召回的待推荐歌曲中截取部分歌曲存入第二召回池中,形象理解为第二召回池中保存的歌曲是从第一召回池中多次召回的热门歌曲。

步骤204,基于第一召回内容和第二召回内容向终端推送目标召回内容。

在一种可能的实施方式中,当第一召回内容和第二召回内容的召回量的总和达到召回量阈值时,确定满足推荐条件,将第一召回内容和第二召回内容确定为目标召回内容,并将目标召回内容推送给终端。

在另一种可能的实施方式中,若第一召回内容和第二召回内容确定的召回量较多,而实际并不需要向终端推送所有的召回内容,因此还可以对第一召回内容和第二召回内容进行筛选,获得筛选后的目标召回内容,进而将目标召回内容推给至终端。

本申请实施例提供的方法,服务器根据获取到的终端发送的内容推荐请求,获取内容推荐请求中包含的用户信息,进而根据用户信息从第一召回池中获取第一召回内容;此外,考虑到冷启动阶段,仅基于用户信息不足以从第一召回池中召回足量内容,通过从第二召回池中获取第二召回内容,将第一召回内容和第二召回内容推送至终端,确保向用户推送足量推荐内容;并且,由于第二召回内容是基于第一召回池中召回内容的历史召回记录确定得到的,因此采用本申请实施例提供的方案,在保证召回足量内容的前提下,能够提高内容召回质量,提高后续用户使用召回内容的概率。

图4是本申请另一个示例性实施例提供的内容推荐方法的流程图,本实施例以该方法用于图1所示的服务器为例进行说明。该方法包括:

步骤401,接收终端发送的内容推荐请求,内容推荐请求中包含用户信息。

本步骤的实施方式可以参考步骤201,本实施例在此不做赘述。

步骤402,基于用户信息从第一召回池中获取第一召回内容,第一召回池中包含全量召回内容。

本步骤的实施方式可以参考步骤202,本实施例在此不做赘述。

步骤403,响应于第一召回内容的召回量小于召回量阈值,从第二召回池中获取第二召回内容,第二召回池中的召回内容基于第一召回池中召回内容的历史召回记录确定得到。

在一种可能的实施方式中,对于冷启动用户来说,服务器获取到的用户信息数据不足以从第一召回池中召回足够数量的第一召回内容,即第一召回内容的召回量小于召回量阈值。此时,需要从第二召回池中获取第二召回内容,以使召回内容的召回量达到召回量阈值或超过召回阈值。因此,如图5所示,步骤403还可以包括以下步骤。

步骤403A,基于第一召回量和召回量阈值,确定第二召回量,第二召回量与第一召回量呈负相关关系。

由于推荐系统基于用户信息获取到的第一召回内容的第一召回量小于召回量阈值,根据获取到的第一召回内容的第一召回量和设置的召回量阈值,确定需要从第二召回池中召回第二召回内容的第二召回量。通常情况下,第二召回量与第一召回量呈负相关,即第一召回内容的召回量越多,则需要获取的第二召回内容则越少。例如,根据推荐系统设置的召回量阈值和第一召回内容对应第一召回量的差值确定第二召回内容的第二召回量。

示意性的,以推荐系统向终端推荐歌曲为例,推荐系统基于用户信息从第一召回池中召回21首歌曲,但考虑到用户每日听歌时长和每首歌曲的时长,推荐系统设置的向用户推荐的歌曲数量设定为30首,由于用户信息数据不足以获取到足够数量的推荐歌曲,则推荐系统从第二召回池中最少选取9首歌作为补充歌曲,以使推荐歌曲达到或超过30首,满足推送的条件。

步骤403B,从第二召回池中获取第二召回量的第二召回内容。

根据召回量阈值和第一召回内容对应召回量的差值确定第二召回内容的召回量,并从第二召回池中选取第二召回量的第二召回内容。

由于第二召回池中的召回内容是基于第一召回池中召回内容的历史召回记录确定得到,因此,从第二召回池中选取的第二召回内容并不是基于用户信息获取得到的,而是推荐系统根据以往向其他用户推荐内容时,内容被召回的次数确定的热门召回内容,因此,当第一召回量未超过召回阈值时,通过补充第二召回内容的方式可以向用户提供召回热度较高的内容,以满足用户对热门内容的需求。

在一种可能的实施方式中,可能根据用户信息获取到的第一召回内容的召回量比较接近召回量阈值,但通过召回量阈值和第一召回内容对应召回量的差值确定的第二召回量的数值较小,以此推荐方式向用户推送的内容可能都是同一类型或同一标签属性的内容,其结果容易造成推送内容的单一化,降低用户体验。因此,在确保第二召回量的基础上,适当增加第二召回量,如设置第二召回量是召回阈值与第一召回量差值的整数倍,这样,既可确保召回内容的召回量达到召回阈值,且增大了将第二召回内容推送给用户的概率,避免推送内容的单一化,同时也避免了后续对召回内容进一步筛选后召回量达不到推荐条件的情况发生。

步骤404,将第一召回内容和第二召回内容的并集确定为第三召回内容。

从第二召回池中获取第二召回内容后,将第二召回内容与第一召回内容进行比对,若第一召回内容和第二召回内容中出重复的召回内容,则去除第一召回内容或第二召回内容中重复的召回内容,确保第一召回量和第二召回量的总和达到召回量阈值的同时,避免出现重复的召回的内容,并将第一召回内容和第二召回内容的并集确定为第三召回内容,且第三召回内容的召回量不小于召回量阈值。

步骤405,基于第三召回内容以及用户信息对应的历史推荐记录,确定目标召回内容,目标召回内容不包含历史推荐记录中的召回内容。

当推荐系统确定出第三召回内容后,根据获取的用户信息,获取用户信息对应的历史推荐记录,历史推荐记录中记录有最近一段时间内向用户推荐的历史推荐记录,如保存有近一个月内向用户推送的历史推荐记录,根据获取的历史推荐记录,对第三召回内容进行过滤,过滤第三召回内容中包含的历史推荐中的召回内容,得到目标召回内容。

示意性的,以推荐歌曲为例,服务器根据获取的用户帐号信息,获取对应帐号在一个月内的历史歌曲推荐记录,根据历史歌曲推荐记录,从获取的第三召回内容中过滤推送过的歌曲,如第三召回内容中包含有40首召回的歌曲,经过与用户近一个月的历史推送记录进行比对,过滤已推荐歌曲5首,得到的目标召回内容中包含有35首目标召回歌曲。

此外,还可以根据用户信息获取对应的用户历史听歌记录,如检测第三召回内容里包含有用户近一个月内的历史听歌记录中的歌曲,则过滤对应歌曲。此外,为了进一步提升用户体验,还可以获取第三召回内容中音乐的版权信息,如对应音乐软件平台不具有对应歌曲的版权,则将对应歌曲过滤,以免将无版权歌曲推送给用户,降低用户体验;此外还可以根据用户信息判断用户是否是高级用户(Very Important Person,VIP),若用户不是VIP用户,则过滤相应的VIP歌曲。

步骤406,基于目标召回内容更新用户信息对应的历史推荐记录。

基于确定的目标召回内容后,对用户信息对应的历史推荐记录进行更新,即确定的目标召回内容是需要向用户进行推荐的,因此本次确定的目标召回内容需要作为一次历史推荐记录进行更新,避免下次向用户推荐时出现重复的推荐内容。

在另一种可能的实施方式中,用户可能并未使用推荐系统推荐的内容,若此时更新推荐记录可能会照成用户错过推荐内容,因此,可以通过获取用户的历史使用记录,根据用户的历史使用记录确定推送且被使用的内容,并基于历史使用记录进行更新。

此外,还可以将用户的历史听歌记录作为更新依据,在更新记录前,获取用户在一定时间内的历史听歌记录,并更新相应的历史听歌记录。

步骤407,基于各条目标召回内容的来源,确定推荐优先级,其中,来自第一召回池的目标召回内容的推荐优先级高于来自第二召回池的目标召回内容的推荐优先级。

确定目标召回内容后,还需要对各条目标召回内容在终端的显示顺序进行排序,通常情况下,通常用户在浏览推荐内容时,排名靠前的内容被用户浏览或点击的概率要大于排名靠后的内容,因此还需要确定各条目标召回内容的推荐优先级。

在一种可能的实施方式中,由于从第一召回池中获取的第一召回内容是基于用户的用户信息确定的,因此第一召回内容大概率是用户感兴趣的内容,而从第二召回池获取的第二召回内容不是基于用户信息确定的,用户不一定对其感兴趣。因此,将来自第一召回池的目标召回内容的推荐优先级设置高于来自第二召回池的目标召回内容的推荐优先级,即第一召回内容的推荐顺序靠前,第二召回内容的推荐顺序靠后进行排序。

示意性的,第一召回内容中大多是用户感兴趣的民谣歌曲和情歌,而第二召回内容中大多是摇滚歌曲,则将民谣歌曲和情歌优先显示在推荐列表靠前位置,将摇滚歌曲排列在靠后的位置。

步骤408,基于各条目标召回内容的历史召回次数确定推荐优先级。

除按照用户喜好对推荐内容进行排序外,为了丰富推荐内容的显示方式,在向用户推荐目标召回内容前,获取一定时间内各条目标召回内容的召回次数,按照召回次数确定推荐优先级,即召回次数高的内容的推荐优先级高于召回次数低的内容的推荐优先级。

此外,还可以同时根据各条目标召回内容的来源及召回次数确定优先级,如设置第一召回内容的推荐优先级高于第二召回内容,对第二召回内容按照召回次数的高低确定各条推荐优先级。

此外,为了避免用户阅览或点击内容的单一化,还可以根据目标召回内容的字母顺序确定优先级或随机确定等方式。

步骤409,基于推荐优先级对目标召回内容进行排序,并向终端推送排序后的目标召回内容。

确定目标召回内容的推荐优先级后,将目标召回内容推送给对应终端。

本申请实施例中,当服务器基于获取的用户信息数据不足以从第一召回池中获取足够的第一召回内容时,通过从第二召回池中获取第二召回内容并行补充,并将第一召回内容和第二召回内容的并集确定为第三召回内容,以使召回内容的召回量达到召回量阈值,为召回内容不足的情况下提供兜底数据;

进一步的,根据历史推荐记录对第三召回内容进行筛选,并根据推荐优先级进行排序,即向用户推荐了个性化的目标召回内容,也避免了推荐内容的单一化而降低用户的体验。

在一种可能的应用场景下,若发送内容推荐请求的用户是冷启动用户,由于服务器获取不到足够的历史行为数据,因此从第一召回池中获取不到足够的第一召回内容,因而需要从第二召回池中获取第二召回内容作为兜底数据。为了确保从第二召回池中获取到召回次数较多的最新热门已推荐内容,因此,还需要通过对第一召回内容进行数据筛选,实时更新第二召回池中的召回内容。

图6是本申请另一个示例性实施例提供的第二召回池更新过程的流程图,本实施例以该方法用于图1所示的服务器为例进行说明。该方法包括:

步骤601,获取第一召回池中各条召回内容的历史召回记录。

当推荐系统根据配置信息将目标召回内容推送给用户后,获取第一召回池中各条召回内容在一定时间内的历史召回记录,其中,历史召回记录是在设定时间内统计的推送给用户的目标召回内容得到,历史记录可以包括获取的目标召回内容的召回时间、召回次数及召回内容的名称等。

示意性的,以推荐系统召回歌曲为例,当推荐系统向用户推荐召回的歌曲后,获取第一召回池中歌曲的历史召回记录,历史召回记录可以是在最近一周或最近一个月内向用户推荐歌曲的历史召回记录,包括歌曲的名称,每首歌曲的最近召回时间和歌曲的召回次数等。

步骤602,更新第一召回池中目标召回内容的历史召回时刻及召回次数。

当确定完第二召回池中的召回内容后,还需要更新历史召回记录,包括更新目标召回内容对应的历史召回时刻及召回次数,历史召回时刻和召回次数即是最近一次召回相应内容时所对应的召回时间和召回次数。

示意性的,以推荐歌曲为例,当确定目标召回歌曲并向用户推荐歌曲后,根据确定的目标召回歌曲,从第一召回池中获取对应歌曲在半小时内的历史召回记录,包括歌曲最后一次召回的召回时间和召回次数,如获取歌曲A的历史召回记录为最后一次召回时间是三分钟前,总计召回次数为一百次,则在此次对历史召回记录进行更新后,对应歌曲A的最后一次召回时间更新为当前时间,总计召回次数为一百零一次。

步骤603,基于历史召回记录,确定第一召回池中,在召回时段内召回次数大于等于最小召回次数的候选召回内容。

由于推荐系统的第一召回池包含有海量的召回内容,其历史召回记录包含的召回记录较多,当需要更新第二召回池中的内容时,若获取时间段较长的历史召回记录会增加推荐系统处理数据的负荷,且更新完后的第二召回池中的召回内容也无法满召回内容热度的时效性和准确性。

推荐系统基于获取到的历史召回记录,统计第一召回池中各条召回内容的召回时间和召回次数,根据召回时间和召回次数确定在预设召回时间段内召回次数大于等于最小召回次数的召回内容,并将召回内容确定为候选召回内容。

示意性的,以推荐歌曲为例,基于获取的历史召回歌曲记录,获取历史召回歌曲记录中每首歌曲的最近召回时间和召回次数,筛选在最近30分钟以内,且召回次数在100次以上的历史召回歌曲,并将筛选出来的歌曲作为候选召回歌曲。

步骤604,基于召回次数对候选召回内容进行排序。

在一种可能的实施方式中,推荐系统根据召回时间和召回次数确定的候选召回内容较多,其中可能包含有大量时间比较靠前且召回次数相对较少的内容,但需要更新的第二召回池中保存的是近期热门召回内容,因此,还需要对候选召回内容进一步筛选,确定出当前比较热门的召回内容,并对其进行更新。

当推荐系统根据召回时间和召回次数确定出候选召回内容后,对各条候选召回内容进行排序,按照召回次数的多少进行排序,即获取各条候选召回内容的召回次数,将候选召回次数较多的候选召回内容排在靠前的位置,召回次数较少的候选召回内容排在靠后的位置,当出现有相同召回次数的候选召回内容时,获取相应候选召回内容的最近一次的召回时间,将最近召回的候选内容排在靠前的位置,确保召回内容的推荐热度的实时性。

示意性的,当推荐系统召回出候选召回歌曲后,确定每首歌曲的召回次数,将歌曲按照召回次数的多少进行排序,当出现有至少两首歌曲的召回次数相同时,如检测到歌曲A和歌曲B在最近三十分钟内的召回次数都是365次,则获取相应歌曲的召回时间,若歌曲A的最近召回时间是三分钟前,而歌曲B的最近召回时间是二十分钟前,则确定歌曲A是当前比较热门的热门推荐歌曲,将歌曲A排在歌曲B的前面。

步骤605,基于召回比例,从排序后的候选召回内容中筛选出第二召回池中的召回内容。

当推荐系统从第一召回池中获取到的第一召回内容的召回量较多,根据历史召回记录确定的符合条件的候选召回内容较多,为了确保第二召回池中召回内容的时效性和准确性,还需要对排序后的候选召回内容做进一步筛选,如根据推荐系统设置的召回比例筛选出候选召回内容中排名靠前的召回内容。如推荐系统设置的召回比例为候选召回内容的20%才能作为第二召回池中的召回内容。

以推荐歌曲为例,当推荐系统对候选召回歌曲进行排序后,候选歌曲的数量达到了1000首,为了保证筛选的第二召回池中的召回歌曲热度的时效性,选取1000首歌曲中排名前20%的歌曲作为第二召回池中的召回内容,即选取前200首歌曲作为待更新的召回歌曲。

步骤606,响应于满足召回池更新条件,基于筛选配置参数以及更新后的历史召回记录更新第二召回池。

将对候选召回内容进行筛选后得到的内容作为第二召回池中的召回内容,并根据筛选配置参数以及更新后的历史召回记录更新第二召回池。

如配置参数设置为每隔固定时间对第二召回池进行更新,且第二召回池中只保存最近三十分钟内满足条件的召回内容,即对超过三十分钟的历史记录进行更新,并更新第二召回池的召回内容。

步骤607,基于历史召回次数和最近召回时间,从第二召回池的前部获取第二召回量的第二召回内容。

对第二召回池进行更新后,确保第二召回池中保存的是最新的热门召回内容,且第二召回池中的召回内容是基于历史召回次数和最近召回时间降序排序的。且当推荐系统在对冷启动用户获取第一召回内容未超过召回量阈值时,根据召回量阈值和第一召回内容对应第一召回量的差值确定第二召回量,并从第二召回池中按照从前往后的顺序选取第二召回量的第二召回内容。

本申请实施例中,服务器根据向用户推荐的目标召回内容更新对应的历史召回记录,并根据更新后的历史召回记录选取候选召回内容,进而基于设置的配置参数和更新后的历史召回记录对候选召回内容进行排序和筛选,从而实现对第二召回池的更新。

对于冷启动用户,当推荐系统在对冷启动用户获取第一召回内容未超过召回量阈值时,从第二召回池中选取第二召回量的第二召回内容进行补充,达到向用户推荐内容的条件,为召回内容不足的情况下提供兜底数据,同时还向用户推送最新热门召回内容,保证推荐内容时效性的同时,向用户提供了多样化的推荐内容。

请参考图7,其示出了本申请一个示例性实施例示出的内容推荐方法的实施示意图,本实施例以该方法用于图1所示的服务器为例进行说明。

如图7所示,当用户需要通过获取推荐内容时,通过触发终端向服务器发送内容推荐请求701。服务器与终端通过网关设备相连,当服务器接收到终端发送的内容推荐请求701时,获取对应内容推荐请求701中包含的用户信息。

进一步地,服务器基于获取到的用户信息并获取推荐系统的配置信息702,从第一召回池703中获取第一召回内容,对于冷启动用户而言,服务器获取不到足够的用户信息,无法从第一召回池703中获取到召回量阈值的第一召回内容,此时推荐系统根据设置的召回量阈值和第一召回内容的差值确定需要从第二召回池704中获取第二召回量的第二召回内容,且获取的第二召回内容是第二召回池704中保存的最新的热门召回内容。将第一召回内容和第二召回内容的并集确定为第三召回内容,并根据用户对应的历史推荐记录705对第三召回内容进行过滤筛选,确保筛选后的目标召回内容中不含有历史推荐记录中的内容,确保推荐内容的新颖性。

当确定出目标召回内容后,对目标召回内容进行排序,按照第一召回内容排列在前,第二召回内容排列在后的方式确定推荐优先级,将内容推送给用户,进而用户通过获取到推荐结果706。

进一步地,推荐系统根据确定的目标召回内容更新历史推荐记录705和第二召回池704,且第二召回池704的召回内容按照筛选配置参数以及更新后的历史召回记录进行更新,配置过程可以通过设置配置参数进行更新,如通过设置参数百分比(P)、最近召回时间(M)和最小召回次数(N)来更新第二召回池704,如推荐系统设置的参数P=20,M=30,N=100,则表示将30分钟内召回次数大于等于100次的目标召回内容中前20%才能作为第二召回池704,且第二召回池704中的召回内容按照召回次数和最近召回时间进行排序,即召回次数多的内容排列在前,当具有相同召回次数的召回内容时,确定最近召回时间更近的排列在前。当第一召回内容不足时,根据确定的第二召回量从第二召回池704中按照从前往后的顺序选取第二召回量的第二召回内容。

此外,由于第二召回池704中保存的是实时更新和生成的热门召回内容,还可以将生成的第二召回池704作为多业务共享推荐平台,即在多业务共享统一推荐平台的情况下,音乐平台A具有对应的第二召回池,第二召回池中个保存有当前热门召回歌曲,当第二召回池作为共享推荐平台后,音乐平台B也可以根据需要从音乐平台A中的第二召回池704中获取热门召回音乐,且第二召回池704可以根据音乐平台B实时更新热门召回音乐,通过共享推荐平台的方式即减少大数据重复运算,也实现了不同平台之间的数据交互。

图8是本申请一个示例性实施例提供的内容推荐装置的结构框图。所述装置用于服务器,所述装置包括:

接收模块801,用于接收终端发送的内容推荐请求,所述内容推荐请求中包含用户信息;

第一召回模块802,用于基于所述用户信息从第一召回池中获取第一召回内容,所述第一召回池中包含全量召回内容;

第二召回模块803,用于响应于所述第一召回内容的召回量小于召回量阈值,从第二召回池中获取第二召回内容,所述第二召回池中的召回内容基于所述第一召回池中召回内容的历史召回记录确定得到;

推送模块804,用于基于所述第一召回内容和所述第二召回内容向所述终端推送目标召回内容。

可选的,所述装置还包括:

获取模块,用于获取所述第一召回池中各条召回内容的所述历史召回记录;

筛选模块,用于基于所述历史召回记录和筛选配置参数,从所述第一召回池筛选出所述第二召回池中的召回内容。

可选的,所述筛选配置参数包括召回时段、最小召回次数以及召回比例;

所述筛选模块,包括:

第一确定单元,用于基于所述历史召回记录,确定所述第一召回池中,在所述召回时段内召回次数大于等于所述最小召回次数的候选召回内容;

排序单元,用于基于所述召回次数对所述候选召回内容进行排序;

筛选单元,用于基于所述召回比例,从排序后的所述候选召回内容中筛选出所述第二召回池中的召回内容。

可选的,所述装置还包括:

第一更新模块,用于更新所述第一召回池中所述目标召回内容的所述历史召回时刻及所述召回次数;

第二更新模块,用于响应于满足召回池更新条件,基于所述筛选配置参数以及更新后的所述历史召回记录更新所述第二召回池。

可选的,所述推送模块804,包括:

第二确定单元,用于将所述第一召回内容和所述第二召回内容的并集确定为第三召回内容;

第三确定单元,用于基于所述第三召回内容以及所述用户信息对应的历史推荐记录,确定所述目标召回内容,所述目标召回内容不包含所述历史推荐记录中的召回内容;

推送单元,用于向所述终端推送所述目标召回内容。

可选的,所述推送单元,用于:

确定各条所述目标召回内容的推荐优先级;

基于所述推荐优先级对所述目标召回内容进行排序,并向所述终端推送排序后的所述目标召回内容。

可选的,所述推送单元,还用于:

基于各条所述目标召回内容的来源,确定所述推荐优先级,其中,来自所述第一召回池的所述目标召回内容的推荐优先级高于来自所述第二召回池的所述目标召回内容的推荐优先级;

和/或,

基于各条所述目标召回内容的历史召回次数确定所述推荐优先级。

可选的,所述装置还包括:

第三更新模块,用于基于所述目标召回内容更新所述用户信息对应的所述历史推荐记录。

可选的,所述第二召回模块803,包括:

第四确定单元,用于基于所述第一召回量和所述召回量阈值,确定第二召回量,所述第二召回量与所述第一召回量呈负相关关系;

第一获取单元,用于从所述第二召回池中获取所述第二召回量的所述第二召回内容。

可选的,所述第二召回池中的召回内容基于历史召回次数和最近召回时间降序排序;

所述第一获取单元,还用于:

从所述第二召回池的前部获取所述第二召回量的所述第二召回内容。

综上所述,本申请实施例提供的方法,服务器根据获取到的终端发送的内容推荐请求,获取内容推荐请求中包含的用户信息,进而根据用户信息从第一召回池中获取第一召回内容;此外,考虑到冷启动阶段,仅基于用户信息不足以从第一召回池中召回足量内容,通过从第二召回池中获取第二召回内容,将第一召回内容和第二召回内容推送至终端,确保向用户推送足量推荐内容;并且,由于第二召回内容是基于第一召回池中召回内容的历史召回记录确定得到的,因此采用本申请实施例提供的方案,在保证召回足量内容的前提下,能够提高内容召回质量,提高后续用户使用召回内容的概率。

本申请实施例中,当服务器基于获取的用户信息数据不足以从第一召回池中获取足够的第一召回内容时,通过从第二召回池中获取第二召回内容并行补充,并将第一召回内容和第二召回内容的并集确定为第三召回内容,以使召回内容的召回量达到召回量阈值,为召回内容不足的情况下提供的兜底数据;

进一步的,根据历史推荐记录对第三召回内容进行筛选,并根据推荐优先级进行排序,即向用户推荐了个性化的目标召回内容,也避免了推荐内容的单一化而降低用户的体验。

本申请实施例中,服务器根据向用户推荐的目标召回内容更新对应的历史召回记录,并根据更新后的历史召回记录选取候选召回内容,进而基于设置的配置参数和更新后的历史召回记录对候选召回内容进行排序和筛选,从而实现对第二召回池的更新。

对于冷启动用户,当推荐系统在对冷启动用户获取第一召回内容未超过召回量阈值时,从第二召回池中选取第二召回量的第二召回内容进行补充,达到向用户推荐内容的条件,为召回内容不足的情况下提供兜底数据,同时还向用户推送最新热门召回内容,保证推荐内容时效性的同时,向用户提供了多样化的推荐内容。

请参考图9,其示出了本申请一个实施例提供的服务器的结构框图,该服务器可以用于实施上述实施例中提供的服务器执行的内容推荐方法。所述服务器900包括中央处理单元(CPU,Central Processing unit)901、包括随机存取存储器(RAM,Random AccessMemory)902和只读存储器(ROM,Read-Only Memory)903的系统存储器904,以及连接系统存储器904和中央处理单元901的系统总线905。所述服务器900还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O,Input/Output)906,和用于存储操作系统913、应用程序914和其他程序模块915的大容量存储设备907。

所述基本输入/输出系统906包括有用于显示信息的显示器908和用于用户输入信息的诸如鼠标、键盘之类的输入设备909。其中所述显示器908和输入设备909都通过连接到系统总线905的输入/输出控制器910连接到中央处理单元901。所述基本输入/输出系统906还可以包括输入/输出控制器910以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入/输出控制器910还提供输出到显示屏、打印机或其他类型的输出设备。

所述大容量存储设备907通过连接到系统总线905的大容量存储控制器(未示出)连接到中央处理单元901。所述大容量存储设备907及其相关联的计算机可读介质为服务器900提供非易失性存储。也就是说,所述大容量存储设备907可以包括诸如硬盘或者CD-ROM(Compact Disc Read-Only Memory,只读光盘)驱动器之类的计算机可读介质(未示出)。

不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM(Erasable Programmable Read-Only Memory,可擦除可编程只读存储器)、EEPROM(Electrically Erasable Programmable Read-Only Memory,带电可擦除可编程只读存储器)、闪存或其他固态存储设备,CD-ROM、DVD(Digital Video Disc,高密度数字视频光盘)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器904和大容量存储设备907可以统称为存储器。

根据本申请的各种实施例,所述服务器900还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器900可以通过连接在所述系统总线905上的网络接口单元911连接到网络912,或者说,也可以使用网络接口单元911来连接到其他类型的网络或远程计算机系统(未示出)。

所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上中央处理单元901执行。

本申请还提供了一种计算机可读存储介质,所述可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述任意示例性实施例所提供的内容推荐方法。

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

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

相关技术
  • 内容推荐方法、推荐信息生成方法、内容推荐程序、内容推荐服务器以及内容提供系统
  • 内容推荐系统、内容推荐方法、内容推荐装置、程序和信息存储介质
技术分类

06120112965660