论文部分内容阅读
随着互联网的快速发展,互联网上的信息量越来越大,出现了严重的“信息过载”问题,使得用户在面临如此多的信息量往往无所适从。推荐系统主要是对用户与物品之间的交互行为进行建模,能够考虑到用户的偏好,为用户提供个性化的指导,是解决信息过载问题的有效手段。音乐视听系统在人们的生活中使用的越来越多,通常一个系统有几十万甚至更多的歌曲,所以需要为用户提供个性化的推荐。传统的音乐推荐通常是基于音乐音频或者内容信息的,无法满足用户的个性化需求,故此本文主要研究基于协同过滤的音乐推荐。协同过滤的推荐算法需要使用用户的反馈历史数据,而多数推荐系统都面临着反馈数据异常稀疏的问题,严重影响着推荐算法的效果。因此,本论文主要针对评分数据中的数据稀疏性问题进行了有益的探索和研究。
本论文的工作贡献如下:
详细的阐述了在缓解用户评价数据的稀疏性问题上国内外的研究现状,并重点讨论了几种有代表的协同过滤算法。主要包括:基于用户的邻居模型,基于项目的邻居模型,基于隐参数的项目邻居模型,基于EM的矩阵分解模型,基于梯度下降法的矩阵分解模型,基于偏差的隐参数模型。接着通过在大规模数据集Netflix电影评分和Yahoo!Music音乐评分数据集上的实验分析了采用不同相似度度量函数对于邻居模型的影响,并充分比较了隐参数模型相比邻居模型的优势,以及考虑用户和项目偏差的作用对预测效果的影响。最后通过相关对比实验证实了隐参数模型克服数据稀疏性的能力比较强,考虑用户和项目的偏差作用对提升预测效果非常有效。
提出了基于音乐层次结构的协同过滤算法。音乐可以分为歌曲、专辑、演唱家、流派四种类别,而这四个类别之间是有关联的,存在着“层次结构”,因此我们可以利用音乐的层次关系进行建模。基于层次结构的模型主要考虑了三种关系:相关联的音乐类别之间的相互作用;用户对一个类别的偏好,引起的他对相关类别偏好的变化;音乐层次关系对用户潜在喜好的影响。我们通过考虑这三种关系,在隐参数模型的基础上进行改进,并在大规模音乐评分数据集Yahoo!Music上进行了详细的实验。实验结果显示:通过利用音乐类别之间的层次关系能够缓解数据稀疏性带来的负面反应,提高推荐模型的预测效果。
提出了两种基于用户短期时间效应的动态模型:基于用户评分时间段的模型以及基于用户连续一段时间评分的动态模型。主要考虑到用户每天在不同的时间段,受到环境因素、忙碌程度等的影响,会有不同的心情,从而有不同的评分倾向:用户在连续一段评分时间内,前面的评分会对后面的评分产生影响,此外评分还与用户当时的心情变化相关。另外,我们研究了其他时间效应对推荐效果的影响,并综合地考虑利用这些时间信息进行建模。通过实验证明,考虑推荐系统的时间信息,能够非常显著地提高推荐系统的预测效果。最后我们还介绍了将音乐层次结构和时间信息统一在一起的模型,实验显示该模型能充分利用这两方面的优势,具有精确的预测效果。