《毕业设计论文基于Hadoop协同过滤的商品推荐设计.docx》由会员分享,可在线阅读,更多相关《毕业设计论文基于Hadoop协同过滤的商品推荐设计.docx(54页珍藏版)》请在第一文库网上搜索。
1、毕业设计说明书基于Hadoop协同过滤的商品推荐2017年05月17日基于Hadoop协同过滤的商品推荐摘要:目前单机推荐系统己经不能计算海量数据和存储等需求,分布式的推荐系统现在已经成为今年来的热点。基于Hadoop的电商的分布式大型推荐系统这一课题,我通过阅读大量的文献和研究,分析了国内外研究现状及面临问题。对电子商务推荐系统常见的推荐算法讨论,还有本文还对Hadoop平台的两大核心技术HDFS和MapReduce的工作流程和原理进行了介绍。对于电子商务传统推荐系统存在的很多问题,我论文基于Hadoop的电商推荐系统,系统有Hadoop的优点能具备良好的可扩展性伸缩性,可以方便快捷的对系统
2、的计算能力和存储能力调大调小根据业务需求进行调整。对数据预处理、基于物品的协同过滤推荐算发还有混合推荐算法的相似性计算等算法设计,使之完美的运行在HadOOP平台上,实现分布式的推荐计算。关键词:电子商务;推荐系统;协同过滤;HadoopProductrecommendationbasedonHadoopco11aborativefi1teringAbstract:Atpresent,thesing1erecommendationsystemhasnotbeenab1etoca1cu1atethemassdataandstoragerequirements,andthedistributedr
3、ecommendationsystemhasbecomeahottopicthisyear.Hadoop-basede-commercerecommendationsystemofthissubject,byreadinga1otof1iterature,ana1ysisThestatusquoandprob1emsathomeandabroad.Thispapera1sointroducestheworkf1owandprincip1esofHDFSandMapReduce,thetwocoretechno1ogiesofHadoopp1atform,whicharethecommonrec
4、ommendationa1gorithmsforE-commercerecommendationsystem.Fortheexistingprob1emsoftraditiona1e-commercerecommendationsystem,wedesignedHadoop-basede-commercerecommendationsystem,thesystemhasgoodsca1abi1ityandsca1abi1ity,youcaneasi1yca1cu1atethesystemandstoragecapacityaccordingtobusinessneedstoadjust.The
5、datapreprocessing,basedontheco11aborativefi1teringofitems,isa1sobasedonthesimi1arityca1cu1ationofthehybridrecommendationa1gorithm,sothatitcanrunperfect1yontheHadoopp1atformtorea1izethedistributedrecommendationca1cu1ationKeyWords:e-commerce;recommendationsystem;co11aborativefi1tering;Hadoop摘要IAbstrac
6、tII1绪论11I研究背景与意义11.1.1信息过载与个性化服务11.2现阶段关于推荐系统的现状21. 3论文的主要工作及结构安排42. Hadoop简介52.1Hadoop简介52.2Hadoop生态简介52.3详细介绍HDFS和MapReduce62 .3.1HDFS63 .3.2MapReduce74 .商品推荐系统的设计85 .具体的算法实现和效果101.1 1数据切分101.2 用户向量114.4 用户矩阵乘以共现矩阵124.5 按商品ID做累加134.6 除去用户已经购买过商品134.7 验证135.实验151 .1数据集的介绍155 .2实验平台简介15附录A17附录B20附录C
7、23附录D26附录E28附录F33参考文献501绪论11研究背景与意义1.1.1信息过载与个性化服务随着计算机和互联网技术的快速发展,互联网上信息和用户的数量呈指数增长,全世界各地的用户提供了越来越丰富的资源,海量信息给用户带来更多选择的同时,也使的用户难以及时地吸收、消化和使用信息,还有是信息的广泛性,也容易使用户常常容易迷失航向,没有办法快速准确地找到特定的信息,形成了“信息过载(InfOnnatiOnOver1oad),和“信息迷失(Infonnation1ost),的现象。在互联网技术日益发达的今天,使越来越多的用户喜欢上网冲浪,在线购物。我们在享受其给我们带来便利的同时也面临着它给我
8、们带来的困扰,随着电子商务网站日益扩大,商品的数量不断增加,种类也是多种多样。在海量商品中找到对自己要用的商品变得越来越困难,用户在选购商品时,要花费大量的时间和精力在众多商品中进行比较和挑选。这样,降低了用户的体验,随着网站的访问量跟着降低,商品的销售量自然而然受到影响。信息的过载的问题:海量的信息共同一时间呈现的话会超过了单个人亦或者整个系统所能接受的信息的处理范围,使的信息使用率降低。当然信息爆炸现象也不是第一次进入们的一举一动,成为信息的生产者,现阶段分享交流的平台蓬勃发展,随时随地使得大量的信息的传播与接收。中文互联网数据研究资讯中心的一份统计显示,每天数以亿计的网络信息被产生、被分
9、享、被接收,其中只有20%的搜索结果可靠而有用,94%的人感觉“信息过载”。面对信息过载问题,解决办法有很多种,传统的解决方窠有分类目录和搜索引擎两种方案。分类目录就是商品做了分门别类,方便用户在查找的时候可以根据类别查找商品。国内很多家电商网站传统上都是这样做的,但是随着商品规模的不断增加,分类目录只能覆盖一部分商品,一部分商品不好进行分类,也是可以很难满足大家常用的需求,第二种是搜索引擎,搜索引擎可以根据用户提供的关键词来找到人们需要的商品,现阶段电商网站这块也是做的特别好,但是当用户无法准确的找出来描述商品的关键词的时候,这就暴露搜索引擎的缺点。然而推荐系统则正好可以弥补搜索引擎的这个缺
10、陷,推荐系统则不需要用户有明确的要求,推荐系统是根据用户的历史行为而进行建模,然后主动给用户推荐可能满足用户兴趣和需求的商品。在如今的大数据和互联网的时代,现有的电子商务网站中的推荐系统面临着极大的考验。尤其是进入移动互联网的时代,用户随时随地的很方便的网上购物,用户的每个行为都是信息,电商网站的用户、商品数量快速增长。指数增长的用户和数据量对电商,传统的数据存储和计算速度是个挑战。传统的单个机器下的推荐算法现在基本不能满足电商需求,所以需要研究分布式的推荐算法系统,Hadoop是一个分布式并行计算框架,它可以满足分布式的存储功能和并行计算功能,并且HadOOP具有良好的可扩展性,所需要的服务
11、器的性能也要求不是很高,一般的普通商用服务器就可以满足具体要求我将会早下章节中介绍。1.2现阶段关于推荐系统的现状推荐系统己经在很多领域取得了成功,是一个比较成熟的技术算法,最典型的是电子商务领域的亚马逊,亚马逊在很早以前就将推荐系统运用于自己的电商网站上。包括现在很多教课书上的举例子都是在用亚马逊来做示例,我们在亚马逊搜索“MahoutinAction这本书,我们会看到两个推荐区域,图IT上面一个区域是向用户推荐通常和“MahoutinAction这本书一起买的其他书,这里运用的是基于关联规则的推荐算法。图1.2下面一个区域是向用户推荐买了MahoutinAction这本书的人也会买的其他书
12、,这里运用的是基于物品的协同过滤推荐算法。据亚马逊前科学家Greg1ir1den介绍,亚马逊至少有35%的销售额来自于推荐系统。亚马逊CEOJeffBeZOS曾经说过亚马逊,亚马逊相对于其他电子网购网站最大的优势是推荐系统。推荐系统也在世界上最大的在线电影租赁公司Netf1ix取得了很大的成功,有75%是通过推荐系统成功推销给用户Netf1ix公司也非常重视推荐系统,公司自2006年起每年都会举办Netf1ixPriZe推荐系统比赛。比赛会给将公司推荐算法的预测准确度提升10%的队伍奖励100万美元。虽然电子商务推荐系统经过十几年的发展,在国内外学术界和工业界都已经有了很多的成果,但是将推荐系
13、统与Hadoop平台相结合研究分布式的处于起步阶段。相对成熟的是ApacheMahout里面包含有基于Hadoop的推荐系统的算法,但是相对来说比较不灵活,不能适合应用于复杂的生产环境中,还有是Hadoop的不合适多轮的迭代,Apachespark解决了这类问题,ApacheSpark;里面包含了MaChin1earning的包,补全了HadoOP迭代慢的缺陷,但是这些研究都只是针对特定的场景,现实生产的环境,还需要重新开发。经常一起购买的商品本商品:MahoUt实战-(SeanOwen)平装68.80,机器学习实战-哈林顿(PeterHarrington)三装54.50图1.1购买此商品的顾
14、客也同时购买Hive二机器学习实故哈林领(Pete./129程54.50。EeI“,eMahOUt法解析与案例实哉AMM*M1aMMHiVe霾程指南卡普廖吉(Edw.16葆54.50SWmeMahOUtM法解帆与案例实战要哲50.10WrifneSPar顺速大到席分忻闺卡芳闺.“1846.60rime图1.21.3论文的主要工作及结构安排本文是对电商中对常见的推荐算法分析,侧重点为研究协同过滤算法,并且对各个算法进行了比较,有电子商务推荐系统面临的计算效率、可扩展性、灵活性等问题,本文先对Hadoop平台的两大核心技术HDFS分布式文件系统和MapReduce并行计算框架的原理和使用进行了分析
15、,并且在此基础上设计了基于HadooP的电子商务推荐系统,推荐算法运行在HadOoP平台上。本文的章节安排如下:第一章:绪论。研究背景与意义。信息过载与个性化服务现阶段关于推荐系统的现状论文的主要工作及结构安排第二章:APaCheHadoop平台,此章节对Hadoop生态简单描述,HDFS分布式文件系统MapReduce并行计算框架运行流程进行了较为详细的分析。第三章:HadOoP的电商的推荐系统设计。基于Hadoop大型分布式大处理处理系统实现分析并设计合适的Map方案和Reduce方案来实现了协同过滤推荐算法并行化。第四章:基于Hadoop推荐系统算法具体实现。具体是Hadoop平台上运行分布式推荐算法,本论文主要介绍ItemCF算法。第五章:实验。用HadooP平台的电商推荐系统进行了实验,包括对实验的环境简单介绍、数据集采集、进行描写。最后对实验结果进行了分析。2.Hadoop简介2.1Hadoop简介APaChe的HadOoP项目是可靠的、可扩展的开发开源软件,分布式计算框架mOHadoop是一个大数据框架,它允许大型数据集在使用简单的编程模型后在计算机集群上做分布式处理。它的目的是从单一的服务器扩展到成千上万的机器,每个提供本地计算和存储。而不是依靠硬件来提供高可用性