Big Data是近年来IT行业里最受欢迎的名词之一,在国内被直译为“大数据”,于2008年9月,在《自然》(Nature)杂志专刊发表的《Big data:The next Google》文章中被首次提出。在瞬息万变的大数据背景下,面对快速发展的互联网时代,如何在海...
详细信息
Big Data是近年来IT行业里最受欢迎的名词之一,在国内被直译为“大数据”,于2008年9月,在《自然》(Nature)杂志专刊发表的《Big data:The next Google》文章中被首次提出。在瞬息万变的大数据背景下,面对快速发展的互联网时代,如何在海量且杂乱的数据中高效且精准的找到有“价值”的信息已经成为一个亟需解决的问题。
推荐系统是处理大数据并从中获取有“价值”信息的重要工具之一,其可以将用户与数据联系起来,利用相关算法将有“价值”的信息推荐给用户,也正是因为其拥有此特性,使之在新闻、社交领域和电子商务领域得到迅速发展并被广泛应用。spark作为当今主流的推荐系统计算平台,受到广大学者的一致好评,其使用RDD(弹性分布式数据集),使得数据在内存中进行高速计算,从而达到缩短推荐时间,提高推荐准确率的效果。
本文首先介绍了推荐系统与spark的相关背景,并详细探讨了大数据处理相关技术,包括分布式计算框架spark、spark的运行机制、分布式文件系统HDFS,以及推荐系统中的主流算法。接下来,应用大数据相关技术,本文研究并设计了一个基于用户评分数据的并行化推荐系统,并详细论述了其架构和实现方法。以电影推荐为例,用户评分数据为用户对已观看过的电影评分,数据集呈现为稀疏矩阵,其很方便创建数学模型,进行分解计算。本文的具体研究工作如下:
1)深入研究了常见的推荐算法,尤其是基于模型的协同过滤算法,并阐述了为何使用矩阵分解方法中的交替最小二乘法(Alternating Least Squares,简称ALS)来进行电影推荐。
2)设计并实现了基于Scala编程的并行化推荐算法、推荐引擎模块、数据存储模块及用户交互模块。
3)使用Movielens全部5种版本数据集,进行了充分的测试,通过对实验结果的分析,得到了各个参数对推荐准确率的影响,从而优化推荐系统。
暂无评论