欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 游戏推送方法、装置、设备及计算机可读存储介质独创技术74861字

游戏推送方法、装置、设备及计算机可读存储介质

2021-02-17 06:33:34

游戏推送方法、装置、设备及计算机可读存储介质

  技术领域

  本申请涉及计算机技术领域,尤其涉及一种游戏推送方法、装置、设备及计算机可读存储介质。

  背景技术

  随着互联网技术的发展,游戏成为越来越多互联网用户关注的一项网络服务。在对游戏进行推送时,通常是基于游戏类型或游戏的热门程度进行推送,但通过这种方式进行游戏推送,会导致推送的游戏千篇一律,不能真实触摸和预测用户的游戏喜好,导致推送的准确性较低。

  发明内容

  本申请实施例提供一种游戏推送方法、装置、设备及计算机可读存储介质,能够通过针对视频的历史观看记录来确定推送的游戏,提高游戏推送的准确性。

  本申请实施例的技术方案是这样实现的:

  本申请实施例提供一种游戏推送方法,包括:

  获取目标用户针对视频的历史观看记录;

  基于所述历史观看记录,从与所述历史观看记录相关联的至少两个游戏筛选维度,对多个候选推荐游戏进行评分,得到所述候选推荐游戏对应各游戏筛选维度的推荐分数;

  分别获取各所述游戏筛选维度对应的权重,并

  基于至少两个所述游戏筛选维度对应的权重,对所述候选推荐游戏对应各游戏筛选维度的推荐分数进行加权求和,以得到各所述候选推荐游戏的综合推荐分数;

  基于得到的所述综合推荐分数,从所述多个候选推荐游戏中选取目标数量的游戏推送至所述目标用户的终端。

  本申请实施例提供一种游戏推送方法,包括:

  在图形界面中呈现对应游戏的推荐功能项;

  响应于针对所述推荐功能项的触发操作,呈现游戏的推荐页面,并

  在所述推荐页面中,呈现目标数量的游戏;

  其中,所述目标数量的游戏为,基于与目标用户的历史观看记录相关联的至少两个游戏筛选维度,对多个候选推荐游戏筛选得到。

  本申请实施例提供一种游戏推送装置,包括:

  第一获取模块,用于获取目标用户针对视频的历史观看记录;

  第一评分模块,用于基于所述历史观看记录,从与所述历史观看记录相关联的至少两个游戏筛选维度,对多个候选推荐游戏进行评分,得到所述候选推荐游戏对应各游戏筛选维度的推荐分数;

  第二获取模块,用于分别获取各所述游戏筛选维度对应的权重;

  第二评分模块,用于基于至少两个所述游戏筛选维度对应的权重,对所述候选推荐游戏对应各游戏筛选维度的推荐分数进行加权求和,以得到各所述候选推荐游戏的综合推荐分数;

  推送模块,用于基于得到的所述综合推荐分数,从所述多个候选推荐游戏中选取目标数量的游戏推送至所述目标用户的终端。

  上述方案中,所述第一获取模块,还用于获取目标用户观看时长比例达到比例阈值的视频;

  根据视频的类型,从获取的所述视频中筛选出非游戏类视频;

  基于筛选得到的所述非游戏类视频,生成目标用户针对视频的历史观看记录。

  上述方案中,所述至少两个游戏筛选维度包括视频的名称;

  所述第一评分模块,还用于针对各候选推荐游戏执行以下操作:

  获取所述历史观看记录中包含的至少一个视频的名称;

  将所述至少一个视频的名称与所述候选推荐游戏的名称进行匹配,得到匹配结果;

  基于所述匹配结果,对所述候选推荐游戏进行评分。

  上述方案中,所述第一评分模块,还用于当所述匹配结果表征所述历史观看记录中存在与所述候选推荐游戏的名称相同的目标视频时,获取目标视频的类型及所述目标视频的类型所对应的权重,并

  将所述目标视频的类型所对应的权重,作为所述候选推荐游戏的推荐分数;

  当所述匹配结果表征所述历史观看记录中不存在与所述候选推荐游戏的名称相同的视频时,确定所述候选推荐游戏的评分为零。

  上述方案中,所述至少两个游戏筛选维度包括视频的类型;

  所述第一评分模块,还用于针对各候选推荐游戏执行以下操作:

  获取所述历史观看记录中视频的总数量;

  根据视频的类型与游戏类型之间的关联关系,获取与所述候选推荐游戏的游戏类型相对应的目标视频类型;

  获取所述历史观看记录中所述目标视频类型对应的视频数量;

  将所述目标视频类型对应的视频数量与所述总数量的比值,作为所述候选推荐游戏的推荐分数。

  上述方案中,所述至少两个游戏筛选维度包括视频的类型;

  所述第一评分模块,还用于针对各候选推荐游戏执行以下操作:

  获取所述历史观看记录中视频的总数量;

  根据视频的类型与游戏类型之间的关联关系,获取与所述候选推荐游戏对应的目标视频类型;

  获取所述历史观看记录中属于所述目标视频类型的视频数量、及所述目标视频类型与所述候选推荐游戏的游戏类型之间的关联关系所述对应的权重;

  确定属于所述目标视频类型的视频数量与所述目标视频类型对应的权重的乘积;

  将确定的所述乘积与所述总数量的比值,作为所述候选推荐游戏的推荐分数。

  上述方案中,所述至少两个游戏筛选维度包括视频的画面风格;

  所述第一评分模块,还用于针对各候选推荐游戏执行以下操作:

  获取所述历史观看记录中每个视频与所述候选推荐游戏关于画面风格的相似度,得到至少一个相似度;

  确定获取的至少一个相似度的平均值,并将确定的平均值作为所述候选推荐游戏的推荐评分。

  上述方案中,所述第一评分模块,还用于获取所述历史观看记录中每个视频所对应的第一图像、及所述候选推荐游戏对应的第二图像;

  获取所述第一图像与所述第二图像关于纹理特征的第一相似度,并获取所述第一图像与所述第二图像关于色彩特征的第二相似度;

  将所述第一相似度与所述第二相似度的平均值,作为历史观看记录中相应视频与所述候选推荐游戏关于画面风格的相似度。

  上述方案中,所述至少两个游戏筛选维度包括视频与候选推荐游戏的关联关系;

  所述第一评分模块,还用于针对各候选推荐游戏执行以下操作:

  根据所述视频与候选推荐游戏的关联关系,确定所述历史观看记录中存在与所述候选推荐游戏相关联的目标视频时,获取所述候选推荐游戏与所述目标视频之间的关联关系所对应的权重,并

  将所述候选推荐游戏与所述目标视频之间的关联关系所对应的权重,作为所述候选推荐游戏的推荐分数。

  上述方案中,所述至少两个游戏筛选维度包括用户间关于历史观看记录的相似度;

  所述第一评分模块,还用于针对各候选推荐游戏执行以下操作:

  获取至少一个用户与目标用户关于历史观看记录的相似度;

  根据所述相似度,从至少一个用户中筛选出目标数量的候选用户;

  获取各候选用户的历史推荐列表;

  根据各候选用户的历史推荐列表,对所述候选推荐游戏进行评分。

  上述方案中,所述第一评分模块,还用于针对每个用户执行以下操作:

  获取所述用户的历史观看记录;

  根据所述目标用户与所述用户的历史观看记录,确定所述目标用户与所述用户共同观看的视频数量、目标用户观看的视频数量、以及所述用户观看的视频数量;

  获取目标用户观看的视频数量与所述用户观看的视频数量的平均值;

  将所述共同观看的视频数量与所述平均值的比值,作为所述目标用户与所述用户关于历史观看记录的相似度。

  本申请实施例提供一种游戏推送装置,包括:

  第一呈现模块,用于在图形界面中呈现对应游戏的推荐功能项;

  第二呈现模块,用于响应于针对所述推荐功能项的触发操作,呈现游戏的推荐页面,并在所述推荐页面中,呈现目标数量的游戏;

  其中,所述目标数量的游戏为,基于与目标用户的历史观看记录相关联的至少两个游戏筛选维度,对多个候选推荐游戏筛选得到。

  本申请实施例提供一种计算机设备,包括:存储器,用于存储可执行指令;

  处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的游戏推送方法。

  本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本申请实施例提供的游戏推送方法。

  本申请实施例具有以下有益效果:

  本申请通过获取目标用户针对视频的历史观看记录;基于所述历史观看记录,从与所述历史观看记录相关联的至少两个游戏筛选维度,对多个候选推荐游戏进行评分,得到所述候选推荐游戏对应各游戏筛选维度的推荐分数;分别获取各所述游戏筛选维度对应的权重,并基于至少两个所述游戏筛选维度对应的权重,对所述候选推荐游戏对应各游戏筛选维度的推荐分数进行加权求和,以得到各所述候选推荐游戏的综合推荐分数;基于得到的所述综合推荐分数,从所述多个候选推荐游戏中选取目标数量的游戏推送至所述目标用户的终端;如此,实现了通过针对视频的历史观看记录来确定推送的游戏,充分利用了用户的历史观影记录,提高了游戏推送的准确性。

  附图说明

  图1是本申请实施例提供的游戏推送系统100的架构示意图;

  图2是本申请实施例提供的游戏推送方法的流程示意图;

  图3是本申请实施例提供的游戏推送方法的流程示意图;

  图4A-4D是本申请实施例提供的游戏推荐页面的示意图;

  图5是本申请实施例提供的游戏推荐页面的示意图;

  图6是本申请实施例提供的游戏推送方法的实现逻辑示意图;

  图7是本申请实施例提供的游戏推送装置的结构组成示意图;

  图8为本申请实施例提供的计算机设备500的结构示意图。

  具体实施方式

  为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

  在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。

  在以下的描述中,所涉及的术语“第一第二第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一第二第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。

  除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。

  对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。

  1)响应于,用于表示所执行的操作所依赖的条件或者状态,当满足所依赖的条件或状态时,所执行的一个或多个操作可以是实时的,也可以具有设定的延迟;在没有特别说明的情况下,所执行的多个操作不存在执行先后顺序的限制。

  为实现游戏的个性化推送,相关技术中提供了一种游戏的推送方法,即基于用户对游戏的评分、评论内容等显式反馈数据,或者用户对游戏的点击行为、浏览记录等隐式反馈数据,针对单个用户进行个性化的游戏推送。

  本申请发明人在实施本申请的过程中发现,相关技术中的游戏推送方法都是基于游戏相关的数据,这些数据只要来源于应用商店、游戏平台及社交平台,对于视频类应用或网站,由于难以获取充足的游戏相关的数据,导致游戏推送的准确性差。

  基于此,本申请实施例提供一种游戏推送方法、装置、设备和计算机可读存储介质,以至少解决相关技术中的上述问题,接下来分别说明。

  参见图1,图1是本申请实施例提供的游戏推送系统100的架构示意图,为实现支撑一个示例性应用,终端400(示例性示出了终端400-1和终端400-2)通过网络300连接服务器200,网络300可以是广域网或者局域网,又或者是二者的组合。

  终端400(如终端400-1),用于在图形界面中呈现对应游戏的推荐功能项;响应于针对推荐功能项的触发操作,发送游戏的获取请求至服务器200;

  服务器200,用于获取目标用户针对视频的历史观看记录;基于历史观看记录,从与历史观看记录相关联的至少两个游戏筛选维度,对多个候选推荐游戏进行评分,得到候选推荐游戏对应各游戏筛选维度的推荐分数;分别获取各游戏筛选维度对应的权重,并基于至少两个游戏筛选维度对应的权重,对候选推荐游戏对应各游戏筛选维度的推荐分数进行加权求和,以得到各候选推荐游戏的综合推荐分数;基于得到的综合推荐分数,从多个候选推荐游戏中选取目标数量的游戏推送至目标用户的终端;

  终端400(如终端400-1),还用于呈现游戏的推荐页面,并在推荐页面中,呈现目标数量的游戏;

  在一些实施例中,服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(CDN,ContentDelivery Network)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能电视、智能手表等,但并不局限于此。在实际实施时,终端上设置有客户端,如视频客户端、游戏客户端、浏览器客户端等。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例中不做限制。本申请实施例中也不对终端以及服务器的数量做限制。

  基于上述对本申请实施例的游戏推送系统的说明,接下来对本申请实施例提供的游戏推送方法进行说明。在一些实施例中,本申请实施例提供的媒游戏推送方法可由终端或服务器单独实施,或由服务器及终端协同实施,下面以服务器实施为例说明本申请实施例提供的媒体信息兴趣度的匹配方法。

  参见图2,图2是本申请实施例提供的游戏推送方法的流程示意图,将结合图2示出的步骤进行说明。

  步骤201:服务器获取目标用户针对视频的历史观看记录。

  在一些实施例中,用户通过设置于终端上的视频客户端观看视频,视频客户端会记录用户观看过的视频及观看的时间,并上传至服务器,服务器获取用户观看过的视频,以生成目标用户针对视频的历史观看记录。

  在实际应用中,历史观看记录可以是记录用户最近观看的目标数量的视频,如获取用户最近观看的20个视频;也可以是记录用户所有观看过的视频;还可以是记录目标用户一定时间段内观看过的所有视频,如记录目标用户在一个月年内观看过的所有视频。

  在一些实施例中,历史观看记录中的视频是非游戏类视频,也即,利用针对非游戏类视频的历史观看记录,来确定推送的游戏。

  在一些实施例中,可以通过以下方式获取目标用户针对视频的历史观看记录:获取目标用户观看时长比例达到比例阈值的视频;基于目标用户观看时长比例达到比例阈值的视频,生成目标用户针对视频的历史观看记录。

  在实际应用中,针对某一视频,仅当目标用户观看时长比例达到比例阈值时,才认为是一次有效的观看,即用户对该视频是感兴趣;若目标用户观看时长比例未达到比例阈值,那么目标用户对该视频可能并不感兴趣,利用该视频推送的游戏,可能也不是用户喜欢的,进而导致游戏推送的准确性低。基于此,仅基于目标用户观看时长比例达到比例阈值的视频,生成目标用户针对视频的历史观看记录。

  例如,可以将比例阈值设置为80%,若目标用户针对视频A的观看时长仅占视频A总时长的20%,那么,视频A不应该被记录在历史观看记录中;若针对视频A的观看时长仅占视频A总时长的90%,那么,将视频B记录在历史观看记录中。

  步骤202:基于历史观看记录,从与历史观看记录相关联的至少两个游戏筛选维度,对多个候选推荐游戏进行评分,得到候选推荐游戏对应各游戏筛选维度的推荐分数。

  在实际实施时,对于游戏库中每个候选推荐游戏,都会从至少两个游戏筛选维度对齐进行评分,以得到对应各游戏筛选维度的推荐分数。其中,游戏筛选维度是与历史观看记录相关联的,也即是依据与历史观看记录相关的信息,对候选推荐游戏进行评分。

  在一些实施例中,至少两个游戏筛选维度包括视频的名称;从与历史观看记录相关联的至少两个游戏筛选维度,对多个候选推荐游戏进行评分,包括:针对各候选推荐游戏执行以下操作:获取历史观看记录中包含的每个视频的名称;将每个视频的名称与候选推荐游戏的名称进行匹配,得到匹配结果;基于匹配结果,对候选推荐游戏进行评分。

  在实际实施时,可以通过计算每个视频的名称与候选推荐游戏的名称之间的相似度,来实现每个视频的名称与候选推荐游戏的名称的匹配。

  这里,可以通过欧式距离、曼哈顿距离、编辑距离、杰卡德(Jaccard)相似度、余弦相似度等,来计算每个视频的名称与候选推荐游戏的名称之间的相似度。

  在一些实施例中,可以根据每个视频的名称与候选推荐游戏的名称之间的相似度,确定这些相似度中的最大值,将确定的最大值作为候选推荐游戏的推荐分数。

  在一些实施例中,可以通过以下方式基于匹配结果,对候选推荐游戏进行评分:当匹配结果表征历史观看记录中存在与候选推荐游戏的名称相同的目标视频时,获取目标视频的类型及目标视频的类型所对应的权重,并将目标视频的类型所对应的权重,作为候选推荐游戏的推荐分数;当匹配结果表征历史观看记录中不存在与候选推荐游戏的名称相同的视频时,确定候选推荐游戏的评分为零。

  在实际应用中,存在一些由影视作品衍生的游戏,可以根据视频与其衍生游戏之间的关系,对游戏进行评分。通常视频衍生游戏与相应视频的名称是相同的,因此,可以通过名称匹配,来判断某一候选推荐游戏是否为历史观看记录中某一视频的衍生游戏,若是,则可以获取该视频的类型所对应的权重,将该权重作为候选推荐游戏的评分;否则,将该候选推荐游戏的评分设置为零。

  在实际实施时,可以通过欧式距离来获取每个视频的名称与候选推荐游戏的名称之间的相似度,若存在视频的名称与候选推荐游戏的名称之间的相似度为100%,那么,说明该视频的名称与候选推荐游戏的名称是相同的,将该视频确定为目标视频,进而获取目标视频的类型,并获取该视频的类型所对应的权重,将获取的权重作为候选推荐游戏的推荐分数。

  这里,视频的类型包括电视剧、电影、动漫、短视频、综艺等,在实际实施时,可以分别为不同的类型设置权重,其中,由于动漫和游戏同属ACG(动画、漫画、游戏的总称)圈子,往往具有相同的用户群体,短视频则能更加针对性的表现用户在游戏方面的喜好,因此,动漫和短视频的权重相对于其它来说权重较高。

  例如,电视剧、电影、动漫、短视频、综艺对应的权重分别为3、3、7、8、2,对于游戏1,将目标用户的历史观看记录中每个视频的名称与游戏1的名称进行匹配,当历史观看记录中存在与游戏1名称相同的视频时,获取与游戏名称相同的视频,假设该视频为视频A,那么,获取视频A的类型,当视频A的类型为动漫时,游戏1的推荐分数为7,当视频A的类型为电视剧时,游戏1的推荐分数为3。

  需要说明的是,视频的类型的划分方式不限于上述方式,还可以采用其它方式进行视频的类型的划分。

  在一些实施例中,至少两个游戏筛选维度包括视频的类型;服务器可以通过以下方式对多个候选推荐游戏进行评分:针对各候选推荐游戏执行以下操作:获取历史观看记录中视频的总数量;根据视频的类型与游戏类型之间的关联关系,获取与候选推荐游戏的游戏类型相对应的目标视频类型;获取历史观看记录中目标视频类型对应的视频数量;将目标视频类型对应的视频数量与总数量的比值,作为候选推荐游戏的推荐分数。

  在实际实施时,预先设置视频的类型与游戏类型之间的关联关系,比如悬疑剧与解谜游戏进行关联,然后对于每个候选推荐游戏,获取该候选推荐游戏的游戏类型,并依据视频的类型与游戏类型之间的关联关系,确定与候选推荐游戏的游戏类型相对应的目标视频类型;进而将目标视频类型的视频在历史观看记录中所占的比例,也即目标视频类型对应的视频数量与总数量的比值,作为候选推荐游戏的推荐分数。

  例如,表1示出了视频的类型与游戏类型之间的关联关系,假设目标用户的历史观看记录中视频的总数量为10,其中,喜剧类型4部,生活类型2部,悬疑类型4部,那么,当候选推荐游戏的游戏类型为休闲时,该候选推荐游戏的推荐分数为2/10=0.2;当候选推荐游戏的游戏类型为益智时,该候选推荐游戏的推荐分数为4/10=0.4;当候选推荐游戏的游戏类型为动作时,该候选推荐游戏的推荐分数为0。

  表1

  在一些实施例中,一个游戏类型可以与一个或多个视频的类型进行关联,以及一个视频的类型也可以与一个或多个游戏类型进行关联。例如,可以将游戏类型“休闲”与视频类型“喜剧”进行关联,同时将游戏类型“休闲”与视频类型“生活”进行关联。

  当候选推荐游戏的游戏类型与多个视频的类型相关联时,确定的目标视频类型的数量为多个,在实际实施时,获取每个目标视频类型的视频在历史观看记录中所占的比例,将所有目标视频类型的视频在历史观看记录中所占比例之和,作为候选推荐游戏的推荐分数。

  例如,表2示出了视频的类型与游戏类型之间的关联关系,假设目标用户的历史观看记录中视频的总数量为10,其中,喜剧类型4部,生活类型2部,悬疑类型4部,那么,当候选推荐游戏的游戏类型为休闲时,该候选推荐游戏的推荐分数为(2+4)/10=0.2;当候选推荐游戏的游戏类型为益智时,该候选推荐游戏的推荐分数为4/10=0.4;当候选推荐游戏的游戏类型为动作时,该候选推荐游戏的推荐分数为0。

  表2

  

  在一些实施例中,可以依据视频的类型与游戏类型之间的相似性,来将视频的类型与游戏类型进行关联,例如,游戏类型包括休闲、益智、动作、冒险、策略,视频的类型包括喜剧、生活、动作、悬疑、剧情,由于冒险和悬疑的相似性较高,因此,可以将游戏类型“冒险”与视频的类型“悬疑”进行关联。在另一些实施例中,可以人工设置视频的类型与游戏类型之间的关联关系。

  在一些实施例中,至少两个游戏筛选维度包括视频的类型;服务器可以通过以下方式对多个候选推荐游戏进行评分:针对各候选推荐游戏执行以下操作:获取历史观看记录中视频的总数量;根据视频的类型与游戏类型之间的关联关系,获取与候选推荐游戏的游戏类型对应的目标视频类型;获取历史观看记录中属于目标视频类型的视频数量、及目标视频类型与所述候选推荐游戏的游戏类型之间的关联关系对应的权重;确定属于目标视频类型的视频数量、与目标视频类型与所述候选推荐游戏的游戏类型之间的关联关系对应的权重的乘积;将确定的乘积与总数量的比值,作为候选推荐游戏的推荐分数。

  在实际实施时,在将视频的类型与游戏类型进行关联之后,还可以为每个关联关系设置一个权重,其中,权重位于1到10之间。然后,依据视频的类型与游戏类型之间的关联关系,确定与候选推荐游戏的游戏类型相对应的目标视频类型;进而获取目标视频类型与候选推荐游戏的游戏类型之间的关联关系所对应的权重;依据目标视频类型与候选推荐游戏的游戏类型之间的关联关系所对应的权重,对目标视频类型的视频在历史观看记录中所占的比例进行加权,得到候选推荐游戏的推荐分数。

  也即,通过公式确定候选推荐游戏的推荐分数,N表示历史观看记录中视频的总数量,n表示属于目标视频类型的视频数量,W表示该游戏类型对应视频类型的权重,其中,N、n为自然数,W位于[1,10]。

  例如,表3示出了视频的类型与游戏类型之间的关联关系及相应的权重。

  表3

  

  

  参见表3,假设目标用户的历史观看记录中视频的总数量为10,其中,喜剧类型4部,生活类型2部,悬疑类型4部,那么,当候选推荐游戏的游戏类型为休闲时,该候选推荐游戏的推荐分数为2*8/10=1.6;当候选推荐游戏的游戏类型为益智时,该候选推荐游戏的推荐分数为4*7/10=2.8;当候选推荐游戏的游戏类型为动作时,该候选推荐游戏的推荐分数为0。

  在一些实施例中,当候选推荐游戏的游戏类型与多个视频的类型相关联时,确定的目标视频类型的数量为多个,在实际实施时,获取每个目标视频类型的视频在历史观看记录中所占的比例、以及每个目标视频类型与候选推荐游戏的游戏类型之间的关联关系所对应的权重;依据目标视频类型与候选推荐游戏的游戏类型之间的关联关系所对应的权重,对每个目标视频类型的视频在历史观看记录中所占的比例进行加权求和,得到候选推荐游戏的推荐分数。

  也即,通过公式确定候选推荐游戏的推荐分数,N表示历史观看记录中视频的总数量,n表示属于目标视频类型的视频数量,W表示该游戏类型对应视频类型的权重,其中,N、n为自然数,W的取值范围为[1,10]。

  例如,表4示出了视频的类型与游戏类型之间的关联关系,假设目标用户的历史观看记录中视频的总数量为10,其中,喜剧类型4部,生活类型2部,悬疑类型4部,那么,当候选推荐游戏的游戏类型为休闲时,该候选推荐游戏的推荐分数为(4x8+2x7)/10=4.6;当候选推荐游戏的游戏类型为益智时,该候选推荐游戏的推荐分数为(4x7)/10=2.8;当候选推荐游戏的游戏类型为动作时,该候选推荐游戏的推荐分数为0。

  表4

  

  在一些实施例中,至少两个游戏筛选维度包括视频的画面风格;从与历史观看记录相关联的至少两个游戏筛选维度,对多个候选推荐游戏进行评分,包括:针对各候选推荐游戏执行以下操作:获取所述历史观看记录中每个视频与所述候选推荐游戏关于画面风格的相似度,得到至少一个相似度;确定获取的至少一个相似度的平均值,并将确定的平均值作为所述候选推荐游戏的推荐评分。

  在实际实施时,根据视频中的至少一个帧图像或视频海报,获取视频的画面风格特征;以及根据游戏画面的图像或游戏海报,获取游戏的画面风格特征;进而计算视频的画面风格特征与游戏的画面风格特征之间的相似度,得到视频与候选推荐游戏关于画面风格的相似度;在得到历史观看记录中所有视频与候选推荐游戏之间的相似度之后,计算得到的多个相似度的平均值,将平均值作为候选推荐游戏对应画面风格的推荐评分。

  这里,若历史观看记录中仅有一个视频,那么直接将该视频所对应的画面风格、与候选推荐游戏对应的画面风格之间的相似度,作为候选推荐游戏对应画面风格的推荐评分。

  在一些实施例中,可以在获取到至少一个相似度的平均值之后,对得到的平均值进行加权,如将获取的相似度的平均值与10相乘,以使得到的推荐分数位于1至10之间。

  在一些实施例中,可以通过以下方式获取所述历史观看记录中每个视频与所述候选推荐游戏关于画面风格的相似度:获取历史观看记录中每个视频所对应的第一图像、及候选推荐游戏对应的第二图像;获取第一图像与第二图像之间的纹理特征的第一相似度,并获取第一图像与第二图像之间的色彩特征的第二相似度;将第一相似度与第二相似度的平均值,作为历史观看记录中相应视频与所述候选推荐游戏关于画面风格的相似度。

  这里,可以把画面风格划分为纹理和色彩两个方面,也即对于每个第一图像与第二图像,获取第一图像与第二图像关于纹理特征的第一相似度、以及第一图像与第二图像关于色彩特征的第二相似度,然后将第一相似度与第二相似度的平均值,作为第一图像与第二图像关于画面风格的相似度。

  其中,纹理特征用灰度共生矩阵表示,颜色特征用直方图表示。

  实际实施时,计算第一图像的灰度共生矩阵P和第二图像的灰度共生矩阵Q。在计算灰度共生矩阵时,需要先将RGB图像转换为灰度图像,再进行归一化。得到灰度共生矩阵P、Q后,可以通过以下公式计算第一图像与第二图像关于纹理特征的第一相似度C1:

  

  其中,P(i,j)为第一图像的灰度共生矩阵P第i行、第j列的值;Q(i,j)为第二图像的灰度共生矩阵Q第i行、第j列的值。这里,C1的取值范围为[0,1]。

  然后,计算第一图像的颜色直方图G和第二图像的颜色直方图S。在计算颜色直方图时,需要先将RGB图像转换为HSV图像,然后使用H数值计算直方图,该直方图就是颜色的数值。得到颜色直方图G、S之后,可以通过以下公式计算第一图像与第二图像关于颜色特征的第二相似度C2:

  

  其中,N为直方图中竖条区域(bin)的数量。C2的取值范围为[0,1]。

  在得到第一相似度和第二相似度之后,可以通过以下公式,得到视频与候选推荐游戏关于画面风格的相似度C:

  

  这里,可以直接将得到的第一图像与第二图像关于画面风格的相似度,作为候选推荐游戏的推荐分数;还可以在获取到每个第一图像与第二图像关于画面风格的相似度之后,将获取的相似度的平均值与10相乘,将得到的乘积作为候选推荐游戏的推荐分数。

  例如,表5为候选推荐游戏与历史观看记录中各视频关于画面风格的相似度表。

  表5

  参见表5,这里,候选推荐游戏为游戏1,历史观看记录中包括视频A、B、C、D,视频A、B、C、D与游戏1关于画面风格的相似度分别为0.3347、0.2767、0.3455、0.6877,那么游戏1的推荐分数为:

  R游戏1=10*(0.3347+0.2767+0.3455+0.6877)/4=4.1115。

  在一些实施例中,至少两个游戏筛选维度包括视频与候选推荐游戏的关联关系;可以通过以下方式对多个候选推荐游戏进行评分:

  针对各候选推荐游戏执行以下操作:根据视频与候选推荐游戏的关联关系,确定历史观看记录中存在与候选推荐游戏相关联的目标视频时,获取候选推荐游戏与目标视频之间的关联关系所对应的权重,并将候选推荐游戏与目标视频之间的关联关系所对应的权重,作为候选推荐游戏的推荐分数。

  在实际实施时,可以预先设置视频与候选推荐游戏之间的关联关系,并为该关联关系设置相应的权重,权重位于1到10之间;然后可以预先设置的关联关系,判断候选推荐游戏是否为历史观看记录中某一视频相关联的游戏,若是,则获取与候选推荐游戏相关联的目标视频,并获取候选推荐游戏与目标视频之间的关联关系所对应的权重;进而将获取的权重作为候选推荐游戏的推荐分数。

  例如,历史观看记录中包括视频A、B、C,其中,构建的关联关系中包括A与游戏1之间的关联关系、及B与游戏2之间的关联关系,且A与游戏1之间的关联关系对应的权重为5,B与游戏2之间的关联关系对应的权重为7;那么,游戏1的推荐分数为5,游戏2的推荐分数为7,游戏库中其它游戏的推荐分数为0。

  这里,可以仅为热门的视频构建与候选推荐游戏之间的关联关系,及相应的权重表。

  在一些实施例中,至少两个游戏筛选维度包括用户间关于历史观看记录的相似度;可以通过以下方式对多个候选推荐游戏进行评分:

  针对各候选推荐游戏执行以下操作:获取至少一个用户与目标用户关于历史观看记录的相似度;根据相似度,从至少一个用户中筛选出目标数量的候选用户;获取各候选用户的历史推荐列表;根据各候选用户的历史推荐列表,对候选推荐游戏进行评分。

  在实际实施时,根据相似度,对至少一个用户进行排序,然后根据排序结果,从至少一个用户中筛选出与目标用户关于历史观看记录的相似度最高的目标数量的用户作为候选用户,例如,获取与目标用户关于历史观看记录的相似度最高的三个用户作为候选用户。

  在一些实施例中,还可以通过以下方式对多个候选推荐游戏进行评分:

  针对各候选推荐游戏执行以下操作:获取至少一个用户与目标用户关于历史观看记录的相似度;根据相似度,从至少一个用户中筛选出相似度达到相似度阈值的候选用户;获取各候选用户的历史推荐列表;根据各候选用户的历史推荐列表,对候选推荐游戏进行评分。

  在实际实施时,对于获取的每一个相似度,将该相似度与相似度阈值进行比较,以获取相似度达到相似度阈值的用户作为候选用户。

  在一些实施例中,在获取各候选用户的历史推荐列表之后,对应每个候选推荐游戏,可以将其与各历史推荐列表进行匹配,以获取包含该候选推荐游戏的历史推荐列表,并获取包含该候选推荐游戏的历史推荐列表的数量,以根据包含该候选推荐游戏的历史推荐列表的数量,对候选推荐游戏进行评分,如直接将获取到的数量作为候选推荐游戏的推荐分数,或者对获取到的数量进行加权后再作为候选推荐游戏的推荐分数。

  在一些实施例中,可以获取包含该候选推荐游戏的历史推荐列表、及包含该候选推荐游戏的历史推荐列表所对应的候选用户,在实际实施时,可以根据包含候选推荐游戏的历史推荐列表所对应的候选用户与目标用户关于历史观看记录的相似度,对候选推荐游戏进行评分。

  这里,当包含候选推荐游戏的历史推荐列表的数量为一个时,直接将相应的候选用户与目标用户关于历史观看记录的相似度,作为候选推荐游戏的推荐分数;当包含候选推荐游戏的历史推荐列表的数量为多个时,可以获取相应的候选用户与目标用户关于历史观看记录的相似度的平均值,作为候选推荐游戏的推荐分数。

  例如,目标用户为用户1,候选用户包括用户2、用户3、用户4,表4示出了用户1与候选用户关于历史观看记录的相似度。

  表6

  假设,用户2的游戏列表为{候选游戏A,候选游戏B,候选游戏C},用户3的游戏列表为{候选游戏A,候选游戏D,候选游戏E},用户4的游戏列表为{候选游戏B,候选游戏C,候选游戏E},那么候选游戏A的推荐分数为:2/7+3/10=41/70,游戏B的推荐分数为2/7+1/3=13/21。

  在一些实施例中,还可以根据相似度,获取相应的相似度权重;当包含候选推荐游戏的历史推荐列表的数量为一个时,直接将相应的候选用户与目标用户关于历史观看记录的相似度权重,作为候选推荐游戏的推荐分数;当包含候选推荐游戏的历史推荐列表的数量为多个时,可以获取相应的候选用户与目标用户关于历史观看记录的相似度权重的平均值,作为候选推荐游戏的推荐分数。

  在实际实施时,可以通过以下公式获取目标用户与候选用户的权重P:

  

  其中,Si表示第i个候选用户与目标用户之间的相似度,这里,Si取值范围为[0,1]。

  例如,用户1为目标用户,用户1与候选用户之间的相似度权重如表7所示。

  表7

  

  

  假设,用户2的游戏列表为{候选游戏A,候选游戏B,候选游戏C},用户3的游戏列表为{候选游戏A,候选游戏D,候选游戏E},用户3的游戏列表为{候选游戏B,候选游戏C,候选游戏E},那么候选游戏A的推荐分数为:60/193+63/193=123/193,候选游戏B的推荐分数为60/193+70/193=130/193。

  需要说明的是,若某个候选游戏未包含于候选用户的历史推荐列表之中,那么该候选游戏的推荐分数为0。

  在一些实施例中,为使候选游戏的推荐分数处于1至10之间,可以对上述得到的推荐分数进行加权,如将得到的推荐分数乘以10,以得到最终的推荐分数。

  例如,在得到目标用户与各候选用户之间的相似度权重之后,获取每个候选用户的历史推荐列表,对于每个候选游戏,判断该候选推荐游戏是否包含于用户组中用户的历史推荐列表之中,若是,获取包含该候选推荐游戏的历史推荐列表所对应的候选用户,然后,根据获取的所有候选与目标用户之间的相似度权重之和,并将获取的相似度权重之和与10相乘,得到该游戏的推荐分数。

  例如,用户2的游戏列表为{游戏A,游戏B,游戏C},用户3的游戏列表为{游戏A,游戏D,游戏E},用户3的游戏列表为{游戏B,游戏C,游戏E},那么游戏A的推荐分数为:10*(60/193+63/193)=1230/193,游戏B的推荐分数为10*(60/193+70/193)=1300/193。

  在一些实施例中,可以通过以下方式获取至少一个用户与目标用户关于历史观看记录的相似度:针对每个用户执行以下操作:获取用户的历史观看记录;根据目标用户与用户的历史观看记录,确定目标用户与用户共同观看的视频数量、目标用户观看的视频数量、以及用户观看的视频数量;获取目标用户观看的视频数量与用户观看的视频数量的平均值;将共同观看的视频数量与平均值的比值,作为目标用户与用户关于历史观看记录的相似度。

  在实际实施时,以通过以下方式获取两个用户关于历史观看记录的相似度:获取所有用户的历史观看记录,可以通过以下公式计算两个用户关于历史观看记录的相似度:

  

  其中,R为第一用户的历史观看记录中视频的数量,T为第二用户的历史观看记录中视频的数量,K为第一用户的历史观看记录与第二用户的历史观看记录中相同的视频数量;R、T、K为自然数。

  例如,R=10,用户1的历史观看记录:{影片A,影片B,影片C……};T=4,用户2的历史观看记录:{影片A,影片B,影片D,影片E}四部影片,则用户1和用户2关于历史观看记录的相似度为S=2/((10+4)/2)=2/7。

  步骤203:分别获取各游戏筛选维度对应的权重,并基于至少两个游戏筛选维度对应的权重,对候选推荐游戏对应各游戏筛选维度的推荐分数进行加权求和,以得到各候选推荐游戏的综合推荐分数。

  在实际实施时,对于每个候选推荐游戏,都会对应至少两个游戏筛选维度的推荐分数,通过加权求和的方式,得到候选推荐游戏的综合推荐分数。

  这里,各游戏筛选维度对应的权重可以是固定的,也可以是根据相应的推荐分数动态变化的。

  在一些实施例中,当各游戏筛选维度对应的权重是固定时,通过以下公式确定候选推荐游戏的综合推荐分数:

  

  其中,An为第n个游戏筛选维度对应的权重,Rn为第n个游戏筛选维度对应的推荐分数,这里,An的取值范围为[0,1]。

  在一些实施例中,可以根据各游戏筛选维度对应的推荐分数,来确定各游戏筛选维度对应的权重,例如,对于每个候选推荐游戏,可以使推荐分数的最高值所对应的游戏筛选维度对应的权重设置为1,其它设置为0,也即将推荐分数的最高值作为该候选推荐游戏的综合推荐分数。

  步骤204:基于得到的综合推荐分数,从多个候选推荐游戏中选取目标数量的游戏推送至目标用户的终端。

  在实际实施时,服务器可以根据综合推荐分数,对多个候选推荐游戏进行排序,以选取综合推荐分数最高的目标数量的游戏推送至目标用户的终端。

  这里,目标数量可以为一个或者多个。

  在一些实施例中,可以获取用户针对游戏推送结果的准确性反馈,以根据这些反馈,对至少两个游戏筛选维度中的参数进行调整,如视频的类型所对应的权重,以进一步提高游戏推送的准确性。

  在一些实施例中,服务器会维持一个游戏推送表,包括目标数量的游戏,可在用户新观看一个视频后、或者定时触发一次计算,更新游戏推荐表中的数据。当用户进入游戏推荐页面时,直接将包括目标数量的游戏的游戏推荐表推送至客户端。

  本申请通过获取目标用户针对视频的历史观看记录;基于所述历史观看记录,从与所述历史观看记录相关联的至少两个游戏筛选维度,对多个候选推荐游戏进行评分,得到所述候选推荐游戏对应各游戏筛选维度的推荐分数;分别获取各所述游戏筛选维度对应的权重,并基于至少两个所述游戏筛选维度对应的权重,对所述候选推荐游戏对应各游戏筛选维度的推荐分数进行加权求和,以得到各所述候选推荐游戏的综合推荐分数;基于得到的所述综合推荐分数,从所述多个候选推荐游戏中选取目标数量的游戏推送至所述目标用户的终端;如此,实现了通过针对视频的历史观看记录来确定推送的游戏,充分利用了用户的历史观影记录,提高了游戏推送的准确性。

  参见图3,图3是本申请实施例提供的游戏推送方法的流程示意图,将结合图3示出的步骤进行说明。

  步骤301:终端在图形界面中呈现对应游戏的推荐功能项。

  在实际实施时,终端上设置有视频客户端,用户可以通过该视频客户端观看视频。这里,通过视频客户端的图像界面,呈现对应游戏的推荐功能项。

  步骤302:响应于针对推荐功能项的触发操作,呈现游戏的推荐页面,并在推荐页面中,呈现目标数量的游戏。

  其中,目标数量的游戏为,基于与目标用户的历史观看记录相关联的至少两个游戏筛选维度,对多个候选推荐游戏筛选得到。

  在实际实施时,目标数量的游戏可以通过上述实施例中的游戏推送方法得到。

  这里,游戏在游戏推荐页面中的呈现方式可以是呈现游戏的图标、名称、简介、下载入口等,还可以呈现游戏对应的视频。

  例如,参见图4A-4D,图4A-4D是本申请实施例提供的游戏推荐页面的示意图,当用户点击“爱玩”时,呈现游戏推荐页面,可以通过该游戏推荐页面中爱玩精心推荐、好玩的小游戏推荐、今日推荐、猜你喜欢等模块中的一个或多个模块展示游戏推荐表中的游戏。在这些模块中,呈现的游戏数量可以为一个或多个,可以呈现游戏海报、游戏图标、游戏名称、游戏简介等信息。

  参见图5,图5是本申请实施例提供的游戏推荐页面的示意图,当用户点击“游戏”时,呈现游戏推荐页面,并根据游戏推荐表,呈现与游戏推荐表中游戏相关的游戏视频,例如,游戏推荐表中包括游戏A、游戏B、游戏C,根据游戏推荐表中游戏的排列顺序,在游戏推荐页面顺序展示与这些游戏相关的视频。

  本申请实施例实现了通过针对视频的历史观看记录来确定推送的游戏,充分利用了用户的历史观影记录,提高了游戏推送的准确性。

  下面,将说明本申请实施例在一个实际的应用场景中的示例性应用。

  图6是本申请实施例提供的游戏推送方法的实现逻辑示意图,参见图6,本申请是基于目标用户的历史观看记录,通过推荐策略(不同游戏筛选维度)对游戏库中的候选推荐游戏进行评分,然后根据评分结果来对游戏库中的候选推荐游戏进行排序,以得到游戏排行,进而基于游戏排行进行推送。

  在实际实施时,可以基于以下五种不同的游戏筛选维度对候选推荐游戏进行评分,每个不游戏筛选维度的计算可以并行进行,再通过不同游戏筛选维度的优先级或者权重得出最终的推送列表。

  首先对五种不同的推荐策略进行说明。

  1、基于视频衍生游戏进行评分

  在实际应用中,存在一些由影视作品衍生的游戏,基于此,可以根据视频与其衍生游戏之间的关系,对游戏进行评分及推荐。

  这里,通常视频衍生游戏与相应视频的名称是相同的,基于此,可以根据用户的历史观看记录中视频的名称、及游戏库中候选推荐游戏的名称,来判断目标用户观看过的视频是否存在衍生游戏;若存在,则进一步根据视频所属类型,来确定相应衍生游戏的推荐分数;若不存在,则无法根据视频衍生游戏来选取目标用户可能会感兴趣的游戏,即所有游戏的推荐分数都为0。

  在实际实施时,为不同的视频类型设置不同的权重,以根据视频所属类型,将相应类型的权重作为该视频的衍生游戏的推荐分数。

  例如,不同视频类型的权重设置如表8所示。其中,由于动漫和游戏同属ACG圈子,往往具有相同的用户群体,短视频则能更加针对性的表现用户在游戏方面的喜好,因此,动漫和短视频的权重相对于其它来说权重较高。

  表8

  当目标用户的历史观看记录中包括电视剧A和动漫B、且游戏库中的候选推荐游戏中包括电视剧A的衍生游戏和动漫B的衍生游戏时,可以确定电视剧A的衍生游戏的推荐分数为3,动漫B的衍生游戏的推荐分数为7。

  需要说明的是,当用户观看过的视频存在衍生游戏时,除用户观看过的视频的衍生游戏外,游戏库中其它候选推荐游戏的推荐分数为零。例如,用户的历史观看记录中包括A、B、C,其中游戏库中包括A和B的衍生游戏,那么,根据A和B所述的类型,确定相应衍生游戏的推荐分数,然后将游戏库中其它游戏的推荐分数设置为零。

  这里,将根据视频衍生游戏,确定出的推荐分数记为R1。

  2、基于视频类型进行评分

  在实际实施时,首先将视频的类型与游戏类型进行关联,比如悬疑剧与解谜游戏进行关联,得到视频的类型与游戏类型之间的关联关系;然后构建与该关联关系相对应的权重表,其中,权重位于1到10之间。

  需要说明的是,一个游戏类型可以与一个或多个视频的类型进行关联,以及一个视频的类型也可以与一个或多个游戏类型进行关联。

  例如,参见表4,游戏类型“休闲”与两个视频的类型相关联,即“喜剧”、“生活”;而视频类型“喜剧”也与两个游戏类型相关联,即“休闲”、“益智”。

  在得到与视频类型与游戏类型之间的关联关系相对应的权重表之后,可以利用以下公式,得出每个游戏类型的游戏的推荐分数:

  

  其中,N表示历史观看记录中视频的总数量,n表示该游戏类型对应视频类型的视频数量,W表示该游戏类型对应视频类型的权重,N、n为自然数,W位于[1,10]。

  例如,根据历史观看记录,某用户观看了10部影片,包括4部喜剧,2部生活,4部悬疑,那么计算出来不同类型游戏的推荐分数如下:

  R休闲=(4x8+2x7)/10=4.6;

  R益智=(4x7)/10=2.8;

  R冒险=(4x6)/10=2.4;

  除上述三种游戏类型的游戏外,其余游戏类型的游戏的推荐分数均为0。由此可知,该用户更偏向休闲类游戏,其次是益智类游戏。

  这里,我们将根据视频类型,确定出的推荐分数记为R2。

  3、基于画面风格进行评分

  在实际实施时,获取历史观看记录中每个视频对应的第一图像,这里的第一图像可以是视频的海报,也可以是视频中的某一帧图像,还可以是其它与视频对应的图像;并获取游戏库中每个候选推荐游戏对应的第二图像,这里的第二图像可以是游戏海报,也可以是候选推荐游戏中某一游戏画面的图像,还可以是其它与候选推荐游戏对应的图像。

  然后,对于游戏库中的每个候选推荐游戏,将其对应的第二图像与历史观看记录中每个视频对应的第一图像进行匹配,以得到每个视频与候选推荐游戏关于画面风格的相似度。

  这里,可以把画面风格划分为纹理和色彩两个方面,也即对于每个第一图像与第二图像,获取第一图像与第二图像关于纹理特征的第一相似度、以及第一图像与第二图像关于色彩特征的第二相似度,然后将第一相似度与第二相似度的平均值,作为第一图像与第二图像关于画面风格的相似度。

  其中,纹理特征用灰度共生矩阵表示,颜色特征用直方图表示。

  这里,对第一相似度的计算过程进行说明。首先计算第一图像的灰度共生矩阵P和第二图像的灰度共生矩阵Q。在计算灰度共生矩阵时,需要先将RGB图像转换为灰度图像,再进行归一化。得到灰度共生矩阵P、Q后,可以通过以下公式计算第一图像与第二图像关于纹理特征的第一相似度C1:

  

  其中,P(i,j)为第一图像的灰度共生矩阵P第i行、第j列的值;Q(i,j)为第二图像的灰度共生矩阵Q第i行、第j列的值。这里,C1的取值范围为[0,1]。

  接着,对第二相似度的计算过程进行说明。首先计算第一图像的颜色直方图G和第二图像的颜色直方图S。在计算颜色直方图时,需要先将RGB图像转换为HSV图像,然后使用H数值计算直方图,该直方图就是颜色的数值。得到颜色直方图G、S之后,可以通过以下公式计算第一图像与第二图像关于颜色的第二相似度C2:

  

  其中,N为直方图中竖条区域(bin)的数量。C2的取值范围为[0,1]。

  在得到第一相似度和第二相似度之后,可以通过以下公式,得到视频与候选推荐游戏关于画面风格的相似度:

  

  这里,为使候选推荐游戏的推荐分数位于1至10之间,在获取到每个视频与候选推荐游戏关于画面风格的相似度之后,将获取的相似度的平均值与10相乘,得到候选推荐游戏的推荐分数。

  例如,参见表5,历史观看记录中包括视频A、B、C、D,视频A、B、C、D对应的第一图像与游戏1对应的第二图像关于画面风格的相似度分别为0.3347、0.2767、0.3455、0.6877,那么游戏1的推荐分数为:

  R游戏1=10*(0.3347+0.2767+0.3455+0.6877)/4=4.1115。

  这里,我们将根据画面风格,确定出的推荐分数记为R2。

  4、基于人工干预的评分

  这里,对一些热门的视频进行人工干预,即预先设置视频与游戏之间的关联关系,并为该关联关系设置相应的权重,权重位于1到10之间;然后可以预先设置的关联关系,获取与历史观看记录中的视频相关联的游戏,并将相应视频与游戏的关联关系所对应的权重,作为该游戏的推荐分数。

  在实际实施时,仅为热门的视频构建与游戏之间的关联关系、及相应的权重表。

  例如,历史观看记录中包括视频A、B、C,其中,构建的关联关系中包括A与游戏1之间的关联关系、及B与游戏2之间的关联关系,且A与游戏1之间的关联关系对应的权重为5,B与游戏2之间的关联关系对应的权重为7;那么,游戏1的推荐分数为5,游戏2的推荐分数为7,游戏库中其它游戏的推荐分数为0。

  这里,我们将根据人工干预,确定出的推荐分数记为R4。

  5、基于用户间关于历史观看记录的相似度评分

  通过用户间关于历史观看记录的相似度,确定与目标用户关于历史观看记录的相似度满足相似度条件的用户组,这里,可以是选取与目标用户关于历史观看记录的相似度最高的目标数量的用户,也可以是选取与目标用户关于历史观看记录的相似度达到相似度阈值的用户。

  在实际应用中,可以通过以下方式获取目标用户与其他用户关于历史观看记录的相似度。首先,获取所有用户的历史观看记录,这里历史观看记录可以是记录用户最近观看的目标数量的视频,也可以是记录用户所有观看过的视频,还可以获取一定时间段内用户观看过的所有视频。

  例如,可以是获取用户最近观看的M个视频,在某个用户观看视频的数量不足M个的时候,获取该用户观看过的所有视频,以得到历史观看记录。

  在得到所有用户的历史观看记录后,可以通过以下公式计算两个用户关于历史观看记录的相似度:

  

  其中,R为第一用户的历史观看记录中视频的数量,T为第二用户的历史观看记录中视频的数量,K为第一用户的历史观看记录与第二用户的历史观看记录中相同的视频数量,这里,R、T、K为自然数。

  例如,R=10,用户1的历史观看记录:{影片A,影片B,影片C……};T=4,用户2的历史观看记录:{影片A,影片B,影片D,影片E}四部影片,则用户1和用户2关于观影记录的相似度为S=2/((10+4)/2)=2/7。

  如此,可以获取目标用户与其他所有用户关于历史观看记录的相似度,进而根据相似度确定与目标用户关于历史观看记录的相似度满足相似度条件的用户组。

  在获取到用户组之后,可以根据以下公式计算目标用户与用户组中各用户之间的相似度权重P:

  

  其中,Si表示用户组中第i个用户与目标用户之间的相似度,Si的取值范围为[0,1]。

  例如,目标用户为用户1,候选用户包括用户2、用户3、用户4,用户1与候选用户关于历史观看记录的相似度如表6所示;那么,用户1与候选用户之间的相似度权重如表7所示。

  在得到目标用户与用各候选用户之间的相似度权重之后,获取用户组中每个候选用户的历史推荐列表,对于每个游戏,判断该游戏是否包含于用户组中候选用户的历史推荐列表之中,若是,获取包含该游戏的历史推荐列表所对应的候选用户,然后,根据获取的所有候选用户与目标用户之间的相似度权重之和,并将获取的相似度权重之和与10相乘,得到该游戏的推荐分数。

  假设,用户2的游戏列表为{游戏A,游戏B,游戏C},用户3的游戏列表为{游戏A,游戏D,游戏E},用户3的游戏列表为{游戏B,游戏C,游戏E},那么游戏A的推荐分数为:10*(60/193+63/193)=1230/193,游戏B的推荐分数为10*(60/193+70/193)=1300/193。

  需要说明的是,若某个游戏未包含于用户组中候选用户的历史推荐列表之中,那么该游戏的推荐分数为0。

  我们将根据历史观看记录用户的游戏列表得到的推荐分数记为R5。

  在通过上述五种方式,确定相应的推荐分数后,可以采用优先级决策或权重计算策略的方式,得到每个游戏的综合推荐分数。

  当采用优先级决策时,对于每个游戏,将通过上述五种方式计算得到的推荐分数中的最大值作为该候选推荐游戏的综合推荐分数。

  当采用权重计算决策时,对于每个候选推荐游戏,可以通过以下公式确定候选推荐游戏的综合推荐分数:

  

  其中,An为第n个策略的权重,Rn为第n个策略的计算得到的推荐分数,这里,An的取值范围为[0,1]。

  以上算法的关键数据,是视频的类型和游戏类型的关联关系的权重表,特定视频和游戏的关联关系的权重表。这些权重可以通过调查数据、以及人工干预来设定,在此基础上,可让用户进行推荐结果准确性反馈,以根据这些反馈,适当调整各权重表的权重,让推荐结果更加准确。

  这里,为了便于后续比较计算,后台针对每个用户维持一个游戏推荐表,可在用户新观看一个视频后、或者定时触发一次计算,更新游戏推荐表中的数据。当用户进入游戏推荐页面时,前端向后台请求游戏推荐表,并按照排行进行展示。

  在实际应用中,目标用户侧的终端通过视频客户端呈现包含对应游戏的推荐功能项的图形界面,在接收到针对推荐功能项的触发操作后,呈现游戏推荐页面,并在游戏推荐页面中,根据游戏推荐表呈现游戏。

  这里,游戏在游戏推荐页面中的呈现方式可以是呈现游戏的图标、名称、简介、下载入口等,还可以呈现游戏对应的视频。

  例如,参见图4A-4D,当目标用户点击“爱玩”时,呈现游戏推荐页面,可以通过该游戏推荐页面中爱玩精心推荐、好玩的小游戏推荐、今日推荐、猜你喜欢等模块中的一个或多个模块展示游戏推荐表中的游戏。在这些模块中,呈现的游戏数量可以为一个或多个,可以呈现游戏海报、游戏图标、游戏名称、游戏简介等信息。

  参见图5,当目标用户点击“游戏”时,呈现游戏推荐页面,并根据游戏推荐表,呈现与游戏推荐表中游戏相关的游戏视频,例如,游戏推荐表中包括游戏A、游戏B、游戏C,根据游戏推荐表中游戏的排列顺序,在游戏推荐页面顺序展示与这些游戏相关的视频。

  本申请实施例具有以下有益效果:能够充分利用视频应用中针对视频的历史观看记录,为用户推送合适的游戏。

  参见图7,图7是本申请实施例提供的游戏推送装置的结构组成示意图,如图7所示,本发明实施例提供的游戏推送装置555,包括:

  第一获取模块5551,用于获取目标用户针对视频的历史观看记录;

  第一评分模块5552,用于基于所述历史观看记录,从与所述历史观看记录相关联的至少两个游戏筛选维度,对多个候选推荐游戏进行评分,得到所述候选推荐游戏对应各游戏筛选维度的推荐分数;

  第二获取模块5553,用于分别获取各所述游戏筛选维度对应的权重;

  第二评分模块5554,用于基于至少两个所述游戏筛选维度对应的权重,对所述候选推荐游戏对应各游戏筛选维度的推荐分数进行加权求和,以得到各所述候选推荐游戏的综合推荐分数;

  推送模块5555,用于基于得到的所述综合推荐分数,从所述多个候选推荐游戏中选取目标数量的游戏推送至所述目标用户的终端。

  在一些实施例中,所述第一获取模块5551,还用于获取目标用户观看时长比例达到比例阈值的视频;

  根据视频的类型,从获取的所述视频中筛选出非游戏类视频;

  基于筛选得到的所述非游戏类视频,生成目标用户针对视频的历史观看记录。

  在一些实施例中,所述至少两个游戏筛选维度包括视频的名称;

  所述第一评分模块5552,还用于针对各候选推荐游戏执行以下操作:

  获取所述历史观看记录中包含的至少一个视频的名称;

  将所述至少一个视频的名称与所述候选推荐游戏的名称进行匹配,得到匹配结果;

  基于所述匹配结果,对所述候选推荐游戏进行评分。

  在一些实施例中,所述第一评分模块5552,还用于当所述匹配结果表征所述历史观看记录中存在与所述候选推荐游戏的名称相同的目标视频时,获取目标视频的类型及所述目标视频的类型所对应的权重,并

  将所述目标视频的类型所对应的权重,作为所述候选推荐游戏的推荐分数;

  当所述匹配结果表征所述历史观看记录中不存在与所述候选推荐游戏的名称相同的视频时,确定所述候选推荐游戏的评分为零。

  在一些实施例中,所述至少两个游戏筛选维度包括视频的类型;

  所述第一评分模块5552,还用于针对各候选推荐游戏执行以下操作:

  获取所述历史观看记录中视频的总数量;

  根据视频的类型与游戏类型之间的关联关系,获取与所述候选推荐游戏的游戏类型相对应的目标视频类型;

  获取所述历史观看记录中所述目标视频类型对应的视频数量;

  将所述目标视频类型对应的视频数量与所述总数量的比值,作为所述候选推荐游戏的推荐分数。

  在一些实施例中,所述至少两个游戏筛选维度包括视频的类型;

  所述第一评分模块5552,还用于针对各候选推荐游戏执行以下操作:

  取所述历史观看记录中视频的总数量;

  根据视频的类型与游戏类型之间的关联关系,获取与所述候选推荐游戏对应的目标视频类型;

  获取所述历史观看记录中属于所述目标视频类型的视频数量、及所述目标视频类型与所述候选推荐游戏的游戏类型之间的关联关系所述对应的权重;

  确定属于所述目标视频类型的视频数量与所述目标视频类型对应的权重的乘积;

  将确定的所述乘积与所述总数量的比值,作为所述候选推荐游戏的推荐分数。

  在一些实施例中,所述至少两个游戏筛选维度包括视频的画面风格;

  所述第一评分模块5552,还用于针对各候选推荐游戏执行以下操作:

  获取所述历史观看记录中每个视频与所述候选推荐游戏关于画面风格的相似度,得到至少一个相似度;

  确定获取的至少一个相似度的平均值,并将确定的平均值作为所述候选推荐游戏的推荐评分。

  在一些实施例中,所述第一评分模块5552,还用于获取所述历史观看记录中每个视频所对应的第一图像、及所述候选推荐游戏对应的第二图像;

  获取所述第一图像与所述第二图像关于纹理特征的第一相似度,并获取所述第一图像与所述第二图像关于色彩特征的第二相似度;

  将所述第一相似度与所述第二相似度的平均值,作为所述历史观看记录中相应视频与所述候选推荐游戏关于画面风格的相似度。

  在一些实施例中,所述至少两个游戏筛选维度包括视频与候选推荐游戏的关联关系;

  所述第一评分模块5552,还用于针对各候选推荐游戏执行以下操作:

  根据所述视频与候选推荐游戏的关联关系,确定所述历史观看记录中存在与所述候选推荐游戏相关联的目标视频时,获取所述候选推荐游戏与所述目标视频之间的关联关系所对应的权重,并

  将所述候选推荐游戏与所述目标视频之间的关联关系所对应的权重,作为所述候选推荐游戏的推荐分数。

  在一些实施例中,所述至少两个游戏筛选维度包括用户间关于历史观看记录的相似度;

  所述第一评分模块5552,还用于针对各候选推荐游戏执行以下操作:

  获取至少一个用户与目标用户关于历史观看记录的相似度;

  根据所述相似度,从至少一个用户中筛选出目标数量的候选用户;

  获取各候选用户的历史推荐列表;

  根据各候选用户的历史推荐列表,对所述候选推荐游戏进行评分。

  在一些实施例中,所述第一评分模块5552,还用于针对每个用户执行以下操作:

  获取所述用户的历史观看记录;

  根据所述目标用户与所述用户的历史观看记录,确定所述目标用户与所述用户共同观看的视频数量、目标用户观看的视频数量、以及所述用户观看的视频数量;

  获取目标用户观看的视频数量与所述用户观看的视频数量的平均值;

  将所述共同观看的视频数量与所述平均值的比值,作为所述目标用户与所述用户关于历史观看记录的相似度。

  本申请实施例提供一种游戏推送装置,包括:

  第一呈现模块,用于在图形界面中呈现对应游戏的推荐功能项;

  第二呈现模块,用于响应于针对所述推荐功能项的触发操作,呈现游戏的推荐页面,并在所述推荐页面中,呈现目标数量的游戏;

  其中,所述目标数量的游戏为,基于与目标用户的历史观看记录相关联的至少两个游戏筛选维度,对多个候选推荐游戏筛选得到。

  本申请实施例实现了通过针对视频的历史观看记录来确定推送的游戏,充分利用了用户的历史观影记录,提高了游戏推送的准确性。

  本发明实施例提供一种计算机设备,参见图8,图8为本申请实施例提供的计算机设备500的结构示意图,在实际应用中,计算机设备500可以为图1中的终端或服务器,以计算机设备为图1所示的服务器为例,对实施本发明实施例的游戏推送方法的计算机设备进行说明,计算机设备包括:

  存储器550,用于存储可执行指令;

  处理器510,用于执行所述存储器中存储的可执行指令时,实现本发明实施例提供的游戏推送方法。

  这里,处理器510可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。

  存储器550可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器550可选地包括在物理位置上远离处理器510的一个或多个存储设备。

  存储器550包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本发明实施例描述的存储器550旨在包括任意适合类型的存储器。

  在一些实施例中还可包括至少一个网络接口520和用户接口530。电子设备500中的各个组件通过总线系统540耦合在一起。可理解,总线系统540用于实现这些组件之间的连接通信。总线系统540除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图8中将各种总线都标为总线系统540。

  本申请实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的方法,例如,如图2示出的方法。

  在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。

  在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。

  作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。

  作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。

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

  以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。

《游戏推送方法、装置、设备及计算机可读存储介质.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)