论文部分内容阅读
在当今时代互联网的飞速发展,面对互联网中大量的数据,如何从数据中发掘出对用户有价值的信息是具有重大意义的。推荐系统是一种从用户的行为表现的数据中为用户寻找出其感兴趣的信息的一种应用。其应用在多个领域包括电子商务,音乐和视频等多个门户。其中,推荐算法作为推荐系统中实现数据挖掘的重要的组成部分,但是随着用户和商品的增长,数据量也大幅度增长,仍然存在数据的稀疏性问题,系统预测不准确的问题。传统的基于单机的推荐算法需要耗费大量的时间,这并不能符合当今的商业时代的需求,解决这一问题需将单机的算法进行并行化实现。Spark作为一个基于内存的分布式的计算框架,特点是进行迭代式的运算。本文主要研究了推荐系统中的两种推荐算法包括基于邻域的推荐算法和基于模型的推荐算法,针对以上提到的准确性,数据稀疏性的问题等,将算法进行改进,并将在Spark平台上并行化实现和优化。主要包括以下三个方面:(1)针对基于用户的协同过滤算法存在用户-评分矩阵数据稀疏的问题,引入了基于用户的属性的特征相似度,在计算本文的用户相似度的情况下,将传统的用户的协同过滤相似度和用户的属性的特征相似度结合,通过此来降低的评分的数据的稀疏性,在Spark平台并行优化后的算法,对实验的结果进行分析,提高了算法的执行的效率和推荐的准确性。(2)针对基于物品的协同过滤算法在冷启动和预测准确率不理想的问题,引入了基于物品的属性的特征相似度,在计算本文的物品相似度的情况下,将物品的协同过滤相似度和物品的属性的特征相似度结合,通过此来缓解冷启动带来的计算相似度的问题,在Spark平台并行优化后的算法,对实验的结果进行分析,提高了算法的执行的效率和推荐的准确性。(3)基于模型ALS的推荐算法是一个离线算法,缺乏实时性的特点,无法准确评估新加入的用户。在本文中,对于不同的参数加入不同的权重,对目标函数进行优化,将ALS的推荐算法结合Spark平台并行化,在新的目标函数下,解决了实时性,提供了准确率和快速性。