一种增值业务推荐方法及装置与流程

文档序号:16330824发布日期:2018-12-19 06:11阅读:156来源:国知局
一种增值业务推荐方法及装置与流程

本申请属于数据挖掘领域,具体涉及一种增值业务推荐方法及装置。

背景技术

随着iptv业务的不断发展,iptv能够提供的服务已不只是简单如直播,点播等的基础业务,还能够丰富的增值业务,如动漫,游戏,电影等。面对数量、种类繁多的增值服务,为了向用户展示可能更感兴趣的业务,推荐系统应运而生。

目前采用的推荐方法主要有基于协同过滤的推荐方法以及相关改进方法。这类方法中基于用户的协同过滤主要依据用户对节目的评分形式用户-评分矩阵,依据该矩阵计算用户之间的相似度,选择前k个相似用户,把该用户没有看过而相似用户看过的节目推荐给用户。基于物品的协同过滤与基于用户的方法类似,只是计算相似度的对象为节目或服务。

基于协同过滤的推荐方法由于依赖用户的历史评分或行为数据,所以无法对新用户进行推荐。同时,目前针对iptv场景下的推荐系统把整个家庭作为一整个推荐对象,然而一般情况下家庭成员的兴趣各不相同,故目前的iptv推荐系统无法进行更具精准的推荐。



技术实现要素:

本申请提供一种增值业务推荐方法,以解决现有的基于协同过滤的推荐方法无法对新用户进行推荐、且缺乏精准性的问题。

本申请另外提供一种增值业务推荐装置。

本申请提供一种增值业务推荐方法,包括:

获取历史用户订购的业务集合和所述历史用户对应的家庭角色集合,所述业务集合包括多个增值业务,一个历史用户对应一个家庭角色;

根据所述历史用户订购的业务集合和所述历史用户对应的家庭角色集合,确定与家庭角色对应的频繁项集,所述频繁项集包括多个增值业务;

根据所述频繁项集中任意两个增值业务组成关联规则,计算所述关联规则的置信度;

判断所述关联规则的置信度是否大于或等于预设置信度;

若判断出所述关联规则的置信度大于或等于预设置信度,则向相同家庭角色的新用户推荐与所述关联规则对应的增值业务。

可选的,所述根据所述历史用户订购的业务集合和所述历史用户对应的家庭角色集合,确定与家庭角色对应的频繁项集步骤,包括:

根据所述历史用户订购的业务集合和所述历史用户对应的家庭角色集合生成与家庭角色分类对应的订购数据,所述订购数据包括历史用户总数和订购子数据,每个所述订购子数据包括历史用户编号和与所述历史用户编号对应的至少一个增值业务;

对所述订购数据进行筛选和排序,生成对应的参考数据;

根据所述历史用户编号、与所述历史用户编号对应的至少一个增值业务和所述参考数据生成树形结构数据,并统计所述树形结构数据中每一个节点对应的增值业务的订购次数;

判断所述树形结构数据的每一个分支的每一个节点对应的增值业务的订购次数是否大于或等于预设阈值,所述预设阈值为所述历史用户总数与预设支持度的乘积;

若所述树形结构数据的每一个分支的每一个节点对应的增值业务的订购次数大于或等于所述预设阈值,则将每一个分支的所有节点构成的集合作为所述频繁项集。

可选的,所述对所述订购数据进行筛选和排序,生成对应的参考数据步骤,包括:

统计所述订购数据中增值业务的订购次数,筛选出增值业务的订购次数大于或等于所述预设阈值的订购子数据;

对筛选出的订购子数据按照增值业务的订购次数依次降低的顺序进行排列,生成所述参考数据。

可选的,所述根据所述历史用户编号、与所述历史用户编号对应的至少一个增值业务和所述参考数据生成树形结构数据步骤,包括:

对与所述历史用户编号对应的至少一个增值业务进行筛选,获取与所述参考数据对应的增值业务;

根据所述参考数据中所述增值业务的顺序和所述历史用户编号,对与所述历史用户编号对应的至少一个增值业务进行排列,每一个增值业务对应一个或多个节点。

可选的,所述根据获取的所述频繁项集中任意两个增值业务组成关联规则,计算所述关联规则的置信度步骤,包括:

获取所述频繁项集中任意两个增值业务ti、tk,并组成关联规则;

计算订购增值业务ti和增值业务tk的次数与订购增值业务ti的次数的比值,得出所述关联规则的置信度。

本申请还提供一种增值业务推荐装置,包括:

获取单元,用于获取历史用户订购的业务集合和所述历史用户对应的家庭角色集合,所述业务集合包括多个增值业务,一个历史用户对应一个家庭角色;

确定单元,用于根据所述历史用户订购的业务集合和所述历史用户对应的家庭角色集合,确定与家庭角色对应的频繁项集,所述频繁项集包括多个增值业务;

计算单元,用于根据所述频繁项集中任意两个增值业务组成关联规则,计算所述关联规则的置信度;

判断单元,用于判断所述关联规则的置信度是否大于或等于预设置信度;

推荐单元,用于若判断出所述关联规则的置信度大于或等于预设置信度,则向相同家庭角色的新用户推荐与所述关联规则对应的增值业务。

可选的,所述确定单元,包括:

订购数据生成子单元,用于根据所述历史用户订购的业务集合和所述历史用户对应的家庭角色集合生成与家庭角色分类对应的订购数据,所述订购数据包括历史用户总数和订购子数据,每个所述订购子数据包括历史用户编号和与所述历史用户编号对应的至少一个增值业务;

参考数据生成子单元,用于对所述订购数据进行筛选和排序,生成对应的参考数据;

树形结构数据生成子单元,用于根据所述历史用户编号、与所述历史用户编号对应的至少一个增值业务和所述参考数据生成树形结构数据,并统计所述树形结构数据中每一个节点对应的增值业务的订购次数;

判断子单元,用于判断所述树形结构数据的每一个分支的每一个节点对应的增值业务的订购次数是否大于或等于预设阈值,所述预设阈值为所述历史用户总数与预设支持度的乘积;

频繁项集确定子单元,用于若所述树形结构数据的每一个分支的每一个节点对应的增值业务的订购次数大于或等于所述预设阈值,则将每一个分支的所有节点构成的集合确定为所述频繁项集。

可选的,所述参考数据生成子单元,包括:

第一筛选模块,用于统计所述订购数据中增值业务的订购次数,筛选出增值业务的订购次数大于或等于所述预设阈值的订购子数据;

第一排序模块,用于对筛选出的订购子数据按照增值业务的订购次数依次降低的顺序进行排列,生成所述参考数据。

可选的,所述树形结构数据生成子单元,包括:

第二筛选模块,用于对与所述历史用户编号对应的至少一个增值业务进行筛选,获取与所述参考数据对应的增值业务;

第二排序模块,用于根据所述参考数据中所述增值业务的顺序和所述历史用户编号,对与所述历史用户编号对应的至少一个增值业务进行排列,每一个增值业务对应一个或多个节点。

可选的,所述计算单元,包括:

关联规则组成子单元,用于获取所述频繁项集中任意两个增值业务ti、tk,并组成关联规则;

计算子单元,用于计算订购增值业务ti和增值业务tk的次数与订购增值业务ti的次数的比值,得出所述关联规则的置信度。

本申请利用历史用户的订购增值业务数据,通过挖掘关联规则,发现强相关业务并进行推荐,解决了新用户的“冷启动”问题。并且根据家庭角色对数据进行分类,进一步进行数据挖掘,提高了推荐的精确度和个性化程度。

附图说明

图1为本申请第一实施例提供的一种增值业务推荐方法的流程图;

图2为本申请第二实施例提供的一种增值业务推荐方法的流程图;

图3为本申请第二实施例提供的一种增值业务推荐方法的树形结构图。

图4为本申请第三实施例提供的一种增值业务推荐装置的结构示意图;

图5为本申请第四实施例提供的一种增值业务推荐装置的结构示意图。

具体实施方式

为使本领域技术人员更好地理解本申请的技术方案,下面结合附图和具体实施方式对本申请作进一步详细描述。

本申请提供一种增值业务推荐方法、装置。以下分别结合本申请提供的实施例的附图逐一进行详细说明。

本申请第一实施例提供的一种增值业务推荐方法如下:

本申请实施例的执行主体是服务端,如图1所示,其示出了本申请实施例提供的一种增值业务推荐方法的流程图,包括以下步骤。

步骤s101,获取历史用户订购的业务集合和所述历史用户对应的家庭角色集合,所述业务集合包括多个增值业务,一个历史用户对应一个家庭角色。

步骤s102,根据所述历史用户订购的业务集合和所述历史用户对应的家庭角色集合,确定与家庭角色对应的频繁项集,所述频繁项集包括多个增值业务

步骤s103,根据所述频繁项集中任意两个增值业务组成关联规则,计算所述关联规则的置信度。

步骤s104,判断所述关联规则的置信度是否大于或等于预设置信度,若是,则执行步骤s105,若否,则流程结束。

步骤s105,向相同家庭角色的新用户推荐与所述关联规则对应的增值业务。

当新用户入网后,建议新用户选择家庭角色获得更加个性化的推荐。本申请实施例根据新用户选择家庭角色,进一步选择现网历史用户的数据集。例如:新用户选择家庭角色:“父亲”,本方法相应选择现网中相同角色为“父亲”的观看记录作为待处理数据,以此为依据,根据关联规则挖掘方法寻找频繁项集。通过对频繁项集的两两组合构成关联规则,计算组合好的关联规则的置信度,当置信度大于或等于预设置信度,即向相同家庭角色的新用户推荐与所述关联规则对应的增值业务。

本申请实施例利用历史用户的订购增值业务数据,通过挖掘关联规则,发现强相关业务并进行推荐,解决了新用户的“冷启动”问题。并且根据家庭角色对数据进行分类,进一步进行数据挖掘,提高了推荐的精确度和个性化程度。

本申请第二实施例提供的一种增值业务推荐方法如下:

本申请实施例的执行主体是服务端,如图2所示,其示出了本申请实施例提供的一种增值业务推荐方法的流程图,包括以下步骤。

步骤s201,获取历史用户订购的业务集合和所述历史用户对应的家庭角色集合,所述业务集合包括多个增值业务,一个历史用户对应一个家庭角色。

采集历史用户订购的业务集合,同时采集历史用户对应的家庭角色集合作为待处理数据集。每一个历史用户订购的增值业务可以是一个,也可以是多个。每一个历史用户对应一个家庭角色,可以是“父亲”、“母亲”、“兄长”等,因为每一个不同的家庭角色订购的增值业务会有不同。根据家庭角色对应的增值业务计算关联规则,从而推荐给相同角色的新用户。

步骤s202,根据所述历史用户订购的业务集合和所述历史用户对应的家庭角色集合生成与家庭角色分类对应的订购数据,所述订购数据包括历史用户总数和订购子数据,每个所述订购子数据包括历史用户编号和与所述历史用户编号对应的至少一个增值业务。

整理历史用户的待处理数据集,以家庭角色分类分别统计,生成与家庭角色分类对应的订购数据。订购数据以历史用户编号为分类,以历史用户编号对应的至少一个增值业务为条目内容,记为t={ti:[ti…],…}。其中ti为订购的增值业务,ti为历史用户编号,t为与家庭角色对应的订购子数据,订购子数据t的历史用户总数为s。

步骤s203,对所述订购数据进行筛选和排序,生成对应的参考数据。

然后需要根据订购子数据t,统计t中所有订购的增值业务ti的订购次数hi,并进行筛选和排序,生成对应的参考数据ts,即ts={ti:hi,…}。

优选地,所述步骤s203,包括:统计所述订购数据中增值业务的订购次数,筛选出增值业务的订购次数大于或等于所述预设阈值的订购子数据,所述预设阈值为所述历史用户总数与预设支持度的乘积;

对订购子数据按照增值业务的订购次数依次降低的顺序进行排列,生成所述参考数据。

支持度,简单的字面理解就是支持的程度。表示前项与后项在一个数据集中同时出现的频率。支持度揭示了a和b同时出现的频率,如果a和b一起出现的频率非常小,那么就说明了a和b之间的联系并不大;但若一起出现的频率非常频繁,那么a和b总是相关联的知识也许已经成为常识而存在了。如:某超市中有1000个顾客购物,其中200个顾客购买了面包(物品集a),那么面包(物品集a)的支持度为:p(a)=20%(200/1000)。

计算历史用户总数与预设支持度的乘积,作为预设阈值,订购增值业务的订购次数的预设最小值。统计订购数据中增值业务的订购次数,筛选出增值业务的订购次数大于或等于所述预设阈值的订购子数据,即筛选出的增值业务的订购次数不能小于预设最小值,需要获取的是高频组合。

对订购子数据按照增值业务的订购次数依次降低的顺序进行排列,生成所述参考数据,以备之后根据参考数据的顺序进行数据的排列。

步骤s204,根据所述历史用户编号、与所述历史用户编号对应的至少一个增值业务和所述参考数据生成树形结构数据,并统计所述树形结构数据中每一个节点对应的增值业务的订购次数。

根据所述历史用户编号、与所述历史用户编号对应的至少一个增值业务和所述参考数据生成树形结构数据。

根据所述历史用户编号ti、与所述历史用户编号对应的至少一个增值业务ti和所述参考数据ts,建立一个树形的数据结构。根节点为null,把订购子数据t中每一个历史用户编号ti和每一个历史用户编号ti对应的至少一个增值业务ti按照参考数据ts的顺序加入到树中并计数(如图3)。

优选地,所述步骤s204,包括:对与所述历史用户编号对应的至少一个增值业务进行筛选,获取与所述参考数据对应的增值业务;

根据所述参考数据中所述增值业务的顺序和所述历史用户编号,对与所述历史用户编号对应的至少一个增值业务进行排列,每一个增值业务对应一个或多个节点。

画树形结构图会把每一个家庭角色的历史用户观看的所有增值业务加进来,因此需要删除不在参考列表ts中的增值业务。例如,历史用户甲订购了a、b、c、d四个增值业务,但是在步骤s203中将增值业务d删除,但是画树形结构图还是根据历史用户订购的增值业务建立,因此会将增值业务d加进来,因此还需再次删除增值业务d。

在画树形结构图时是按照历史用户订购的增值业务来画每一个分支,按照参考数据中的顺序,将与所述历史用户编号对应的至少一个增值业务添加在一个分支上。例如,经过筛选后,历史用户甲订购了a、b、c三个增值业务,并且在参考列表ts中增值业务的排列顺序是a>b>c,那么如图3中,树形结构图中t1是a,t3是b,t5是c。l1、l3、l5为与增值业务t1、t3、t5对应的订购次数。

需要说明的是,树形结构图每一个节点的ti可以叠加,多个历史用户订购的增值业务的分支可以从一个节点出发添加。一个ti可以出现在一个节点上,可以出现在多个节点上,并不固定一个ti必须对应一个节点(如图3)。因此li是每个节点增值业务的订购次数的集合,是一个叠加值,并限于是一个历史用户订购的增值业务对应的订购次数,与此有差别。li也和hi的含义不同,li只与节点对应,hi与增值业务对应。

步骤s205,判断所述树形结构数据的每一个分支的每一个节点对应的增值业务的订购次数是否大于或等于预设阈值,若是,则执行步骤s206;若否,流程结束。

步骤s206,将每一个分支的所有节点构成的集合作为所述频繁项集,所述频繁项集包括多个增值业务。

由上述步骤s204可知,一个ti可以出现在一个节点上,可以出现在多个节点上,并不固定一个ti必须对应一个节点。因此,树形结构图中的节点对应的增值业务的订购次数不一定还满足大于或等于预设阈值的条件,需要进行再次筛选。遍历树的每一个分支,若每一个分支的每一个节点对应的增值业务的订购次数大于或等于所述预设阈值,则将每一个分支的所有节点ti构成的集合作为所述频繁项集tf。

步骤s207,获取所述频繁项集中任意两个增值业务ti、tk,并组成关联规则。

步骤s208,计算订购增值业务ti和增值业务tk的次数与订购增值业务ti的次数的比值,得出所述关联规则的置信度。

步骤s209,判断所述关联规则的置信度是否大于或等于预设置信度,若是,则执行步骤s210;若否,流程结束。

步骤s210,向相同家庭角色的新用户推荐与所述关联规则对应的增值业务。

置信度也称为可靠度,或置信水平、置信系数,即在抽样对总体参数做出估计时,由于样本的随机性,其结论总是不确定的。因此,采用一种概率的陈述方法,也就是数理统计中的区间估计法,即估计值与总体参数在一定允许的误差范围以内,其相应的概率有多大,这个相应的概率称作置信度。置信度是d中事务已经包含x的情况下,包含y的百分比,即条件概率。

关联规则是形如x→y的蕴涵式,其中,x和y分别称为关联规则的先导和后继。如果满足最小支持度阈值和最小置信度阈值,则认为关联规则是成立的。

关联规则挖掘过程主要包含两个阶段:第一阶段必须先从资料集合中找出所有的高频项目组,第二阶段再由这些高频项目组中产生关联规则。若关联规则所求得的置信度满足最小置信度,称此规则为关联规则。例如:经由高频k-项目组{a,b}所产生的规则ab,若置信度大于等于最小置信度,则称ab为关联规则。

获取所述频繁项集tf中任意两个增值业务ti、tk,并组成关联规则{ti}=>{tk},关联规则{ti}=>{tk}表示既看过ti这个增值业务也会看tk这个增值业务。计算关联规则{ti}=>{tk}的置信度,置信度是d中事务已经包含x的情况下,包含y的百分比。因此计算订购增值业务ti和增值业务tk的次数与只订购增值业务ti的次数的比值,就可以得出关联规则的置信度,即ni=hi∩k/hi。

预设最小置信度为n,根据频繁项集tf集合穷举并构建关联规则{ti}=>{tk},当此关联规则的置信度ni=>n时,该关联规则成立,即为挖掘到的与家庭角色对应的订购增值业务的关联规则。根据挖掘到的关联规则可以向相同家庭角色的新用户推荐增值业务ti、tk。

当新用户入网后,建议新用户选择家庭角色获得更加个性化的推荐。本申请实施例根据新用户选择家庭角色,进一步选择现网历史用户的数据集。例如:新用户选择家庭角色:“父亲”,本方法相应选择现网中相同角色为“父亲”的观看记录作为待处理数据,以此为依据,根据关联规则挖掘方法寻找频繁项集。通过对频繁项集的两两组合构成关联规则,计算组合好的关联规则的置信度,当置信度大于或等于预设置信度,即向相同家庭角色的新用户推荐与所述关联规则对应的增值业务。

本申请实施例利用历史用户的订购增值业务数据,通过挖掘关联规则,发现强相关业务并进行推荐,解决了新用户的“冷启动”问题。并且根据家庭角色对数据进行分类,进一步进行数据挖掘,提高了推荐的精确度和个性化程度。

需要说明的是,本申请实施例提供的各步骤可根据需要进行顺序变更,也可以根据需要删除部分步骤,均是本申请所保护的范围。上述第二实施例仅为一种示例,是相对于第一实施例保护范围较小的一个是实施例。

本申请第三实施例提供的一种增值业务推荐装置如下:

在上述的实施例中,提供了一种增值业务推荐方法,与之相对应的,本申请还提供了一种增值业务推荐装置。

由于装置实施例基本相似于方法实施例,所以描述得比较简单,相关的部分请参见上述提供的增值业务推荐方法实施例的对应说明即可。下述描述的装置实施例仅仅是示意性的,下面结合附图进行说明。

如图3所示,其示出了本申请实施例提供的增值业务推荐方法装置的结构示意图,包括以下单元。

获取单元11,用于获取历史用户订购的业务集合和所述历史用户对应的家庭角色集合,所述业务集合包括多个增值业务,一个历史用户对应一个家庭角色;

确定单元12,用于根据所述历史用户订购的业务集合和所述历史用户对应的家庭角色集合,确定与家庭角色对应的频繁项集,所述频繁项集包括多个增值业务;

计算单元13,用于根据所述频繁项集中任意两个增值业务组成关联规则,计算所述关联规则的置信度;

判断单元14,用于判断所述关联规则的置信度是否大于或等于预设置信度;

推荐单元15,用于若判断出所述关联规则的置信度大于或等于预设置信度,则向新用户推荐与所述关联规则对应的增值业务。

本申请第四实施例提供的一种增值业务推荐装置如下:

可选的,如图4所示,其示出了本申请实施例提供的增值业务推荐装置的结构示意图,本申请实施例在上述第三实施例的基础上,所述确定单元12,包括:

订购数据生成子单元121,用于根据所述历史用户订购的业务集合和所述历史用户对应的家庭角色集合生成与家庭角色分类对应的订购数据,所述订购数据包括历史用户总数和订购子数据,每个所述订购子数据包括历史用户编号和与所述历史用户编号对应的至少一个增值业务;

参考数据生成子单元122,用于对所述订购数据进行筛选和排序,生成对应的参考数据;

树形结构数据生成子单元123,用于根据所述历史用户编号、与所述历史用户编号对应的至少一个增值业务和所述参考数据生成树形结构数据,并统计所述树形结构数据中每一个节点对应的增值业务的订购次数;

判断子单元124,用于判断所述树形结构数据的每一个分支的每一个节点对应的增值业务的订购次数是否大于或等于预设阈值,所述预设阈值为所述历史用户总数与预设支持度的乘积;

频繁项集确定子单元125,用于若所述树形结构数据的每一个分支的每一个节点对应的增值业务的订购次数大于或等于所述预设阈值,则将每一个分支的所有节点构成的集合确定为所述频繁项集。

可选的,所述参考数据生成子单元122,包括:

第一筛选模块,用于统计所述订购数据中增值业务的订购次数,筛选出增值业务的订购次数大于或等于所述预设阈值的订购子数据;

第一排序模块,用于对筛选出的订购子数据按照增值业务的订购次数依次降低的顺序进行排列,生成所述参考数据。

可选的,所述树形结构数据生成子单元123,包括:

第二筛选模块,用于对与所述历史用户编号对应的至少一个增值业务进行筛选,获取与所述参考数据对应的增值业务;

第二排序模块,用于根据所述参考数据中所述增值业务的顺序和所述历史用户编号,对与所述历史用户编号对应的至少一个增值业务进行排列,每一个增值业务对应一个或多个节点。

可选的,如图4所示,所述计算单元13,包括:

关联规则组成子单元131,用于获取所述频繁项集中任意两个增值业务ti、tk,并组成关联规则;

计算子单元132,用于计算订购增值业务ti和增值业务tk的次数与订购增值业务ti的次数的比值,得出所述关联规则的置信度。

需要说明的是,本申请实施例提供的各单元或模块可根据需要进行顺序变更,也可以根据需要删除部分单元或模块,均是本申请所保护的范围。上述第四实施例仅为一种示例,是相对于第三实施例保护范围较小的一个是实施例。

可以理解的是,以上实施方式仅仅是为了说明本申请的原理而采用的示例性实施方式,然而本申请并不局限于此。对于本领域内的普通技术人员而言,在不脱离本申请的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本申请的保护范围。

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