论文部分内容阅读
如今互联网已经成为了我们生活密不可分的一部分,随着网络相关技术的发展,各种应用程序应运而生,大量的用户数据信息通过网络进行这传递,最终出现数据信息的急速膨胀。面对这些井喷的数据,我们从一开始的并没有在意,到后来的不知所措,其实这些数据是一座价值宝库,内含着大量的有价值的信息。个性化推荐算法应运而生,极大地降低用户资源搜索的开销。推荐算法主要是针对用户的偏好进行搜索,通过用户的兴趣偏好,对不必要的数据信息进行过滤,从而获得最终可能期望的结果。虽然推荐系统在很大程度上,使得用户能够在相对较短时间内,找到预期的信息,但是其在推荐质量,推荐效率以及扩展性上存在一定的问题。本文主要从个性化推荐系统中主流的基于内容推荐和协同过滤技术进行分析,针对一般个性化推荐系统普遍出现的稀疏性和慢启动的问题,着手进行改进,进行相应的调整。尝试着在上述两种算法的基础之上进行混合,形成一种混合推荐算法。本文以音乐推荐为背景展开尝试,传统的推荐系统针对相关的兴趣偏好来进行推荐,但是所谓的用户偏好的模型定义上存在不足,往往针对用户的历史评分。本文将用户偏好建立在三部分基础上:用户背景属性,用户活跃度以及用户历史评分。推荐系统常见的数据稀疏性问题,我们通过预测填补相关的缺值。对于用户评分的缺失值,并没有采用常用的众数法和平均数法,而是采用更加合理的缺值预测,提高准确率。用户的评分来自于用户的真实的评分,以及来自于上述的缺值预测,虽然缺值预测比较合理,但仍不能非常准确的代表用户的真实的内心选择,所以在进行计算的时候区分对待,采用不同的权重值。基于相对成熟的K-means算法,离线状态下对用户进行聚类,从而降低推荐时间,提高用户在线推荐的体验。新加入的音乐,没有用户的相关历史评分。刚注册的用户,没有相应的活跃度。本文通过相应的项目属性以及用户背景属性来进行处理,从而较好的解决了算法的冷启动问题。通过实验对本文算法进行验证,本文尝试着以阿里天池数据中的部分音乐数据进行算法的仿真及算法的性能测试。首先通过准确率、平均绝对误差等评价指标为依据,选取最适合本数据集合的相似度计算方法。然后,依据同样的指标,采用多重交叉验证的实验方法,验证本文改进算法相比较传统的协同过滤推荐算法和传统的基于内容推荐算法,有更高的准确率,更低的误差率。用户有更好的用户体验。