基于矩阵分解的协同过滤算法的并行化研究与实现

被引量 : 9次 | 上传用户:sam2009009
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着大数据时代的来临,用户面对互联网上庞杂的信息会显得茫然失措,推荐系统能够智能的找到用户的兴趣和需求,及时的将用户想要的信息以某种方式告知用户,因此有着很大的商业价值和研究空间。协同过滤推荐算法是一种广泛应用的推荐技术,基于矩阵分解的协同过滤算法是近几年提出的一种高效的协同过滤推荐技术,基于ALS(最小二乘法)的协同过滤算法就是一种通过矩阵分解技术进行推荐的算法,在实际推荐系统应用开发中经常用到。基于ALS的协同过滤算法本身有些特点,其每项预测评分的计算都要综合大量评分数据,同时在计算时还需要存储庞大的特征矩阵,如果在单一结点上运行将会遇到计算时间和计算资源的瓶颈。对于一个推荐系统,如果无法及时的适应用户兴趣和需求的变化,用户就不会满意,所以目前对该算法的研究主要集中在如何将其在分布式计算平台上进行有效地实现以加快计算速度。目前研究和应用开发都使用较多的一种分布式计算和存储平台是Hadoop,只需要将计算任务以一系列MapReduce作业的形式提交,Hadoop平台就能自动的将该作业进行分布式计算。通过对现有的基于ALS的协同过滤算法在Hadoop上并行化实现的原理和特点进行深入的研究,我们得到了传统的迭代式算法在Hadoop上的实现运算效率不高的原因,主要有静态数据重复传输、作业重复创建、无法判断迭代终止条件等的问题。通过对这些问题出现的原因进行分析,以及借鉴了HaLoop的迭代式计算的思想,我们提出了迭代式MapReduce实现方式。迭代式MapReduce实现方式主要包括循环感知任务调度算法、缓存静态数据、任务循环控制、迭代终止条件检测等方法。通过在两个公开数据集上的实验表明,迭代式MapReduce实现方式提高了基于ALS的协同过滤算法的并行化计算的效率,并且数据集越大,效率提高的越多。同时本文提出的迭代式MapReduce思想也能应用于其它迭代式数据挖掘算法的并行化实现,也能有计算效率的提高。
其他文献
在传统现实主义批评的基础上,从情节简单化、内心独白、自由联想、蒙太奇等方面对塞林格的经典之作《麦田里的守望者》中的意识流手法进行分析,旨在表现主人公霍尔顿灵魂的真
在市场经济背景下,企业生存和发展的外部环境始终处于变化之中,使得企业在市场竞争中时刻面临着各种经营风险。在这些风险之中,企业财务危机是一种全局性的危机,如果预防和化
毛泽东关于权力制约监督提出了一系列理论,主要包括通过人民群众、民主党派制约监督权力,构建民主集中制这种有效的制约监督机制。在实践中建立了政治协商制度,党和政府的监
近年来我国房地产新政层出不穷,房地产进入明显的调整阶段,A房地产项目正是在这样的政策环境下推出的一个项目。如何在这样的背景下,通过制定有效的营销策略将房地产产品推向
2013年以来,各高校深入开展了"中国梦"主题教育活动,培养学生的历史使命感和社会责任感,深化理想信念教育。本文在调查北京某学院"中国梦"宣传教育活动实效基础上,就"中国梦"
珠海古时隶属香山,以现存六种《香山县志》中的舆图为基础,从美学视角探求珠海(香山)古舆图之美。在具体阐述方面,首先对舆图本身的内涵本质予以分析梳理,将其定位在空间示意
俗语在汉语中不仅数量多,而且使用面广,是广大人民群众喜闻乐见的一种语言形式,它早在先秦时期就已出现。镇雄有着悠久的历史,具有丰富的文化遗产,这些丰富多彩的地方文化蕴涵在浩
考虑微网中各类分布式电源的特性,利用多能互补,优化微网并网外特性。针对微网的各种典型运行模式,基于传统的微网控制模式,结合交直流微网结构特性,综合分析改进,在不同运行
语言随着社会的发展而发展,这样语言间经常相互影响、互相接触、互相借用、互相替换的现象,本文将对此做以分析。
商业银行的特殊性在于其对货币的经营,信贷风险是其基本特性,因此全球的商业银行都在努力寻求规避该风险的方法。对国内商业银行来说,信贷业务收入占总收入的比例高达65%强,因此