论文部分内容阅读
推荐系统是一种能够主动挖掘用户兴趣偏好,为不同的用户制定个性化的推荐列表,提供个性化推荐服务的智能化系统。协同过滤算法是一种发展较早、应用广泛的个性化推荐算法,目前比较流行的包括社会化推荐算法与概率矩阵分解模型。前一种算法通过融入用户社会属性,提高用户偏好刻画的准确性,后一种算法通过机器学习的方法得到用户、项目的特征,具有较高的准确度。但是,如何拓展有限的社会关系和如何揭示用户之间相互作用对用户特征的影响都还有值得研究和改进的空间。另外,大数据时代的到来,海量数据的处理对推荐系统的计算与存储能力带来了严峻的挑战。由于传统的推荐系统通常运行在单服务器条件下,分析计算能力有限,已经不能满足有效处理爆发式增长数据的需求。针对上面的问题,本文提出了两种新的协同过滤算法,在Hadoop平台实现并行化计算以提高计算效率与存储能力。另外,研究并实现了一个结合Hadoop相关技术和本文所提推荐算法的具有处理海量数据能力的推荐系统。本文主要工作总结如下:1.大数据环境下的社会化推荐算法。该算法在协同过滤中引入社会信任关系,并且挖掘出更多的可信任关系。对于用户之间的信任关系,需要区分项目类别,在各类别下通过社区发现方法发现信任社区作为目标用户候选可信任用户集,以扩展目标用户可信任用户集。再根据候选可信任用户在项目类别下评价的专业性和该用户与目标用户评分的相似性,定义候选可信任用户的信任度。根据信任度得到目标用户可信任用户集,从而得到推荐结果。最终给出算法在Mapreduce编程模型下的并行化实现。2.大数据环境下基于概率矩阵分解的个性化推荐。在该算法中把用户对项目偏好的相似度定义为两部分:用户对项目的评分相似度和用户对不同项目类别的关注度。根据相似度对用户进行聚类,并把用户近邻信息融入到概率矩阵分解模型以揭示用户互相影响关系。再根据聚类结果对用户、项目进行分组并组合,调整更新序列,分别在Spark和MapReduce计算框架下实现并行计算。3.在Hadoop平台,利用本文提出的推荐算法和Spark计算引擎实现了电影推荐系统。该系统具有较优的可扩展性,能够存储和计算海量的数据,能够达到较高的推荐精度,提供良好的用户体验。本文通过对上述研究内容和创新点的讨论,深入研究社会关系和概率矩阵分解模型,结合分布式计算技术提出具有较高推荐精度、可并行计算的推荐算法,并设计实现结合Hadoop相关技术的推荐系统。实验结果表明,所提出的算法可以提高推荐精度并降低计算时间,为进一步研究个性化推荐算法提供帮助。