- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Hadoop协同过滤并行化研究
基于Hadoop协同过滤并行化研究
摘 要: 针对协同过滤(CF)推荐技术处理大数据时的计算效率问题,分析了CF算法的并行化。并行化CF算法采用Hadoop平台的MapReduce并行编程模型,改善大数据环境下CF算法在单机运行时的计算性能。在实验部分,设计不同集群环境下的加速比实验,验证该算法在大数据环境中具有的计算性能。
关键词: 协同过滤; 计算效率; 加速比; Hadoop; 大数据
中图分类号:TP391 文献标志码:A 文章编号:1006-8228(2016)05-30-04
Abstract: For the computational efficiency problem existing in big data processing with collaborative filtering (CF) recommendation, parallel computing of CF is analyzed. Parallelized CF algorithm uses MapReduce parallel programming model on Hadoop platform, which improves the computational efficiency of single PC to process big data. In the experiment section, the speedup experiments in different cluster environments are designed to verify the better computing performance of the algorithm in big data processing.
Key words: collaborative filtering; computational efficiency; speedup; Hadoop; Big data
0 引言
互联网时代,网络资源纷杂,信息过载,个性化推荐成为缓解用户在网络中的信息迷茫问题的重要途径[1]。在多项目、多领域的推荐中,因不依赖用户或项目内容,具有较好通用性的协同过滤算法[2]成为较成功的推荐技术,因而其改进也受到广泛关注。然而改进的算法通常是以牺牲计算效率换取计算准确度的提升。随着大数据时代的来临[3-7],解决计算效率的问题也迫在眉睫。由于单机模式的计算能力有限,而分布式计算具有多资源、可扩展、高效计算等优势,用分布式计算实现高效的CF算法,既能提高推荐准确度,又能保证计算效率。目前主要使用云计算平台Hadoop实现算法的并行化,如文献[8-13]等是通过将算法移植至Hadoop得到高计算性能的算法。
本文将协同过滤推荐算法与开源分布式平台Hadoop结合,研究协同过滤推荐算法的并行化,探索其MapReduce过程设计,比较单节点计算与多节点计算在计算效率上的差别,证明并行化后的算法在计算效率上的优势,其更能适应大数据环境。我们将并行化的CF算法简称为PCF(CF in Parallel)。
1 CF算法及Hadoop平台概述
1.1 CF算法概述
协同过滤技术的思想简单易懂,利用群体的观点为个人进行推荐,比如,日常生活中我们经常会参照身边朋友的意见或行为,购买一些商品或作出某种选择。在协同过滤技术中,用户之间是有联系的,他们可以是朋友、邻居,根据趣味相投原则,邻居用户的喜好是一致或相近的,所以,对于当前用户为其推荐邻居的偏好项目。CF技术通过所有用户的偏好、评分信息,经过用户相似度的度量,找到特定用户的邻居集合,根据最近邻的兴趣信息,为其作出项目推荐。
协同过滤推荐算法一般步骤为:构建用户-项目评分矩阵,据此计算用户或项目相似度,进而计算预测评分、取前N个预测评分高的项目产生推荐集。以user-based算法为例,具体如下[14]。
⑴ 构建评分矩阵。如表1所示。
⑵ 以用户的相似度为计算目标,寻找邻居用户。余弦相似性、修正的余弦相似性、Pearson系数相关为三种常见的相似度计算方法。
其中Pearson系数相关计算两用户的相似度sim(i,j),用户i与用户j共同评分的项目集合为Iij,用户i已作出评分的均值为。
⑴
⑶ 生成推荐。
① 计算预测值。
平均加权策略:用户i对项目c的预测评分值:
⑵
② Top-N形式的推荐集。
计算邻居集中的用户i对各项目的加权评分平均值,Top-N推荐集取前N个且不属于Ii(用户i评分的项目集合)的项。
1.2 存在问题
1.2.1 矩阵稀疏问题
原创力文档


文档评论(0)