基于Hadoop协同过滤的商品推荐
摘要:目前单机推荐系统己经不能计算海量数据和存储等需求,分布式的推荐系统现在已经成为今年来的热点。
基于Hadoop的电商的分布式大型推荐系统这一课题,我通过阅读大量的文献和研究,分析了国内外研究现状及面临问题。对电子商务推荐系统常见的推荐算法讨论,还有本文还对Hadoop平台的两大核心技术HDFS和MapReduce的工作流程和原理进行了介绍。对于电子商务传统推荐系统存在的很多问题,我论文基于Hadoop的电商推荐系统,系统有Hadoop的优点能具备良好的可扩展性伸缩性,可以方便快捷的对系统的计算能力和存储能力调大调小根据业务需求进行调整。对数据预处理、基于物品的协同过滤推荐算发还有混合推荐算法的相似性计算等算法设计,使之完美的运行在Hadoop平台上,实现分布式的推荐计算。
关键词:电子商务;推荐系统;协同过滤;Hadoop
Product recommendation based on Hadoop collaborative filtering
Abstract: At present, the single recommendation system has not been able to calculate the mass data and storage requirements, and the distributed recommendation system has become a hot topic this year.
Hadoop-based e-commerce recommendation system of this subject, by reading a lot of literature, analysisThe status quo and problems at home and abroad. This paper also introduces the workflow and principles of HDFS and MapReduce, the two core technologies of Hadoop platform, which are the common recommendation algorithms for E-commerce recommendation system. For the existing problems of traditional e-commerce recommendation system, we designed Hadoop-based e-commerce recommendation system, the system has good scalability and scalability, you can easily calculate the system and storage capacity according to business needs to adjust. The data preprocessing, based on the collaborative filtering of items, is also based on the similarity calculation of the hybrid recommendation algorithm, so that it can run perfectly on the Hadoop platform to realize the distributed recommendation calculation
Key Words: e-commerce; recommendation system; collaborative filtering; Hadoop
目 录
摘要 I
Abstract II
1绪论 1
1.1研究背景与意义 1
1.1.1信息过载与个性化服务 1
1.2现阶段关于推荐系统的现状 2
1.3论文的主要工作及结构安排 4
2.Hadoop简介 5
2.1 Hadoop简介 5
2.2 Hadoop生态简介 5
2.3详细介绍HDFS和MapReduce 6
2.3.1 HDFS 6
2.3.2 MapReduce 7
3.商品推荐系统的设计 8
4.具体的算法实现和效果 10
4.1数据切分 10
4.2 用户向量 11
4.3 共现矩阵 11
4.4 用户矩阵乘以共现矩阵 12
4.5 按商品ID做累加 13
4.6 除去用户已经购买过商品 13
4.7 验证 13
5.实验 15
5.1 数据集的介绍 15
5.2实验平台简介 15
附录A 17
附录B 20
附录C 23
附录D 27
附录E 30
附录F 36
参考文献 38
本文转载自:http://www.biyezuopin.vip/onews.asp?id=13475
5.1 数据集的介绍
本论文采用GroupLens小组提供的MovieLens数据集合来评测[4],该数据集是对外公开的,方便学习参考实验,网站提供了各种不同大小的数据集来供学习和研究。本次使用的是大小为1M的数据集,因为该小组推荐系统就是通过采用协同过滤推荐算法完成了电影推荐,所以,这个MovieLens数据集的可靠性很高,本数据集由,100000评级和1300标签应用到9000电影由700用户。最后更新10/2016,本数据集包含了:movies.dat ,ratings.dat和users.dat,其中ratings.dat就是用户商品评分文件,文件中依次表示的是:用户ID,商ID,用户对商品的评分,时间戳,如图5.1所示
图5.1
5.2实验平台简介
本论文是通过Hadoop平台运用HDFS分布式的方式对数据进行存储并且用MapReduce处理的,Hadoop需要多个节点部署,对于每个节点要求不高,普通的商用pc机就可以用来搭建平台了。
具体的实验软硬件环境如下:
操作系统:CentOS6.0
编程环境:Eclipse
开发语言:Java 1.8
Hadoop版本:2.6.0
数据节点:5
实验节点如下:
192.168.0.212 qs-stg-02 master
192.168.0.213 qs-stg-03
192.168.0.216 qs-stg-06
192.168.0.217 qs-stg-07
192.168.0.218 qs-stg-08
本集群的Master是192.168.0.212节点,其中运行着NmeNode和ResourceManager, 192.168.0.213节点运行着SecondNameNode,192.168.0.216、192.168.0.217、192.168.0.218是salve角色,上面运行着DataNode和NodeManager等服务,主要节点之间做了ssh免密登录。