论文部分内容阅读
随着互联网的发展和信息技术的进步,推荐系统已经成为人们从海量信息中获得有用知识、避免信息爆炸的一种有效手段。但是在推荐系统的实际应用中,既面临着如何正确运用丰富的情境信息提升推荐效果的现实问题,也面临着海量用户和项目带来的计算和存储压力。推荐系统在实践应用中面临的各种难题,对于现有推荐系统提出了更高的挑战。为此,本文从情境信息高效处理、多样化特征筛选、典型用户子集发现三个方面,探讨了如何处理推荐系统面临的实际应用问题,从而在保证效率的同时提升推荐效果。本文的工作和贡献可以概括如下:首先,基于面向对象的思想,提出了基于特征值对的推荐系统对象表示方法,设计了面向对象的推荐系统(ORS)框架。已有的使用情境信息的模型通常关注于一两种特定的信息,缺乏系统化动态引入多种情境信息的能力。针对该问题,本文探讨了如何基于面向对象思想引入多样化情境信息用于推荐。具体而言,采用特征值对统一表示情境信息,并用特征值对(Feature Value Pair)的集合表示推荐系统中的对象,利用特征值对之间的关联推导对象相似度后,使用协同过滤算法实现推荐。基于此设计了面向对象的推荐系统(ORS)框架,并实现了面向对象的贝叶斯网络(OBN)模型用以计算对象相似度。在旅游领域真实数据集上的实验结果显示,基于OBN模型的ORS框架是一种优秀的推荐系统框架。其次,在面向对象的推荐系统(ORS)框架中,提出了面向对象的主题模型(OTM),设计了基于特征信息熵的特征选择方法。在推荐系统的实际应用中,面临着如何正确运用丰富的情境信息提升推荐效果的现实问题。本文研究发现,不同类型情境信息对于推荐结果的贡献并不相同。基于此发现,本文提出融合情境信息表示用户隐式兴趣的OTM模型,并基于OTM模型计算不同情境信息的特征信息熵,从而选择对于推荐效果提升贡献最大的特征。在真实数据集上的实验结果显示,OTM模型的推荐效果好于传统的推荐方法,在给出可理解的主题分布的同时,也可以用于有效的筛选特征以优化推荐结果。最后,提出推荐系统中典型用户群组(TUG)的概念,设计了基于典型用户群组的协同过滤推荐算法。推荐系统实践中常常筛选一个小规模用户子集用于研究,但并未量化考虑用户子集的代表性。针对这一问题,本文基于推荐项目覆盖率提出典型用户群组的概念,在保证较高的推荐项目覆盖率和较为准确的评分基础上,筛选得到全体用户的一个较优子集。同时在协同过滤推荐过程中,从典型用户群组中寻找最近邻居,在保证最近邻居代表性的同时降低计算开销。在真实数据集上的实验结果显示,典型用户群组具有更高的项目覆盖率和较小的评分误差,因而更具有典型性。与其他推荐算法的对比也显示,合理的使用典型用户群组,可以有效的优化现有的协同过滤推荐算法。