机器学习算法实践:推荐系统的协同过滤理论及其应用
上QQ阅读APP看书,第一时间看更新

3.2 相关工作

提供个性化推荐服务已经成为各大电子商务网站和社交媒体的核心竞争力所在,如何实时根据用户的浏览和购买行为为其推荐更加符合用户偏好的项目,即在正确的时间推荐合适的项目,是目前推荐系统面临的一大挑战。在信息飞速发展的当代,用户兴趣和信息话题的流行转移速度也非常快。文献[56]提出了一个实时的在线推荐系统——Tencent Rec,并在此系统上部署一系列的应用,每天为10亿用户根据其兴趣爱好实时推荐话题,在实践中观察Tencent Rec的性能;并在此系统上提出了一个基于项目的可扩展协同过滤推荐算法,处理隐式反馈问题,通过增量更新和实时修剪以减少计算成本,对数据进行实时采集和处理,可以随时捕捉用户的兴趣,提高推荐质量。文献[7]提出了一种基于空间正则化和突发加权平滑的混合模型推荐算法,利用正则化框架发现社交网络中的空间信息以及在时间轴上采用突发加权平滑方案发现的时变信息,实验结果表明所提出的混合模型能够在单一的检测过程中区别时变话题和稳定话题,从而可以针对用户不同的兴趣分别推荐话题。此算法只适用于新闻类信息网站,针对目前流行的社交媒体平台,文献[8]设计了一个潜在的类统计混合模型,称为时间上下文感知混合模型(TCAM),TCAM同时根据用户内在兴趣相关话题和时间上下文相关话题这两个因素的影响对用户行为建模;为了进一步提高TCAM算法的性能,提出项目加权方法使TCAM更好地为用户推荐其偏好的项目。文献[9]提出了一种利用人类行为对信息过滤的协同过滤推荐算法,与传统的协同过滤推荐算法相比推荐精度得到了很大提高,同时改善了推荐的新颖性和多样性。上述研究在计算相似度时加入时间因素,但是没有考虑项目特征属性问题,为此本书提出一种基于用户兴趣和项目属性的协同过滤推荐算法,在计算相似度时不单单考虑用户兴趣而且考虑项目本身的属性特征,提高算法的推荐精度。

时间是一种重要的上下文信息,对用户兴趣偏好有着深入的影响。本书以Movielens数据集为例(1997年9月—1998年4月,以月为单位),分析了3种不同类型影片观众人次比例随时间的变化情况,如图3-1所示为3种不同类型影片月观众人次比例走势图。

图3-1中Item1属于喜剧动画片,Item50属于战争科幻动作片,Item181属于浪漫喜剧片。从图3-1可以看出,不同类型影片,随着时间的变化,影片受欢迎的程度发生改变,观影人次也相应发生变化。不管是属于哪种类别的电影,其观众人次比例随时间的推移都在逐渐下降,其规律大体上与心理学上的遗忘曲线相似:电影刚上映时关注的观众比较多,随着时间的推移观众人次慢慢下降,直到被人们所遗忘。这也符合Ebbinghaus遗忘曲线的规律,即人类记忆能力随时间的变化而降低。

图3-1 3种不同类型影片月观众人次比例走势图

传统的协同过滤推荐算法分为输入数据、寻找最近邻居集合和预测推荐3步。寻找最近邻居集合是协同过滤推荐算法中关键的一步,其结果直接影响推荐的准确度。寻找最近邻居集合可通过计算相似度方法实现,常用的相似度度量方法有余弦相似度、调整余弦相似度和Pearson相关相似度。