论文部分内容阅读
据统计,互联网海量数据中,非结构化数据的比例已经达到80%左右。互联网规模和覆盖面的迅速增长带来了著名的“信息超载”问题。一方面,丰富的信息资源为人们的生活提供了极大的帮助;另一方面,过量信息使得用户无法从中获取有用的知识,导致信息使用效率降低。为了缓解这个问题,需要一种信息过滤的手段来帮助人们在海量数据中找到有用的信息资源,推荐系统是当前解决信息超载问题非常有效的手段。基于协同过滤的推荐系统作为应用最广泛、研究最深入的一类推荐系统,在电子商务、社交网站以及各类资讯平台上都取得了巨大成功。协同过滤算法的关键在于寻找用户或物品的邻居,邻居的寻找依赖于用户或物品之间的相似度计算。因此,相似度计算的准确性决定了推荐结果的质量。如何提高相似度计算的准确性成为了推荐算法成功的关键问题。本文首先介绍了推荐系统领域常见的三类推荐方法,并对推荐系统的若干性能评测指标进行了介绍;然后对协同过滤算法进行了详细的实验分析,观察了邻居数量对推荐结果的影响规律,接着探讨了不同的相似度计算方法的适用场景以及它们的局限性。为了提高相似度计算的准确性,本文探讨了可能影响相似度计算准确性的四个因素,包括高频物品、共同评分用户的数量、物品评分权重、物品相似权重,同时给出了针对这些影响因素的改进算法。然后通过离线实验的方式验证了基于改进相似度计算的协同过滤推荐系统的性能要优于基于传统相似度计算的协同过滤推荐系统。本文最后利用Mahout平台下的Taste工具模拟了基于协同过滤算法、SlopeOne算法以及SVD算法的推荐系统,并且在MovieLens数据集下进行了性能的测评与对比,分析总结了不同的推荐引擎各自适用的场景以及性能的优势。