[发明专利]频繁项集挖掘算法的优化方法有效
申请号: | 201510806032.5 | 申请日: | 2015-11-20 |
公开(公告)号: | CN105447134B | 公开(公告)日: | 2019-03-08 |
发明(设计)人: | 李磊 | 申请(专利权)人: | 央视国际网络无锡有限公司 |
主分类号: | G06F16/2458 | 分类号: | G06F16/2458 |
代理公司: | 北京中恒高博知识产权代理有限公司 11249 | 代理人: | 宋敏 |
地址: | 214000 江苏省无锡市新区*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 频繁 挖掘 算法 优化 方法 | ||
本发明公开了一种频繁项集挖掘算法的优化方法,包括:接收数据;对于接收的数据,使用前序遍历,遍历项集树,从而对项集进行排列;对排列后的项集中相邻的项集做父子集比较,并将比较结果为真子集与父集关系的项集合并。与现有频繁项集挖掘算法比较,提取真子集的作用,主要的优点是通过提取真子集,缩小数据量的大小,缩减数据的计算过程和数据存储的大小,并且通过有效的减少无效项集的计算,防止重复数据的反复计算。
技术领域
本发明涉及数据处理领域,具体地,涉及一种频繁项集挖掘算法的优化方法。
背景技术
频繁项集挖掘算法用于挖掘经常一起出现的item集合(称为频繁项集),通过挖掘出这些频繁项集,当在一个事务中出现频繁项集的其中一个item,则可以把该频繁项集的其他item作为推荐。
常见的频繁项集挖掘算法有两类,一类是Apriori算法,另一类是FPGrowth。FPGrowth是基于Apriori算法优化而成。FPgrowth算法相对于Apriori,最大的突破是缩减了数据的迭代次数。Apriori在计算频繁项集需要进行K-1次计算,K为频繁一项集的个数,而Fpgrowth通过构建fptree只需要遍历2次数据就能完成频繁项集的计算。
随着信息化的发展,数据的爆发性增多,数据的复杂性大大增加。虽然通过hadoop,spark,Fpgrowth等技术可以缩短频繁项集的计算时间和数据的迭代次数,但是不同来源的数据,会造成频繁项集的数量集的增大和无效频繁项集的增多。项目中实际使用效果并不精准,往往推荐出错误的结果。而且无效数据量会增大频繁项集的大小,使项目的性能和成本不能满足需求。
发明内容
本发明的目的在于,针对上述问题,提出一种频繁项集挖掘算法的优化方法,以实现缩小数据量大小,以及缩减数据计算过程和数据存储的优点。
为实现上述目的,本发明采用的技术方案是:
一种频繁项集挖掘算法的优化方法,包括:
接收数据;
对于接收的数据,使用前序遍历,遍历项集树,从而对项集进行排列;
对排列后的项集中相邻的项集做父子集比较,并将比较结果为真子集与父集关系的项集合并;
其中项集为频繁项集的简称。
优选的,所述父子集比较,比较的内容包括,项集的从属关系和项集的支持度。
优选的,所述项集的从属关系比较具体为:
假设,两个项集分别为A项集和B项集,如果A项集里面的项都包含于B项集中,则认为A项集属于B项集,A项集是B项集的子集。
优选的,所述项集的支持度比较具体为:
假设,两个项集分别为A项集和B项集,项集的支持度来源于数据中,简单来说就是该项集里面的项在数据中同时出现的次数,如果A项集的频繁度和B项集的频繁度相等并且A项集是B项集的子集,则A项集是B项集的真子集;如果A项集是B项集的子集,但是支持度不同,则A项集是B项集的子集,但并不是真子集。
本发明的技术方案具有以下有益效果:
本发明的技术方案,与现有频繁项集挖掘算法比较,提取真子集的作用,主要的优点是通过提取真子集,缩小数据量的大小,缩减数据的计算过程和数据存储的大小,并且通过有效的减少无效项集的计算,防止重复数据的反复计算。从而使用该算法做推荐时,避免推荐无效的商品,可以有效的增加用户体验。真子集的使用是即节约成本,又提高性能和用户体验。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于央视国际网络无锡有限公司,未经央视国际网络无锡有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510806032.5/2.html,转载请声明来源钻瓜专利网。