论文部分内容阅读
信息技术和互联网的快速发展促进了信息资源的急剧增长,从而出现了严重的信息过载问题,致使用户会耗费大量时间从海量信息中找到自己需要的信息。而推荐系统的出现有效缓解了信息过载问题,并能够根据用户的需要为其提供个性化的推荐。但推荐系统又普遍存在着冷启动、数据稀疏性和实时性等问题,这些问题严重的影响了推荐系统的推荐质量。如何有效的解决上述问题,成为了推荐系统当下研究的热点,也是本文主要的研究方向。首先,本文以推荐系统为基础,研究了个性化推荐算法及其相关技术,并进行了比较分析。针对推荐系统中的用户-项目评分矩阵稀疏性问题,本文采用了一种改进的基于项目评分预测的填充算法对原始评分矩阵进行了预填充,解决了数据稀疏性问题;为了提高推荐系统的实时性,本文使用了聚类技术,并详细介绍了传统的K-means聚类算法理论及实现,分析了该算法的优缺点,而针对传统的K-means聚类算法对初始聚类中心敏感的问题(随机选择初始聚类中心可能造成只能得到局部最优解情况的发生),本文提出了利用克鲁斯卡尔(Kruskal)算法通过构造最小生成树(MST)的方法,实现了自动生成均匀分布的初始聚类中心,从而解决了传统K-means算法的这一问题。最后结合改进的K-means算法对填充后的评分矩阵进行了离线聚类处理,有效提高了推荐系统的实时性。其次,考虑到随着时间的推移,用户的兴趣可能会随之改变。本文假设用户对项目最近的评分更能体现用户当前的兴趣,而用户的评分时间越接近则认为其相似度越高。在通过基于用户或基于项目的协同过滤算法计算相似度时,根据时间效用函数对不同的评分分配不同的效用值,以提高相似邻居的准确性,同时该算法还解决了物品冷启动和用户冷启动问题,从而最终提高了推荐结果的准确度。最后,为了验证本文所提算法的有效性,分别对本文所提算法和传统的协同过滤算法进行了分析和对比实验,实验结果表明本文所提算法的推荐质量明显优于传统算法。