论文部分内容阅读
无线互联网及移动设备的飞速发展,带动着网络资源的爆炸式增长,加剧信息过载问题,加大了用户寻找所需信息的难度。推荐系统成为解决这个问题的关键,其中推荐算法对推荐结果起到关键的作用。目前的推荐算法当中,应用最广的是协同过滤推荐。它通过分析用户之间的相似性,得到近邻,通过近邻预测未评分项目,将近邻喜欢的项目形成推荐结果。虽然协同过滤算法有挖掘用户潜在爱好等优点,但是它同样存在着一些问题,例如数据稀疏性问题、可拓展性问题以及冷启动问题等等。此外,评分矩阵不能全面的反映出用户的所有情况和偏好,其偏好同样与其年龄、职业以及其所在位置等情境信息有着密切的联系。针对以上问题,本文提出了一种基于情境进行聚类的协同过滤算法,主要研究内容有:(1)深入研究现有推荐算法,分析其情境缺失问题。针对其只考虑用户评分这个问题,引入可能影响用户兴趣爱好的用户情境和外在环境情境,包括用户年龄、职业、时间以及位置等,结合情境语义学,构建了用户情境的形式化表达方法。(2)针对传统协同过滤算法当中存在的数据稀疏性问题,提出了基于情境的聚类算法。深入研究了常见不同数据类型变量的相异度计算方法,计算两两情境相异度,构建情境相异度矩阵。深入研究FCM算法,并针对FCM的收敛性问题,引入了收敛因子,利用改进的FCM算法,在情境相异度矩阵的基础上进行聚类。如此将三维模型降维,缩小了目标用户查找相似用户的范围,降低了复杂度,缓解数据稀疏性问题。(3)针对协同过滤算法当中的用户相似度算法忽略了用户对单条项目评分尺度差异问题,提出一种改进的相似度算法,引入平衡因子,对相似度进行修正,得到更准确的最近邻居。将改进的相似度算法与基于用户情境的聚类算法进行结合,提出了一种基于情境聚类的协同过滤算法。(4)将本文方法在MovieLens数据集上进行反复试验,与基于情境等价相异度矩阵聚类的协同过滤算法进行对比,采用平均绝对误差,召回率和准确率等指标进行评估,实验结果表明该算法具备良好的性能。