首页 > 范文大全 > 正文

基于灰色关联分析的分布式协同过滤推荐算法

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于灰色关联分析的分布式协同过滤推荐算法范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要:针对原始的基于用户(Userbased)或基于评分项目(Itembased)的协同过滤推荐算法(CFR)大多采用“硬分类”式聚类,且具有数据稀疏性和可扩展性的问题,提出一种基于灰色关联分析分布式协同过滤推荐算法。算法使用Hadoop分布式计算平台,首先,计算评分矩阵中每个评分项目的灰色关系系数;然后,计算各评分项目的灰色关联度(GRG);最后,根据GRG获得每个评分项目的近邻集合,对不同用户的待预测项目用对应的近邻集合对其评分进行预测。通过在MovieLens数据集上进行实验,与Userbased和Itembased的CFR算法相比,该算法平均绝对误差分别下降了1.07%和0.06%,而且随着数据规模的扩展,通过增加集群节点,算法运行效率有相应的提升。实验结果表明,该推荐算法可以有效地实现大规模数据的推荐,并能解决数据可扩展性的问题。

关键词:灰色系统;灰色关联度;协同过滤推荐算法;分布式系统;Hadoop

中图分类号:TP301.6 文献标志码:A

0引言

进入21世纪,随着互联网信息技术的高速发展,人们获取信息的方式已悄然改变。然而,互联网信息以及用户规模的急速膨胀,使得信息泛滥、信息过载的问题日益严重。推荐算法的出现则构建了一条产品、信息与用户之间的有效通道。其中,Goldberg等[1]提出的协同过滤推荐(Collaborative Filtering Recommendation, CFR)算法是应用最为广泛和成功的一类算法。

CFR算法根据采用近邻对象的不同,分为以下三种:基于用户(Userbased)、基于评分项目(Itembased)和基于模型的(Modelbased)的协同过滤。多数协同过滤推荐算法主要是通过计算用户未评分项目的预测评分,并将此作为依据,向用户进行推荐[2]。

但协同过滤推荐算法存在着数据稀疏性、冷启动和可扩展性等缺陷[3]。迄今,许多学者采用各种方法致力于提高该推荐算法的性能。Patil等[4]通过研究信任度来提高推荐质量,利用相似度与信任度的权重找出该用户的近邻形成最终协同过滤推荐;Zhao等[5]提出基于用户的Hadoop协同过滤算法;赵宏霞等[6]采用因子分析的方法,降低数据的维度,在最大限度保留信息的前提下,对CFR算法中的数据量大和数据稀疏性提出了改进;范波等[7]提出了一种用户间多相似度的协同过滤算法,基于用户之间对不同项目类型的多个评分相似度来计算用户对未评分项目的预测评分。

在协同过滤推荐算法中,不论是Userbased还是Itembased,往往以用户间的相似性,或者项目产品间的相似性计算为核心来预测未评分值,因此,用户或项目间相似性计算的准确与否会影响推荐算法质量的高低。许多学者提出的聚类解决方法是基于距离的思想,对用户(或项目)进行分类,这些算法分类多属于“硬分类”,而且针对现今数据量暴增的情况,随着评分数据规模的急剧膨胀,计算量是制约系统的算法执行效率与推荐效果的主要瓶颈。

故本文提出基于灰色关联分析(gray association analysis)的分布式协同过滤推荐算法。对于用户项目评分矩阵,因用户评分项目间的信息因素不完全性和不确定性,造成无法看清项目间的相关程度,为准确得到未知预测评分,引入灰色关联分析的概念,考察项目相互之间的关联度,再由此根据用户评分矩阵,预测出用户所有项目的评分。该算法将存在不确定性的推荐系统内的不定因素加入考虑的范畴内,相对于传统算法,减少非近邻数据的信息损失,弥补了数据的稀疏性。同时,针对Userbased和Itembased在遇到数据规模较大时出现的瓶颈,本文在实现机制上,运用分布式平台Hadoop,结合用来存储稀疏型数据的HBase数据库,实现灰色关联的协同过滤算法。

4结语

本文提出了基于灰色关联分析的分布式协同过滤推荐算法。算法首先采用灰色关联分析的方法,计算评分项目灰色关系系数,再得出评分项目的灰色关联度,然后利用评分项目的灰色关联度,选取待估计项目的近邻项目,计算出用户对该评分项目的预测评分值来进行推荐。另一方面,从实现机制上,利用分布式平台Hadoop和分布式计算框架MapReduce,以HBase作为数据库,解决推荐算法的数据可扩展性问题。

本文算法通过采用灰色关联分析的方法将存在不确定性的推荐系统内的不定因素加到考虑的范畴内,相对于传统算法,减少了非近邻数据的信息损失,弥补了数据的稀疏性。但是,优化的灰色关联分析的推荐算法并没有在此讨论,未来可以从灰色关联度的计算方法或者ρ的自适应选择等角度对该算法进行改进。同时,该算法分布式的实现,提升了算法的实用性,在应对当前大数据的浪潮,亦可以作为一种解决方法。

参考文献:

[1]

GOLDBERG D, NICHOLS D, OKI B M, et al. Using collaborative filtering to weave an information tapestry [J]. Communications of the ACM, 1992, 35(12):61-70.

[2]

杨志文, 刘波.基于Hadoop平台协同过滤推荐算法[J].计算机系统应用, 2013, 22(7):108-112.(YANG Z W, LIU B. Hadoopbased collaborative filtering recommendation algorithm [J]. Computer System & Applications, 2013, 22(7):108-112.)

[3]

SARWAR B M. Sparsity, scalability, and distribution in recommender systems [D]. Twin Cities: University of Minnesota, 2001:168.

[4]

PATIL V A, RAGHA L. Comparing performance of collaborative filtering algorithms [C]// Proceedings of the 2012 International Conference on Communication, Information & Computing Technology. Piscataway, NJ: IEEE, 2012:1-6.

[5]

ZHAO Z, SHANG M. Userbased collaborativefiltering recommendation algorithms on Hadoop [C]// WKDD 2010: Proceedings of the 3rd International Conference on Knowledge Discovery and Data Mining. Piscataway, NJ: IEEE, 2010:478-481.

[6]

赵宏霞, 王新海, 杨皎平.基于用户和项目因子分析的混合协同推荐算法[J]. 计算机应用, 2011, 31(5):1382-1390.(ZHAO H X, WANG X H, YANG J P. Mixed collaborative recommendation algorithm based on factor analysis of user and item [J]. Journal of Computer Applications, 2011, 31(5):1382-1390.)

[7]

范波, 程久军.用户间多相似度协同过滤推荐算法[J].计算机科学, 2012, 39(1):23-26.(FAN B, CHENG J J. Collaborative filtering recommendation algorithm based on users multisimilarity [J]. Computer Science, 2012, 39(1):23-26.)

[8]

PAUL R, MEOPHYTOS I, MITESH S, et al. GroupLens: An open architecture for collaborative filtering of netnews[C]// Proceedings of ACM 1994 Conference on Computer Supported Cooperative Work. New York: ACM, 1994:175-186.

[9]

BADRUL S, GEORGE K, JOSEPH K, et al. Itembased collaborative filtering recommendation algorithms[C]// Proceedings of the 10th International Conference on World Wide Web. New York: ACM, 2001:285-295.

[10]

邓聚龙.灰理论基础[M].武汉:华中科技大学出版社, 2002:2,122.(DENG J L. Basis of Grey Theory [M]. Wuhan: Huazhong University of Science & Technology Press, 2002:2,122.)

[11]

The Apache Software Foundation. The Apache Hadoop project [CP/OL]. [20150912]. http:///.

文献11和14作者是以网站作的文献,已与作者联系,

作者:由于参考文献11和14是Hadoop和HBase的主页,在该主页上 有关于相应项目的介绍和内容,故在文中采用该网站作为文献引用。

[12]

TOM W. Hadoop权威指南[M].2版.周敏奇, 王晓玲, 译.北京:清华大学出版社, 2011:15,411.(TOM W. Hadoop: the Definitive Guide[M]. 2nd ed. ZHOU M Q, WANG X L, translated. Beijing: Tsinghua University Press, 2011:15,411.)

[13]

DEAN J, GHEMAWAT S. MapReduce: simplified data processing on large clusters [C]// OSDI 2004: Proceedings of the 6th Conference on Symposium on Opearting Systems Design & Implementation. Berkeley, CA: USENIX Association, 2004, 6:10.

[14]

The Apache Software Foundation. The Apache HBase project [CP/OL]. [20150912]. http:///.

[15]

METROPOLIS N, ULAM S. The Monte Carlo method [J]. Journal of the American Statistical Association, 1953, 60(247):335-341.

[16]

ZHANG J, LIN Z, XIAO B, et al. An optimized itembased collaborative filtering recommendation algorithm[C]// ICNIDC 2009: Proceedings of the 2009 IEEE International Conference on Network Infrastructure and Digital Content. Piscataway, NJ: IEEE, 2009:414-418.

[17]

孙楠军, 刘天时.基于项目分类和用户群体兴趣的协同过滤算法[J]. 计算机工程与应用, 2015, 51(10):128-136.(SUN N J, LIU T S. Collaborative filtering based on item classification and user group interest [J]. Computer Engineering and Applications, 2015, 51(10):128-136.)

[18]

刘思峰, 党耀国, 方志耕, 等.灰色系统理论及其应用[M].北京:科学出版社, 2004.(LIU S F, DANG Y G, FANG Z G, et al. Theory and Application of Grey System [M]. Beijing: Science Press, 2004.)