论文部分内容阅读
智能移动终端设备的广泛普及和网络通信技术的不断发展,使得人们可通过互联网获得海量数据。面对可得到的海量数据,人们亟需解决的问题是如何高效准确地查询到所需信息。搜索引擎通过过滤与显式查询匹配的页面成为解决方案之一,然而人们在查询时很难给出有效的关键词。推荐系统在某种程度上解决了这些问题,可以帮助用户在面对大量数据时快速有效地获取有用资源。协同过滤算法(Collaborative Filtering,以下简称CF)是推荐系统在学术研究和实际商业领域中最普遍使用的算法,依据用户的历史打分数据,衡量用户或项目间的相似程度,生成指定用户或项目的相似邻居集合,并据此预测项目得分。但协同过滤算法十分依赖用户对项目的评分数据,存在着数据稀疏和“冷启动”的问题。本文针对以上问题做出改进,将社交关系数据引入到协同过滤中进行矩阵补全,利用聚类算法生成项目聚类,在相似度计算时考虑了项目的内在属性特征,并结合了自然界的注意力机制思想,主要工作如下:第一点,利用用户好友关系数据定义影响力系数,并将其应用到协同过滤算法的矩阵补全过程中,充分的考虑了用户的社交关系和兴趣领域,提高了矩阵补全分值的准确性,使得缺省项的补全值更贴近用户的实际评分值,根据此补全矩阵进行协同过滤算法,减小了算法的推荐误差,提高了算法的推荐准确度,且使得推荐结果更契合用户的兴趣领域;并利用K-means算法在全部项目范围内生成项目聚类,缩小了生成项目相似邻居集合时的项目查找数量,从而减少相似度的计算次数,提高了算法效率,同时抽象的项目聚类对评分矩阵的数据稀疏性敏感度较低,确保了算法的准确度。文中通过实验对比了基于项目的CF算法、基于均值补全的CF算法与基于社交关系和聚类的CF算法,验证了基于社交关系和聚类的CF算法在解决数据稀疏性问题上的优势,具备较低的推荐误差和较高的推荐准确度,证明了该算法的可行性和有效性。第二点,引入了项目的属性特征标签,对相似性计算方法进行加权修正,充分考虑了项目内部属性特征对用户兴趣偏好的影响,提高了项目间相似度的计算准确度,从而使得算法的推荐性能更优;并结合注意力机制的思想,赋予与未评分项目相似度高的项目更多的注意力,减少噪声对评分预测的影响,使得算法推荐性能更优且生成的推荐列表更契合用户喜好。文中通过实验分析对比了基于项目的CF算法,基于社交关系和聚类的CF算法,基于社交关系和注意力机制的CF算法的计算误差和准确度,实验数据证明了基于社交关系和注意力机制的CF算法的表现更优。