(三) 主要的个性化推荐算法
表2.1 推荐算法综合描述
推荐技术 依赖数据 用户输入 推荐过程
协同过滤推荐 用户集合U对产品集合I的评价 个人用户u对产品集合中部分产品的评价 从用户集合中识别与个人用户u型去相似的用户,以这些用户对产品i的评价为依据做出推断
基于内容的推荐 产品集合I中的产品特征描述 个人用户u对产品集合中部分产品的评价 产生一个与个人用户u的评价相应的分类,并将其应用于产品i
基于效用的推荐 产品集合I中的特征描述 个人用户u的兴趣效用函数 将兴趣效用函数应用于产品并决定产品i的等级
基于知识的推荐 产品集合I中的特征描述,及这些产品如何满足需要的知识 关于个人用户的需要或兴趣的描述 推断出产品i与个人用户需要质检的匹配
关联规则推荐 用户集合U对I的浏览或者购买历史记录 个人用户u对产品集合中部分产品的评价 从用户集合中与个人用户u购买相同产品的用户,产生频繁项集,产生关联规则,根据规则产生推荐
推荐算法是个性化推荐系统的核心,贯穿于用户输入推荐请求到推荐结果输出的全过程。在电子商务网站中,简单推荐是依据用户注册档案中喜好的关键字进行匹配,来推荐相关的个性化产品。高级推荐是动态适应顾客的在线状态,根据顾客浏览的上下文环境以及点击流的分析,来调整推荐方案,拟合顾客需求,实现个性化推荐。
目前,主要的个性化推荐算法有协同过滤推荐、基于规则的推荐、基于人口的推荐、基于内容的推荐、基于效用的推荐、基于知识的推荐等,其中协同过滤和基于关联规则的推荐技术应用较广。以上推荐技术综合列表如表1。表中J是产品集合,U是已知兴趣偏好的用户集合,H是需要进行推荐的个人用户,f是能预测个人用户兴趣的产品。
1、 协同过滤推荐
协同过滤推荐(collaborative filtering recommendation)是目前研究最多的个性化推荐技术,它基于另据用户的资料得到目标用户的推荐,推荐的个性化程度越高。协同过滤的最大优点是对推荐对象没有特殊要求,能处理非结构化的复杂对象,如音乐、电影。
协同过滤推荐主要分为两类:一是基于内存的协同过滤(memory - based collaborative filtering),先用相似统计的方法得到最具有相似兴趣爱好的邻居用户,所以该方法也称为基于用户的协同过滤(user - based collaborative filtering)或基于邻居的协同过滤(neighbor - based collaborative filtering);二是基于模型的协同过滤(model - based collaborative filtering),先用历史数据得到一个模型,再用此模型进行预测。基于模型的推荐广泛使用的技术包括神经网络等学习技术、潜在语义检索(latent semantic indexing)和贝叶斯网络(Bayesian networks),训练一个样本得到模型。Breese教授认为基于用户的协同推荐比基于模型的协同推荐方法更好。
基于用户的协同推荐算法随着用户数量的增多,计算量成线性加大,其性能越来越差,并且不能对推荐结果提供很好的解释。为此,在2001年Sarwr教授提出了第三种协同过滤推荐算法,即基于项目的协同推荐算法(item - based collaborative filtering algorithms)。该算法通过先计算已评价项目和待预测项目的相似度,以相似度作为权重,加权各已评价项目的评价分,得到预测项目的预测值,并指出基于项目的推荐算法比基于用户的推荐算法还要好,且能解决基于用户的协同推荐的两个问题。但Mild教授从批判的角度重新审视了各种推荐算法,指出基于项目的协同推荐并不一定好,算法准确度与采用的试验规模数据有关,大多数情况下还是基于用户的协同推荐好。 面向医疗器械的个性化推荐系统研究(3):http://www.751com.cn/jisuanji/lunwen_17562.html