基于hadoop平台的电影推荐系统研究与实现毕业论文
2021-08-24 22:59:16
摘 要
因为互联网时代的到来,人类的生活变得越来越依靠于信息的交流。在互联网时代,人们能够在网上购买各种商品,完成各种信息交流,因此,人们的生活越来越依赖于从互联网上去查获自己所需要的信息。然而,随着各种数据的快速增长,人们在面对这海量的信息的时候就会难以找到自己所需要的东西,从海量数据中提取有用信息也变得越来越重要,而推荐系统便是对于这个问题一个比较好的解决方案。可是,对于一般中小型企业,他们使用的推荐系统都是基于单机模式的简单关联的算法,效果一般而且无法处理海量数据。因此,为了扩展推荐系统的应用需求,本文从实际出发,实现了一种适用于中小型企业的快速搭建基于Hadoop的分布式推荐平台的方法。
本文以电影推荐系统为例,首先介绍了Hadoop的两大核心内容HDFS和MapReduce,分别是介绍HDFS的工作流程和整体结构,介绍MapReduce作业运行的工作原理,并对MapReduce的Map过程和Reduce过程进行说明。接着简要的介绍了一些常用的推荐算法,在这之后设计实现两种协同过滤推荐算法并对其进行分析比较,最好选择合适于电影推荐系统的算法,在Hadoop平台上进行改进,分析比较Hadoop平台下电影推荐系统推荐过程的响应时间与传统单机模式下的响应时间,最好证明了Hadoop平台下的电影推荐系统比之传统模式的推荐系统具有一定的高效性。
关键词:Hadoop;HDFS;MapReduce;推荐系统
Absrtct
With the development of Internet technology, human has entered the era of information explosion. In the era of Internet, people can buy all kinds of goods on the Internet, complete all kinds of business activities, therefore, the activities of the people are increasingly dependent on access to information from the network. However, with the rapid growth of data, people in the face of this massive the information will be difficult to find what they need to extract useful information has become more and more important from the massive data, and the recommendation system is to solve this problem a better solution. However, the recommendation system using small and medium sized enterprises are the simple correlation algorithm based on single machine mode, effect general and cannot handle large amounts of data. Therefore, in order to expand the application requirements of recommendation system, this paper implements a suitable for small and medium-sized enterprise fast A method of building a distributed recommendation platform based on Hadoop is proposed.
The movie recommendation system as an example. Firstly, the paper introduces the Hadoop core content of HDFS and MapReduce, from the two aspects of analysis of the overall architecture of Hadoop, the operation mechanism and the principles of programming. Then on Recommender Systems and recommendation algorithm were briefly analysis, to collaborative filtering algorithm are introduced in detail, analysis to compare the difference, choose appropriate in a movie recommender system algorithms, on the Hadoop platform is improved.
In the Hadoop platform to achieve the improvement of the film recommendation system and system testing, the results of the experimental data to verify the effectiveness of the traditional stand-alone environment compared with the improvement of the program.
Key words:Hadoop;HDFS;MapReduce;Recommendation system
目 录
摘 要 I
Absrtct II
第1章 绪论 1
1.1 研究的目的及意义 1
1.2 国内外研究现状 1
1.3 论文内容安排 2
第2章 推荐系统相关原理和技术 3
2.1 Hadoop的相关技术 3
2.1.1 分布式文件系统HDFS 3
2.1.2 分布式处理框架MapReduce 4
2.2 推荐算法介绍 5
2.2.1 基于内容的推荐算法 5
2.2.2 基于知识的推荐算法 6
2.2.3 协同过滤推荐算法 7
第3章 传统单机模式下协同过滤算法的分析和实现 9
3.1 基于用户的协同过滤推荐算法 9
3.1.1 构建用户-项目评分矩阵 10
3.1.2 相似度计算 11
3.1.3 计算最相邻用户 13
3.1.4 产生推荐结果 14
3.2 基于项目的协同过滤推荐算法 16
3.3 两种算法分析比较 17
3.3.1 评测指标 17
3.3.2 实验测试 18
3.3.3 综合比较 19
第4章 基于Hadoop平台的电影推荐系统实现 21
4.1 传统模式下推荐系统存在的问题 21
4.2 算法设计 21
4.3 算法实现 22
4.3.1 获取评分矩阵 22
4.3.2 获取共生矩阵 22
4.3.3 产生推荐 23
4.4 系统实现 24
4.4.1 系统环境搭建 24
4.4.2 实验结果分析 27
第5章 总结与展望 29
5.1 总结 29
5.2 展望 29
参考文献 30
致谢 31
第1章 绪论
本章主要介绍研究基于Hadoop平台的推荐系统的目的及意义,并围绕推荐系统,分析国内外的研究现状,最后阐述了本文的内容安排。
1.1 研究的目的及意义
进入互联网时代后,人类的生活对信息交流的依赖程度越来越大。在这个时代,互联网正逐步地影响着我们的生活方式。随着网络在我们日常生活的普及,现在上网对于我们而言已经不再需要太多的成本,并且我们在网络上所花的时间也变多了,这样人们在寻找一些自己所想要的东西的时候,他们所面对的信息量可能会超出他们的处理能力范围,又或者想要在这大量的信息里判断哪一些是自己所需要的也需要花费上大量的时间,这便是所谓的信息过载。毕竟人类的记忆力和处理信息的能力是有限的,在这样的情况下,无论是在海量的信息中寻找自己需要的信息,抑或者是让自己发布的信息能在这茫茫的信息中崭露头角,令人一眼相中,都是一个令人头疼的问题。
信息过载问题出现后,许多人便开始去探索解决这一问题的方法,在众多的方法里较为突出的便是搜索引擎。然而,这个方法并不能很好的满足用户需求。我们知道,搜索引擎是根据用户输入的关键字为用户过滤信息,当大家输入的关键字一样时,那么系统反馈给我们的信息也是一样的,这样的搜索结果并不能满足不同用户的不同需求,也就是说搜索引擎并不能满足用户的个性化需求,当然也就没能很好的处理信息过载问题。