2.2.4 推荐系统的分类
推荐系统具有不同的分类方法。常见的分类方法有:按照推荐结果因人而异分类、按照推荐方法分类、按照推荐模型构建方式分类。因为推荐算法是整个推荐系统中最核心部分,所以推荐系统还可以依据推荐算法分类。基于此,推荐系统可以分为基于内容的推荐、基于协同过滤的推荐以及混合推荐方法。
1.基于内容的推荐
基于内容的推荐策略始于信息检索领域,是搜索领域的重要研究方向。这种方法利用用户已经选择的对象,从候选集中找出与用户已选对象相似的对象作为推荐结果。这一推荐策略是首先提取推荐对象的内容特征,并和用户模型中的用户兴趣匹配。匹配度较高的对象就可以作为推荐结果推荐给用户。计算推荐对象的内容特征和用户模型中兴趣特征两者之间的相似性是内容推荐策略中的关键步骤。一般采用的最简单的方法为计算两个向量的夹角余弦值。基于内容的推荐策略的主要部分就是用户特征的描述以及推荐对象内容特征的提取。目前,文本信息的特征提取方法已经趋于成熟,但多媒体信息的特征提取技术还需要进一步探索。图2-6是基于内容的推荐,用户A喜欢具有A、B特征的商品A,而商品C也是A、B类型的,商品C和商品A相似,于是商品C被推荐给用户A。
图2-6 基于内容的推荐
基于内容的推荐策略的优点有:1)简单有效,推荐结果较为直观,可解释性强;2)没有新推荐对象的冷启动问题;3)简单的分类方法就能够支持该策略。缺点有:1)受推荐对象特征提取能力的限制,对图像、视频、声音等多媒体资源的特征提取以及文本资源的提取不够全面;2)很难推出新颖的推荐结果,惊喜度指标较低,难以发现用户新的兴趣点;3)存在新用户的冷启动问题,因为很难发现新用户的兴趣爱好,无法和推荐对象的内容特征进行匹配。
2.基于协同过滤的推荐
目前,基于协同过滤的推荐是推荐系统中应用最广泛、最有效的推荐策略。它于20世纪90年代出现,促进了推荐系统的发展。协同过滤的基本思想是聚类。比如,如果周围很多朋友选择了某种商品,那么自己大概率也会选择该商品;或者用户选择了某种商品,当看到类似商品且其他人对该商品评价很高时,则购买这个商品的概率就会很高。协同过滤又分为三种:基于用户的协同过滤、基于项目的协同过滤和基于模型的协同过滤。
1)基于用户的协同过滤的基本思想是首先找到与目标用户兴趣相似的用户集合,然后找到这个集合中用户喜欢并且没有听说过的物品推荐给目标用户。图2-7是基于用户的协同过滤的实现逻辑。用户A喜欢商品A和商品C,用户C喜欢商品A、商品C和商品D,用户A和用户C具有相似的兴趣爱好,因此把商品D推荐给用户A。
图2-7 基于用户的协同过滤
2)基于项目的协同过滤的基本思想是基于所有用户对推荐对象的评价的推荐策略。如果大部分用户对一些推荐对象的评分较为相似,那么当前用户对这些推荐对象的评价也相似。然后,将相似推荐对象中用户未进行评价的商品推荐给用户。总之,基于项目的协同过滤就是根据用户对推荐对象的评价,发现对象间的相似度,根据用户的历史偏好将类似的商品推荐给该用户。图2-8是基于项目的协同过滤的实现逻辑。用户A喜欢商品A和商品C,用户B喜欢商品A、商品B和商品C,用户C喜欢商品A,通过这些用户的喜好可以判定商品A和商品C相似,喜欢商品A的用户同时也喜欢商品C,因此给喜欢商品A的用户C也推荐了商品C。
图2-8 基于项目的协同过滤
3)基于模型的协同过滤的基本思想是基于样本用户的喜好信息训练一个推荐模型,然后根据实时的用户喜好信息进行推荐。其和上述两种协同推荐的不同点在于先对已有数据应用统计和机器学习的方法得到模型,再进行预测。常用的方法有机器学习方法、统计模型、贝叶斯模型和线性回归模型等。
基于协同过滤推荐的优点有:1)可以使用在复杂的非结构化对象上;2)能够发现用户新的兴趣爱好,给用户带来惊喜;3)以用户为中心的自动推荐,随着用户数量的增加,用户体验也会越来越好。缺点在于:1)存在冷启动问题,即在没有大量用户数据的情况下,用户可能不满意获得的推荐结果;2)存在稀疏性问题,即用户大量增长的同时,评价差异性会越来越大,推荐对象也越来越多,导致大量的推荐对象没有经过用户评价,部分用户无法获得推荐结果,部分推荐对象无法被推荐。
3.混合推荐方法
各种推荐方法都会存在优缺点。在实际应用中,我们可以采用推荐策略的组合方式,即混合推荐方法。目前,使用最多的混合推荐方法就是把基于内容的推荐和协同过滤推荐组合。根据应用场景的不同,组合的方式也不尽相同,主要有两种混合方式。
1)推荐结果混合:将多种推荐方法产生的结果通过某种方式进行混合计算而产生最终的推荐结果。如何从多个推荐结果中选出推给用户的最终结果成为混合推荐的关键。常见的机制是投票机制,即使用一定的标准对多个结果进行判断,选择其中之一。
2)推荐算法的混合:以某一种推荐策略作为框架,混合另外的推荐策略,如基于协同过滤推荐的框架混合基于内容的推荐策略。