物品推荐方法和装置与流程

文档序号:16213327发布日期:2018-12-08 08:02阅读:176来源:国知局
物品推荐方法和装置与流程

本申请涉及数据应用技术领域,具体而言,涉及一种物品推荐方法和装置。

背景技术

随着互联网的高速发展,物品推荐方法的应用场景越来越多,已经被广泛集成到了很多商业应用系统中,比较著名的有netflix在线视频推荐系统、amazon网络购物商城、今日头条等。实际上,大多数的资讯平台都不同程度地应用了物品推荐方法,如新浪新闻、今日头条等。物品推荐方法提供的相关推荐可以帮助用户更好的找到跟当前物品相关的物品,在电商平台中,相关的商品可以捆绑销售,在资讯平台中,物品推荐方法推荐的相关资讯可以作为深度阅读,或者兴趣发现等等,是体现推荐系统价值的非常重要的一个应用场景。

现有技术中,物品推荐方法是基于用户行为进行推荐,通常是基于用户的历史行为记录,确定物品之间的相似度,再根据物品相似度进行推荐。

在实施本申请实施例的过程中,发明人发现现有技术至少存在以下技术问题:

现有技术中,关于一个话题的物品有可能会在一个时刻大量出现,这些物品之间的相关性会很高,这样,这些相关性很高的物品会被大量扎堆地推荐给用户,造成用户的阅读疲劳,影响用户的体验效果。



技术实现要素:

本申请的主要目的在于提供一种物品推荐方法和装置,以解决相关性很高的物品会被大量扎堆地推荐给用户,造成用户的阅读疲劳的问题。

为了实现上述目的,第一方面,本申请实施例提供了一种物品推荐方法。

根据本申请的物品推荐方法包括:

根据用户历史行为数据获取n个目标物品以及对应每个目标物品的推荐因子,其中,n为大于1的整数;

根据n个目标物品获取多个推荐物品以及每个推荐物品对应的第一推荐值,并得到每个推荐物品的第一推荐值排序,其中,每个推荐物品与至少一个目标物品相关;

根据第一推荐值排序以及每个目标物品对应的推荐因子对每个推荐物品对应的第一推荐值进行数据处理,获取每个推荐物品对应的第二推荐值,从而得到每个推荐物品的第二推荐值排序。

可选地,根据第一推荐值排序以及每个目标物品对应的推荐因子对每个推荐物品对应的第一推荐值进行数据处理,获取每个推荐物品对应的第二推荐值,包括:

根据每个推荐物品与相关的目标物品确定每个推荐物品对应的推荐因子;

根据第一推荐值排序以及每个推荐物品对应的推荐因子,获取每个推荐物相对于对应的推荐因子排序,确定每个推荐物品在对应的推荐因子排序中的序号;

根据每个推荐物品在对应的推荐因子排序中的序号对每个推荐物品对应的第一推荐值进行数据处理,获取每个推荐物品对应的第二推荐值。

可选地,当推荐物品存在至少两个对应的第二推荐值时,选取推荐物品的至少两个第二推荐值中最大的第二推荐值作为推荐物品对应的第二推荐值。

可选地,每个所述推荐物品的第二推荐值排序为每个所述推荐物品的第二推荐值降序排序,本物品推荐方法还包括:

在每个推荐物品的第二推荐值排序中,获取每个推荐物品相对前一位推荐物品的相似度值,其中,排在第一位的推荐物品包括的相似度值为第一预设值;

根据每个推荐物品包括的相似度值对每个推荐物品的第二推荐值进行数据处理,获取每个推荐物品的第三推荐值,从而得到每个推荐物品的第三推荐值排序。

可选地,本物品推荐方法还包括:

获取每个推荐物品的生成时间,并根据当前时间以及每个推荐物品的生成时间对每个推荐物品的第三推荐值进行数据处理,获取每个推荐物品的第四推荐值,从而得到每个推荐物品的第四推荐值排序。

第二方面,本申请实施例提供的一种物品推荐装置,包括:

第一获取模块,用于根据用户历史行为数据获取n个目标物品以及对应每个目标物品的推荐因子,其中,n为大于1的整数;

第二获取模块,用于根据n个目标物品获取多个推荐物品以及每个推荐物品对应的第一推荐值,并得到每个推荐物品的第一推荐值排序,其中,每个推荐物品与至少一个目标物品相关;

第三获取模块,根据第一推荐值排序以及每个目标物品对应的推荐因子对每个推荐物品对应的第一推荐值进行数据处理,获取每个推荐物品对应的第二推荐值,从而得到每个推荐物品的第二推荐值排序。

可选地,第三获取模块,用于:

根据每个推荐物品与相关的目标物品确定每个推荐物品对应的推荐因子;

根据第一推荐值排序以及每个推荐物品对应的推荐因子,获取每个推荐物相对于对应的推荐因子排序,确定每个推荐物品在对应的推荐因子排序中的序号;

根据每个推荐物品在对应的推荐因子排序中的序号对每个推荐物品对应的第一推荐值进行数据处理,获取每个推荐物品对应的第二推荐值。

可选地,第三获取模块,还用于当推荐物品存在至少两个对应的第二推荐值时,选取推荐物品的至少两个第二推荐值中最大的第二推荐值作为推荐物品对应的第二推荐值。

可选地,本物品推荐装置还包括第四获取模块和第五获取模块;每个所述推荐物品的第二推荐值排序为每个所述推荐物品的第二推荐值降序排序;

第四获取模块,用于在每个推荐物品的第二推荐值排序中,获取每个推荐物品相对前一位推荐物品的相似度值,其中,排在第一位的推荐物品包括的相似度值为第一预设值;

第五获取模块,用于根据每个推荐物品包括的相似度值对每个推荐物品的第二推荐值进行数据处理,获取每个推荐物品的第三推荐值,从而得到每个推荐物品的第三推荐值排序。

可选地,本物品推荐装置还包括第六获取模块;

第六获取模块,用于获取每个推荐物品的生成时间,并根据当前时间以及每个推荐物品的生成时间对每个推荐物品的第三推荐值进行数据处理,获取每个推荐物品的第四推荐值,从而得到每个推荐物品的第四推荐值排序。

在本申请实施例中提供的物品推荐方法,通过根据用户历史行为数据获取n个目标物品以及对应每个目标物品的推荐因子,其中,n为大于1的整数;根据n个目标物品获取多个推荐物品以及每个推荐物品对应的第一推荐值,并得到每个推荐物品的第一推荐值排序,其中,每个推荐物品与至少一个目标物品相关;根据第一推荐值排序以及每个目标物品对应的推荐因子对每个推荐物品对应的第一推荐值进行数据处理,获取每个推荐物品对应的第二推荐值,从而得到每个推荐物品的第二推荐值排序。这样,根据推荐因子以及第一推荐值排序,对相关性很高的推荐物品进行处理,达到了多个推荐维度对推荐物品的推荐值进行运算,提高了推荐结果的话题多样性的目的,从而实现了推荐物品的多样性,提升了用户的阅读体验的技术效果,进而解决了相关性很高的物品会被大量扎堆地推荐给用户,造成用户的阅读疲劳的技术问题。

附图说明

构成本申请的一部分的附图用来提供对本申请的进一步理解,使得本申请的其它特征、目的和优点变得更明显。本申请的示意性实施例附图及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1是根据本申请实施例的一种物品推荐方法的流程图;

图2是根据本申请实施例的一种步骤s300的流程图;

图3是根据本申请实施例的另一种物品推荐方法的流程图;

图4是根据本申请实施例的一种步骤s500的流程图;

图5是根据本申请实施例的另一种物品推荐方法的流程图;

图6是根据本申请实施例的一种步骤s600的流程图;

图7是根据本申请实施例的一种步骤s620的流程图;

图8是根据本申请实施例的一种步骤s621的流程图;

图9是根据本申请实施例的一种步骤s200的流程图;

图10是根据本申请实施例的一种物品推荐装置的结构示意图;

图11是根据本申请实施例的另一种物品推荐装置的结构示意图;

图12是根据本申请实施例的另一种物品推荐装置的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

本申请实施例提供了一种物品推荐方法,如图1所示,该方法包括如下的步骤s100至步骤s300:

s100,根据用户历史行为数据获取n个目标物品以及对应每个目标物品的推荐因子,其中,n为大于1的整数。

在本实施例中,目标物品也可以为资讯平台中的资讯,例如该目标物品可以为一个体育新闻或娱乐新闻等;目标物品也可以为视频平台中的视频,例如,该目标物品可以为一个电影或电视剧等;该目标物品可以为电商平台中的商品或服务项目,例如,该目标物品可以为某电商平台上的电子产品或者咨询服务项目等。相应地,与该目标物品相关的推荐物品,可以为资讯平台中的资讯;也可以为视频平台中的视频,也可以电商平台中的商品或服务项目。

在实施中,根据用户历史行为数据获取n个目标物品,具体为:利用用户历史浏览中最近的操作记录(当天的操作物品),根据这些操作物品的类目信息、相关性及操作时间,从中提取的m个操作物品作为近期兴趣的目标物品;利用用户历史浏览数据(一般采用3~5天的操作物品),根据这些操作物品类目信息和相关性,从中提取的q个操作物品作为历史兴趣的目标物品,其中,m和q均为大于或等于0的整数,且m+q=n。并针对每个目标物品生成推荐因子,每个推荐因子可以是一种话题(例如与某个娱乐明星相关等话题),也可以是业务信息或者经验信息。其中,业务信息可以为业务上需求设置等,例如需要对与某些话题相关物品进行推广等;经验信息可以为历史经验,例如当一个物品的标题包含某一个特定的词语,如该目标物品为体育新闻时,其内容中包含有“梅西”,则该推荐因子为与“梅西”相关。

其中,n的取值可以为2、3、4、5、6……

s200,根据n个目标物品获取多个推荐物品以及每个推荐物品对应的第一推荐值,并得到每个推荐物品的第一推荐值排序,其中,每个推荐物品与至少一个目标物品相关。

在实施中,获取与目标物品相关的多个推荐物品的方法,可以是基于内容推荐方法生成的与目标物品相关的多个推荐物品,可以是根据用户协同推荐方法或者物品协同方法生成的与目标物品相关的多个推荐物品,也可以是根据业务规则推荐方法生成的与目标物品相关的多个推荐物品,还可以是上述各方法生成的并集,该并集中包括上述各方法生成的与目标物品相关的多个推荐物品,通过上述方法获取与目标物品相关的多个推荐物品的同时,还会获取每个推荐物品对应的推荐值。

s300,根据第一推荐值排序以及每个目标物品对应的推荐因子对每个推荐物品对应的第一推荐值进行数据处理,获取每个推荐物品对应的第二推荐值,从而得到每个推荐物品的第二推荐值排序。

在本实施例中,因为每个推荐物品对应至少一个目标物品,又每个目标物品对应一个推荐因子,因此,每个推荐物品对应至少一个推荐因子,再根据推荐物品在第一推荐值排序中的序号位置以及对应的推荐因子对该推荐物品的第一推荐值进行运算,获取该推荐物品的第一推荐值。进而得到每个推荐物品的第二推荐值排序。这样,根据推荐因子以及第一推荐值排序,对相关性很高的推荐物品进行处理,达到了多个推荐维度对推荐物品的推荐值进行运算,提高了推荐结果的话题多样性的目的,从而实现了推荐物品的多样性,提升了用户的阅读体验的技术效果。

如图2所示,可选地,s300,根据第一推荐值排序以及每个目标物品对应的推荐因子对每个推荐物品对应的第一推荐值进行数据处理,获取每个推荐物品对应的第二推荐值,从而得到每个推荐物品的第二推荐值排序,包括如下步骤s310至s330:

s310,根据每个推荐物品与相关的目标物品确定每个推荐物品对应的推荐因子。

在本实施例中,每个推荐物品对应至少一个目标物品,又每个目标物品对应一个推荐因子,因此,每个推荐物品对应至少一个推荐因子。

s320根据第一推荐值排序以及每个推荐物品对应的推荐因子,获取每个推荐物相对于对应的推荐因子排序,确定每个推荐物品在对应的推荐因子排序中的序号。

在本实施例中,根据推荐物品在第一推荐值排序中的序号位置,确定对应相同推荐因子的多个推荐物品之间的排序,从而确定每个推荐物品在对应的推荐因子排序中的序号。

例如,对应一个推荐因子的推荐物品共有3个,分别为第一推荐物品、第二推荐物品和第三推荐物品,其中,第一推荐物品、第二推荐物品和第三推荐物品在第一推荐值排序中的序号位置分别为第2位、第9位以及第4位,那么该3个推荐物品相对于对应的推荐因子排序的序号分别为:第一推荐物品对应序号1,第二推荐物品对应序号3,第三推荐物品对应序号2。

s330,根据每个推荐物品在对应的推荐因子排序中的序号对每个推荐物品对应的第一推荐值进行数据处理,获取每个推荐物品对应的第二推荐值,从而得到每个推荐物品的第二推荐值。

在本实施例中,根据推荐物品在对应的推荐因子排序中的序号对推荐物品对应的第一推荐值进行数据处理,该数据处理可以通过以下公式实现:

公式中,等号左侧rec_scorei是第i个推荐物品的第二推荐值,等号右侧rec_scorei是第i个推荐物品的第一推荐值,是第i个推荐物品在对应的推荐因子排序中的序号(或者当第一推荐值排序为降序排列时,推荐因子的出现次数),constrsn是每个推荐因子对应的预设常量,可选地,该预设常量可以根据不同的推荐因子选取不同的数值,该预设常量也可以采用一个预设固定数值,例如可以取值为1。

另外,可选地,当推荐物品存在至少两个对应的第二推荐值时,选取推荐物品的至少两个第二推荐值中最大的第二推荐值作为推荐物品对应的第二推荐值。

如图3所示,可选地,每个所述推荐物品的第二推荐值排序为每个所述推荐物品的第二推荐值降序排序,本物品推荐方法还包括如下步骤s400和步骤500:

s400,在每个推荐物品的第二推荐值排序中,获取每个推荐物品相对前一位推荐物品的相似度值,其中,排在第一位的推荐物品包括的相似度值为第一预设值。

在本实施例中,排在第二推荐值降序排序中第一位的推荐物品因为其前方并无推荐物品,因此,可以将排在第一位的推荐物品的相似度值设定为一个第一预设值,其中,可选地,第一预设值的取值可以为0。

在实施中,在获取每个推荐物品相对前一位的推荐物品的相似度值时,可以通过两个相邻推荐物品包括的标题(title)计算推荐物品相对前一位的推荐物品的相似度值,其中,计算方式可以采用现有的相似度计算方法。

s500,根据每个推荐物品包括的相似度值对每个推荐物品的第二推荐值进行数据处理,获取每个推荐物品的第三推荐值,从而得到每个推荐物品的第三推荐值排序。

在本实施例中,通过每个推荐物品包括的相似度值对每个推荐物品对应的第二推荐值进行数据处理,从而实现了根据内容信息对每个推荐物品对应的第二推荐值进行调整,进而生成每个推荐物品的第一推荐值。这样,可以防止相邻的两个推荐物品的内容相似,进而影响用户的推荐体验。

如图4所示,可选地,s500,根据每个推荐物品包括的相似度值对每个推荐物品的第二推荐值进行数据处理,获取每个推荐物品的第三推荐值,从而得到每个推荐物品的第三推荐值排序,包括如下步骤s510和步骤s520:

s510,根据每个推荐物品包括的相似度值获取每个推荐物品相对前一位的推荐物品的不相似度值。

s520,根据每个推荐物品包括的不相似度值对每个推荐物品对应的第二推荐值进行数据处理,获取每个推荐物品的第三推荐值,从而得到每个推荐物品的第三推荐值排序。

在本实施例中,推荐物品的第三推荐值可以为该推荐物品相对前一位的推荐物品的不相似度值与该推荐物品对应的第二推荐值之间的乘积。

例如,某一推荐物品对应的第二推荐值为0.9,该推荐物品相对前一位的推荐物品的不相似度值为0.3,那么,该推荐物品的第三推荐值为0.27(0.9与0.3的乘积)。

可选地,当存在推荐物品相对前一位的推荐物品的不相似度值小于第二预设值时,选取第二预设值作为推荐物品的不相似度。

在实施中,设置第二预设值可以为防止推荐物品相对前一位的推荐物品的不相似度值过小,导致该推荐物品的第三推荐值过小,进而影响后续其他步骤对该推荐物品处理操作。

在本实施例中,根据每个推荐物品包括的相似度值对每个推荐物品对应的第二推荐值进行数据处理,获取每个推荐物品的第三推荐值,其中,该数据处理可以通过以下公式实现:

rec_scorei=rec_scorei*max((1-sim(itemi,itemi-1)),a)

其中,等号左侧rec_scorei是第i个推荐物品的第三推荐值,等号右侧rec_scorei是第i个推荐物品的第二推荐值,sim(itemi,itemi-1)为第i个推荐物品相对前一位的推荐物品的相似度值,(1-sim(itemi,itemi-1))为第i个推荐物品相对前一位的推荐物品的不相似度值,a为第二预设值,其中,第二预设值的取值可以为0.08、0.1、0.2等等,本领域的技术人员可以根据实际需要具体设置。

如图5所示,可选地,本物品推荐方法还包括如下步骤s600:

s600,获取每个推荐物品的生成时间,并根据当前时间以及每个推荐物品的生成时间对每个推荐物品的第三推荐值进行数据处理,获取每个推荐物品的第四推荐值,从而得到每个推荐物品的第四推荐值排序。

在本实施例中,推荐物品的生成时间可以为该推荐物品的统一资源定位符(uniformresourcelocator,url)生成时间;当前时间即为产生推荐的时间。

在实施中,根据当前时间以及每个推荐物品的生成时间对每个推荐物品的第三推荐值进行数据处理,因此,在对每个推荐物品的第三推荐值进行数据处理的过程中,添加了时间因素对第三推荐值的影响,考虑到了推荐物品的时效性,达到了将时效性好的推荐物品推荐给用户的目的,从而实现了将时效性好、与用户的兴趣相关性高的推荐物品推荐给用户,提高用户对推荐物品的兴趣的技术效果。

如图6所示,可选地,s600,根据当前时间以及每个推荐物品的生成时间对每个推荐物品的第三推荐值进行数据处理,获取每个推荐物品的第四推荐值,从而得到每个推荐物品的第四推荐值排序,包括如下步骤s610至步骤s630:

s610,根据当前时间以及每个推荐物品的生成时间获取每个推荐物品的生成时长。

在实施中,根据当前时间减去推荐物品的生成时间,即可以获取该推荐物品的生成时长,即该推荐物品由生成到当前时间存在的时间长度,该生成时长的时间单位可以为秒、分钟、小时、天等。

例如,某推荐物品为一条关于梅西的体育新闻,该关于梅西的体育新闻生成时间为2018年4月17日18时35分18秒,当前时间为2018年4月19日19时45分30秒,则该关于梅西的体育新闻的生成时长具体为2天1小时10分12秒,当时间单位为小时时,该关于梅西的体育新闻的生成时长为49.17小时,当时间单位为秒时,该关于梅西的体育新闻的生成时长为177012秒。

s620,根据第一预设时长评价值以及每个推荐物品的生成时长,获取每个推荐物品的时效系数。

在本实施例中,该第一预设时长评价值为一预设值,可以根据实际需要进行设置或调整,该第一预设时长评价值可以为一个常量,也可以是一个具有时间单位的值。

在实施中,推荐物品的时效系数由于该推荐物品的生产时长和第一预设时长评价值进行运算得出。

例如,某推荐物品为一条关于生态环境的社会新闻,该关于生态环境的社会新闻的生成时长为30分钟,该第一预设时长评价值为1440分钟,该运算方式为该第一预设时长与该生成时长之比,那么,该关于生态环境的社会新闻的时效系数为48(1440分钟与30分钟之比)。

s630,根据每个推荐物品的时效系数对每个推荐物品的第三推荐值进行运算,获取每个推荐物品的第四推荐值,从而得到每个推荐物品的第四推荐值排序。

在本实施例中,根据推荐物品的时效系数对该推荐物品的第三推荐值进行运算,从而获取该推荐物品的第四推荐值。

例如,该运算方式为推荐物品的时效系数与该推荐物品的第三推荐值的乘积,该推荐物品的时效系数为2,该推荐物品的第三推荐值为0.9001,那么,该推荐物品的第四推荐值为1.8002(2乘以0.9001)。

如图7所示,可选地,步骤s620,根据第一预设时长评价值以及每个推荐物品的生成时长,获取每个推荐物品的时效系数,包括如下步骤s621至步骤s622:

s621,根据每个推荐物品的生成时长获取每个推荐物品的第一时长评价值。

在本实施例中,根据推荐物品的生成时长可以获取对应该生成时长的评价值,即为第一时长评价值,该第一时长评价值可以通过对推荐物品的生成时长进行数据处理获取,例如,将推荐物品的生成时长除以一个单位时间,从而获取该生成时长对应的第一时长评价值。

例如,某一推荐物品的生成时长为4天,单位时间为天,那么该第一时长评价值可以为4。

s622,根据第一预设时长评价值与每个推荐物品的第一时长评价值之比,每个推荐物品的时效系数。

在本实施例中,推荐物品的时效系数可以为根据第一预设时长评价值与推荐物品的第一时长评价值之比获得的比值。

例如,第一预设时长评价值为1000,某一推荐物品的第一时长评价值为5,那么,该推荐物品的时效系数为200(1000除以5)。

如图8所示,可选地,步骤s621,根每个推荐物品的生成时长获取每个推荐物品的第一时长评价值,包括如下步骤s6211至步骤s6212:

s6211,根据每个推荐物品的生成时长与单位时间之比,获取每个推荐物品的第二时长评价值。

在本实施例中,推荐物品的第二时长评价值可以为根据该推荐物品的生成时长与单位时间之比获得的比值。

例如,某一推荐物品的生成时长为30小时,单位时间为小时,那么该推荐物品的第二时长评价值为30,又例如,另一推荐物品的生成时长为0,即该推荐物品是在当前时间生成的,那么该推荐物品的第二时长评价值为0。

s6212,根据第二预设时长评价值与每个推荐物品的第二时长评价值之和,获取每个推荐物品的第一时长评价值。

在本实施例中,为防止第一时长评价值为0,第一时长评价值为第二预设时长评价值与每个推荐物品的第二时长评价值之和,其中,该第二预设时长评价值为大于0的数值。

例如,第二预设时长评价值可以取值为1,当某一推荐物品的第二时长评价值为0时,该推荐物品的第一时长评价值为1。

在本实施例中,s600,获取每个推荐物品的生成时间,并根据当前时间以及每个推荐物品的生成时间对每个推荐物品的第三推荐值进行数据处理,获取每个推荐物品的第四推荐值,具体为:

依据推荐物品的生成时间以及当前时间对推荐物品的第三推荐值进行时效性调整获取推荐物品的第四推荐值,公式如下:

其中,等号左侧rec_scorei是第i个推荐物品的第四推荐值,等号右侧rec_score_i是第i个推荐物品的第三推荐值,cur_time是当前时间,时间单位为秒,create_timei是第i个推荐物品的生成时间,时间单位为秒,consttime1是第一预设时长评价值,第一预设时长评价值的取值本领域的技术人员可以根据实际需要具体设置,例如,第一预设时长评价值的取值可以为1、5、10、30、100、300、1000等等;公式中,consttime2是第二预设时长评价值,第二预设时长评价值的取值本领域的技术人员可以根据实际需要具体设置,例如,第二预设时长评价值可以取值为1等;公式中,(cur_time-create_timei)是第i个推荐物品的生成时长,(cur_time-create_timei)/86400是第i个推荐物品的第二时长评价值,(consttime2+(cur_time-create_timei)/86400)是第i个推荐物品的第一时长评价值。

如图9所示,可选地,s200,根据n个目标物品获取多个推荐物品以及每个推荐物品对应的第一推荐值,并得到每个推荐物品的第一推荐值排序,包括如下步骤s210至步骤s270:

s210,根据每个目标物品获取至少一个推荐集,其中,每个推荐集中包括与该目标物品相关的多个推荐物品,且每个推荐物品均对应一个第五推荐值。

在本实施例中,每一个目标物品经过每一种现有的物品推荐方法进行推荐物品筛选,都可以获取一个推荐集。

s220,对每个推荐集包括的推荐物品对应第五推荐值进行归一化处理,获取每个推荐物品均对应一个第六推荐值。

在本实施例中,对每个推荐集包括的推荐物品对应第五推荐值进行归一化处理,获取每个推荐物品均对应一个第六推荐值,可以通过以下公式实现:

其中,等号左侧rec_scorei是某一推荐集中第i个推荐物品的第六推荐值,等号左侧rec_scorei是某一推荐集中第i个推荐物品的第五推荐值,rec_score1是排某一推荐集中数值最大的第五推荐值。这样对每个推荐集进行归一化处理后,每个第六推荐值均在[0,1]的区间内。

s230,将全部的推荐集融合为一个推荐并集,其中,当在不同的推荐集中存在相同的推荐物品时,在推荐并集中该推荐物品的第六推荐值为不同的推荐集中该推荐物品对应的第六推荐值之和。

s240,在推荐并集中确定每个推荐物品的第六推荐值降序排序。

s250,获取每个推荐物品的所属类目。

s260,根据第六推荐值降序排序以及每个推荐物品的所属类目,获取每个推荐物品的所属类目排序,确定每个推荐物品在对应的所属类目排序中的序号。

s270,根据每个推荐物品在对应的所属类目排序中的序号对每个推荐物品对应的第六推荐值进行数据处理,获取每个推荐物品对应的第一推荐值,从而得到每个推荐物品的第一推荐值排序。

在本实施例中,根据每个推荐物品在对应的所属类目排序中的序号对每个推荐物品对应的第六推荐值进行数据处理,获取每个推荐物品对应的第一推荐值,可以根据以下公式实现:

其中,等号左侧rec_scorei是第i个推荐物品的第一推荐值,等号右侧rec_scorei是第i个推荐物品的第六推荐值,是第i个推荐物品对应的所属类目排序中的序号(或者是第i个推荐物品在第六推荐值降序排序中的出现次数),constcate是类目常量,可以设置为1或其他大于0的数值。

在本申请实施例中提供的物品推荐方法,通过根据用户历史行为数据获取n个目标物品以及对应每个目标物品的推荐因子,其中,n为大于1的整数;根据n个目标物品获取多个推荐物品以及每个推荐物品对应的第一推荐值,并得到每个推荐物品的第一推荐值排序,其中,每个推荐物品与至少一个目标物品相关;根据第一推荐值排序以及每个目标物品对应的推荐因子对每个推荐物品对应的第一推荐值进行数据处理,获取每个推荐物品对应的第二推荐值,从而得到每个推荐物品的第二推荐值排序。这样,根据推荐因子以及第一推荐值排序,对相关性很高的推荐物品进行处理,达到了多个推荐维度对推荐物品的推荐值进行运算,提高了推荐结果的话题多样性的目的,从而实现了推荐物品的多样性,提升了用户的阅读体验的技术效果,进而解决了相关性很高的物品会被大量扎堆地推荐给用户,造成用户的阅读疲劳的技术问题。

基于与上述物品推荐方法相同的技术构思,本申请实施例还提供了一种物品推荐装置,如图10所示,包括:

第一获取模块10,用于根据用户历史行为数据获取n个目标物品以及对应每个目标物品的推荐因子,其中,n为大于1的整数;

第二获取模块20,用于根据n个目标物品获取多个推荐物品以及每个推荐物品对应的第一推荐值,并得到每个推荐物品的第一推荐值排序,其中,每个推荐物品与至少一个目标物品相关;

第三获取模块30,根据第一推荐值排序以及每个目标物品对应的推荐因子对每个推荐物品对应的第一推荐值进行数据处理,获取每个推荐物品对应的第二推荐值,从而得到每个推荐物品的第二推荐值排序。

可选地,第三获取模块30,用于:

根据每个推荐物品与相关的目标物品确定每个推荐物品对应的推荐因子;

根据第一推荐值排序以及每个推荐物品对应的推荐因子,获取每个推荐物相对于对应的推荐因子排序,确定每个推荐物品在对应的推荐因子排序中的序号;

根据每个推荐物品在对应的推荐因子排序中的序号对每个推荐物品对应的第一推荐值进行数据处理,获取每个推荐物品对应的第二推荐值。

可选地,第三获取模块30,还用于当推荐物品存在至少两个对应的第二推荐值时,选取推荐物品的至少两个第二推荐值中最大的第二推荐值作为推荐物品对应的第二推荐值。

如图11所示,可选地,本物品推荐装置还包括第四获取模块40和第五获取模块50;每个所述推荐物品的第二推荐值排序为每个所述推荐物品的第二推荐值降序排序;

第四获取模块40,用于在每个推荐物品的第二推荐值排序中,获取每个推荐物品相对前一位推荐物品的相似度值,其中,排在第一位的推荐物品包括的相似度值为第一预设值;

第五获取模块50,用于根据每个推荐物品包括的相似度值对每个推荐物品的第二推荐值进行数据处理,获取每个推荐物品的第三推荐值,从而得到每个推荐物品的第三推荐值排序。

可选地,第五获取模块50,用于:

根据每个推荐物品包括的相似度值获取每个推荐物品相对前一位的推荐物品的不相似度值;

根据每个推荐物品包括的不相似度值对每个推荐物品对应的第二推荐值进行数据处理,获取每个推荐物品的第三推荐值,从而得到每个推荐物品的第三推荐值排序;

可选地,当存在推荐物品相对前一位的推荐物品的不相似度值小于第二预设值时,选取第二预设值作为推荐物品的不相似度。

如图12所示,可选地,本物品推荐装置还包括第六获取模块60;

第六获取模块60,用于获取每个推荐物品的生成时间,并根据当前时间以及每个推荐物品的生成时间对每个推荐物品的第三推荐值进行数据处理,获取每个推荐物品的第四推荐值,从而得到每个推荐物品的第四推荐值排序。

可选地,第六获取模块60,用于:

根据当前时间以及每个推荐物品的生成时间获取每个推荐物品的生成时长;

根据第一预设时长评价值以及每个推荐物品的生成时长,获取每个推荐物品的时效系数;

根据每个推荐物品的时效系数对每个推荐物品的第三推荐值进行运算,获取每个推荐物品的第四推荐值,从而得到每个推荐物品的第四推荐值排序。

可选地,第六获取模块60,用于:

根据每个推荐物品的生成时长获取每个推荐物品的第一时长评价值;

根据第一预设时长评价值与每个推荐物品的第一时长评价值之比,每个推荐物品的时效系数。

可选地,第六获取模块60,用于:

根据每个推荐物品的生成时长与单位时间之比,获取每个推荐物品的第二时长评价值;

根据第二预设时长评价值与每个推荐物品的第二时长评价值之和,获取每个推荐物品的第一时长评价值。

可选地,第二获取模块20,用于:

根据每个目标物品获取至少一个推荐集,其中,每个推荐集中包括与该目标物品相关的多个推荐物品,且每个推荐物品均对应一个第五推荐值;

对每个推荐集包括的推荐物品对应第五推荐值进行归一化处理,获取每个推荐物品均对应一个第六推荐值;

将全部的推荐集融合为一个推荐并集,其中,当在不同的推荐集中存在相同的推荐物品时,在推荐并集中该推荐物品的第六推荐值为不同的推荐集中该推荐物品对应的第六推荐值之和;

在推荐并集中确定每个推荐物品的第六推荐值降序排序;

获取每个推荐物品的所属类目;

根据第六推荐值降序排序以及每个推荐物品的所属类目,获取每个推荐物品的所属类目排序,确定每个推荐物品在对应的所属类目排序中的序号;

根据每个推荐物品在对应的所属类目排序中的序号对每个推荐物品对应的第六推荐值进行数据处理,获取每个推荐物品对应的第一推荐值,从而得到每个推荐物品的第一推荐值排序。

在本申请实施例中提供的物品推荐装置,通过第一获取模块10,用于根据用户历史行为数据获取n个目标物品以及对应每个目标物品的推荐因子,其中,n为大于1的整数;第二获取模块20,用于根据n个目标物品获取多个推荐物品以及每个推荐物品对应的第一推荐值,并得到每个推荐物品的第一推荐值排序,其中,每个推荐物品与至少一个目标物品相关;第三获取模块30,用于根据第一推荐值排序以及每个目标物品对应的推荐因子对每个推荐物品对应的第一推荐值进行数据处理,获取每个推荐物品对应的第二推荐值,从而得到每个推荐物品的第二推荐值排序。这样,根据推荐因子以及第一推荐值排序,对相关性很高的推荐物品进行处理,达到了多个推荐维度对推荐物品的推荐值进行运算,提高了推荐结果的话题多样性的目的,从而实现了推荐物品的多样性,提升了用户的阅读体验的技术效果,进而解决了相关性很高的物品会被大量扎堆地推荐给用户,造成用户的阅读疲劳的技术问题。

显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。

以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1