您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 其它办公文档 > 基于Hadoop的推荐系统设计与实现
单位代码:10293密级:公开专业学位硕士论文论文题目:基于Hadoop的推荐系统设计与实现1213042923房旋宫婧工程硕士申请全日制申请计算机技术2016.2学号姓名导师专业学位类别类型专业(领域)论文提交日期DesignandImplementationofRecommendationSystemBasedonHadoopThesisSubmittedtoNanjingUniversityofPostsandTelecommunicationsfortheDegreeofMasterofEngineeringByFangXuanSupervisor:Prof.GongJingFebruary2016南京邮电大学学位论文原创性声明本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得南京邮电大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。本人学位论文及涉及相关资料若有不实,愿意承担一切相关的法律责任。南京邮电大学学位论文使用授权声明本人授权南京邮电大学可以保留并向国家有关部门或机构送交论文的复印件和电子文档;允许论文被查阅和借阅;可以将学位论文的全部或部分内容编入有关数据库进行检索;可以采用影印、缩印或扫描等复制手段保存、汇编本学位论文。本文电子文档的内容和纸质论文的内容相一致。论文的公布(包括刊登)授权南京邮电大学研究生院办理。涉密学位论文在解密后适用本授权书。研究生签名:_____________日期:____________研究生签名:____________导师签名:____________日期:_____________I摘要现在手机上各式各样的软件,每天都在推送着海量的信息,但是信息的质量良莠不齐。如何使用户既能获取到需要的信息,又能避免被信息轰炸所困扰,是推荐系统需要解决的问题。随着数据量的爆炸式增长,传统的推荐系统已经无法满足要求。基于云计算平台的推荐系统能够处理更大的数据量,运行更复杂的推荐算法,当然也能够提供更加强大的推荐服务。本文提出了基于Hadoop的并行化推荐算法H-ICSR(ItemClusteringBasedSocialRecommendationAlgorithmonHadoop)。H-ICSR采用社会化推荐的思想,利用历史评分数据和社交数据产生推荐结果。它使用推荐对象的文本属性资料对推荐对象进行聚类,划分为若干个项目类别;根据用户历史评分,计算用户对不同类别的项目的喜好程度;利用推荐对象的互动数据和历史评分数据建立项目推荐度模型;将用户对项目类别的喜好程度和项目的推荐度结合,预测用户对未知项目的评分,按照预测评分排序,为用户推荐评分最高的项目。对H-ICSR算法做了并行化设计。并行化设计是基于Hadoop平台的,使用MapReduce分布式计算模型来设计算法程序,将算法分为4个Job,每个Job由若干个MapReduce计算过程组成,这4个Job之间或并行或串行,由JobControl来控制。算法的输入数据、中间结果和输出数据使用HDFS分布文件系统存储。通过实验证明了H-ICSR算法在冷启动和数据稀疏时比其他算法有更好的性能。基于H-ICSR算法实现了系统推荐模块,将推荐模块分为源数据采集层、数据预处理层、推荐生成层和用户接入层。关系型数据库和HDFS之间的数据传输交给源数据采集层,大量的基础计算和建模交给数据预处理层,个性化列表生成交给推荐生成层,推荐结果展示和反馈交给用户接入层。以推荐模块为核心实现了基于Hadoop平台的推荐系统。系统分为Android客户端、Web服务器和Hadoop集群三部分。Android客户端实现和用户的交互,Web服务器实时响应客户端的业务请求,Hadoop集群离线运行H-ICSR推荐算法。对原型系统进行了功能性测试,结果表明该系统具备了较完善的功能,能为用户提供个性化的推荐。关键词:社会化推荐,推荐系统,聚类,并行计算IIAbstractToday'ssmartphoneshaveallkindsofsoftware,whichpushvastamountsofinformationtouseveryday.Notalloftheinformationhashighquality.Howtheusercanaccesstotheneededinformation,andcanavoidbeingtroubledwiththerest,istheproblemthatrecommendationsystemshouldsolve.Withtheexplosionofdatavolumes,traditionalrecommendationsystemshavebeenunabletomeettherequirements.Recommendationsystembasedoncloudcomputingplatformiscapableofhandlingagreateramountofdata,runningmorecomplexrecommendationalgorithm,and,ofcourse,providingmoreefficientrecommendationservice.ThispaperpresentsanewparallelizationrecommendationalgorithmbasedonHadoop,whichiscalledH-ICSR(ItemClusteringBasedSocialRecommendationAlgorithmonHadoop).Itprovidesrecommendationsbyadoptingtheideaofsocialrecommendation,usinghistoryratingsandsocialdatatoproduceresults.H-ICSRclustertheitemsbyattributedataatfirst,dividingthemintoseveralcategories.Secondly,calculatingthepreferencesofcertainuserfordifferentcategoriesthroughratingdata.Next,amodelbasedoninteractiondataandratingsissetuptocalculatetherecommendationscoreofitem.Finally,predictingauser’sratingsforunknownitemsthroughcombiningtheuserpreferencesforacategorywiththerecommendationscoresoftheitemsinthecategory.Auser’srecommendationlistisgeneratedbysortingthecandidateitemsbypredictedscoresindescendingorder.AdistributedimplementationofH-ICSRismadeonHadoop,soH-ICSRisabletorunonHadoopclusters,makingfulluseofcomputingresources.TheapplicationisprogrammedinMapReduceframework,andtheresultsisstoredinHDFS.Weuse4jobswhicharecontrolledbyJobControlinH-ICSR.ExperimentsshowthatH-ICSRalgorithmhasbetterperformancethanotheralgorithmswhenencounteringacold-startproblemordatasparseproblem.H-ICSRconstitutesthecoremoduleofrecommendationsystem,whichisdividedinto4layers:TheSourceDataAcquisitionLayer(SDAL),TheDataPretreatmentLayer(DPL),TheRecommendationsGeneratorLayer(RGL)andTheUserAccessLayer(UAL).ThetransmissionofdatabetweenrelationaldatabaseandHDFSisinSDAL,andalargenumberofcomputationandmodelingisinDPL.RGLisresponsibleforgeneratingpersonalizedrecommendationlist.InUAL,recommendationsareshownandusers’feedbackisrecorded.Weintegratetherecommendermoduleintoexistingprojects,andimplementaprototypeoftheIIIrecommendationsystemonhadoop.Thesystemiscomposedofthreeparts:theandroidclient,thewebserverandthehadoopcluster.Theandroidclientinteractswithusers,thewebserverresponsestherequestfromclientatreal-timeandthehadoopclusterrunsH–ICSRoffline.Thissystemcanprovideuserswithpersonalizedrecommendationsthroughandroiddevices.Attheendofthispaper,afunctionaltestontheprototypesystemisdescribedindetail.Resultsshowthatthesystemstrongenoughandcanprovideuserswithpersonalizedrecommendation.Keywords:socialrecommendation,recommendationsystem,clustering,parallelcomputingIV目录第一章绪论.............................................................................................................................................................1课题背景及意义........................................................................................................................................1论文来源与组织结构................................................................................................................................2第二章相关技术研究...................................................................
本文标题:基于Hadoop的推荐系统设计与实现
链接地址:https://www.777doc.com/doc-5247674 .html