[发明专利]一种融合FP-growth算法和Slope-One算法的混合推荐模型在审
申请号: | 201711004573.1 | 申请日: | 2017-10-25 |
公开(公告)号: | CN109711912A | 公开(公告)日: | 2019-05-03 |
发明(设计)人: | 崔忠伟;牛俊洁;左羽;于国龙;赵勇 | 申请(专利权)人: | 贵州师范学院 |
主分类号: | G06Q30/06 | 分类号: | G06Q30/06 |
代理公司: | 北京中济纬天专利代理有限公司 11429 | 代理人: | 郝志亮 |
地址: | 550018 贵*** | 国省代码: | 贵州;52 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 算法 融合 | ||
本发明公开了一种融合FP‑growth算法和Slope One算法的混合推荐模型,该模型采用FP‑growth算法和Slope One算法使得推荐结果更加准确。
技术领域
本发明涉及推荐算法领域,尤其涉及一种融合FP-growth算法和Slope One算法的混合推荐模型。
背景技术
2005年Lemire教授提出了Slope One算法,其核心思想是:线性回归f(x)=x+b。借助大量用户对item的评分,可以得到任意两个item的回归直线。未评分item的评分(值根据已评分item评分值计算,根据计算出的评分值排序做Top-N推荐。它的优点是算法简单,容易实现,可扩展性也不错,但必须基于评分,如果没有评分,需要构造评分。并给出了Weighted-Slope One算法模型修正Slope One未考虑对物品产生行为的用户数对偏差的贡献度不同,但Weighted-Slope One不具有解释性,推荐结构不够精确。
目前对Slope One算法改进一般使用聚类方法提高其精度,比如使用改进的 K-means方法聚类用户后,利用User-CF搜索最近邻居,结合Slope One为目标用户推荐对应的产品。又比如融合领近项目的Slope One算法,基于项目属性相似和MapReduce 并行化的Slope One算法。这些混合算法都是在提高算法的精度上做出了一定的贡献,但其关联性和可解释性相对较差。
发明内容
本发明的主要目的在于提供一种融合FP-growth算法和Slope One算法的混合推荐模型,能够是推荐结构更加的准确。
为达到以上目的,本发明采用的技术方案为:一种融合FP-growth算法和SlopeOne 算法的混合推荐模型,通过以下步骤实现:
1)输入推荐参数:数据集和最小支持度;
2)对数据集在数据库中进行第一次扫描,获得频繁项的集合F和其中每个频繁项的支持度,并对F中的所有频繁项按其支持度进行降序排序,得到频繁项表L,移除头指针表中不满足最小支持度的元素项;
3)再次扫描数据库,由每个事务不断构建FP-Tree,同时对每个数据集中的项集初始化空FP树;
4)根据已经构造好的FP-Tree、项集α、最小支持度对每个项集进行过滤和重排序;
5)使用步骤4中的项集更新FP树;
6)根据得到的数据集D中的频繁项集L,构建频繁项集与未评分项集构造轻量级矩阵;根据频繁项集数据,构建self.diffs/self.freqs字典;
7)计算与目标项的评分偏差dev;
8)对得到的评分偏差dev采用Weighted-Slope One算法进行修正。
优选地,步骤7中采用以下公式进行计算:
其中,Sj,i( )统计在同一时间对物品i和j的评分的所有用户的集合。
与现有技术相比,本发明的推荐模型的推荐结果更加的准确。
附图说明
图1是根据本发明的一个优选实施例的原理图
具体实施方式
以下描述用于揭露本发明以使本领域技术人员能够实现本发明。以下描述中的优选实施例只作为举例,本领域技术人员可以想到其他显而易见的变型。
如图1所示的一种融合FP-growth算法和Slope One算法的混合推荐模型,通过以下步骤实现:
1)输入推荐参数:数据集和最小支持度;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于贵州师范学院,未经贵州师范学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711004573.1/2.html,转载请声明来源钻瓜专利网。