论文部分内容阅读
电子商务使我们的生活变得便捷,它迅速发展的同时也产生了大量的数据,如何帮助用户在海量的数据中快速高效地找到有价值的内容便成了一个重要的问题。目前,搜索引擎和信息分类网站都在一定程度上解决了海量数据的搜索问题,但是,这两者是需要用户通过输入关键字或者提供其他相关信息去查找,才能获取到需要的信息。相比之下,推荐系统的出现则更加的主动和智能化,从而在电商网站中起到了越来越重要的作用。它能以相当快的速度在海量数据中进行检索,不需要用户输入关键字等提示信息,主动的向顾客推荐有用的商品,它的智能化方便顾客的同时也为商家提供了很大的帮助。支撑推荐系统正常运行的推荐算法有很多,协同过滤算法是其中运用最广泛的推荐算法。然而,随着电子商务中用户数量和商品数量的高速增长,协同过滤推荐算法也面临新的挑战,比如数据稀疏性问题、可扩展性问题等等。针对这些问题,本课题对协同过滤推荐算法进行了全面深入的研究,并阐述了通过组合推荐算法来解决数据稀疏性问题,进而完成推荐工作。同时,考虑到受单机性能的限制,当面对需要处理海量数据时,必然会对推荐结果的准确性和效率造成严重影响。因此,采用将协同过滤推荐算法迁移部署到Hadoop平台中,对数据进行分布式处理,提高算法的运行效率,解决算法的可扩展性问题,最终达到增加商品销售量的目的。本文主要的研究工作如下:1)对于常用的几种推荐算法进行深入研究分析,全面了解各个算法的优点和缺点,重点研究了协同过滤推荐算法。2)运用组合推荐算法完成数据填充和结果推荐。该组合算法是将K均值聚类算法、Slope One加权改进算法和协同过滤算法(CF)相结合,以此来实现推荐。K均值聚类算法和Slope One加权改进算法用来解决数据稀疏性问题,协同过滤算法(CF)用来在数据相对完整的基础上实现最终的推荐。3)对协同过滤推荐算法进行改进,使其能够适应MapReduce编程模型,进而达到对数据进行分布式处理的目的,以此来解决算法存在的可扩展性问题。4)对单个推荐算法和组合推荐算法进行评测。本课题运用MovieLens数据集中的数据,通过实验,从各个算法的准确率、召回率和反应时间的角度对算法进行了评测,并对实验结果进行分析。