科普一下协同过滤
周涛  |  2011-06-17  |  科学网  |  278次阅读

协同过滤是最早提出,研究最深入,商业应用最广泛的个性化技术。协同过滤技术服务的对象是个体,却利用了所有用户的信息。在以用户为中心,基于相似性的经典协同过滤算法中,首先通过比较历史数据,计算目标用户和其他用户的相似性,然后把和目标用户非常相似的用户喜欢的商品推荐给目标用户。计算相似性的办法非常多[1],在讨论关联规则时提到的方法,例如Cosine相似性(分母是两个用户购买商品数目乘积的平方根)和Jaccard相似性(分母是两个用户购买商品的并集大小),都是常用的。举个例子,如果用户A购买了商品1,2,3,用户B购买了商品2,3,4,5,则分母是共同购买的商品数2Cosine相似性等于2除以根号下34,约为0.577Jaccard相似性则是2除以5,等于0.4。得到相似性后,可以把所有其他用户对商品的评价按照相似性加权求和的方式排序,推荐给目标用户;也可以选择相似性最高的k个用户,只考虑他们的影响;还可以设定一个相似性阈值,只考虑相似性高于这个阈值的用户的影响。

 

上面讲到的协同过滤,是以用户为中心的。另外一种应用非常广泛的方法,是以商品为中心的,一般叫做基于商品的协同过滤。这种方法的基本思路是,分析目标用户购买过的商品,向其推荐和他曾经购买过的商品相似的商品。考虑互联网用户兴趣的实时性,一般而言只分析用户近期的购买行为,或者认为以前的购买行为对当前推荐的影响是随着时间递减的。在定义商品的相似性的时候,既可以通过行为,也就是看两个商品是否频繁被同一个用户购买过,也可以通过内容,也就是看两个商品的属性或者描述是否具有相似性。后者和接下来要讲的内容分析紧密结合,事实上,Amazon所使用的推荐算法的核心就是建立在内容分析基础上的基于商品的协同过滤[2]。由于图书的内容很丰富,判断内容之间的相似性非常准确,所以该方法在Amazon上效果很好。但是需要注意的是,这种方法移植到其他商品的推荐上,效果可能大打折扣。

基于商品的协同过滤方法有两个特别的优势:一是方便设计实时响应的算法,因为商品之间的相似性可以离线计算,这样的话,用户每次浏览新的商品后,包括放入购物车或者购买,容易实时计算并立刻更新用户看到的推荐商品栏;二是该方法可解释性强,因为在对用户进行推荐的时候,可以告诉用户推荐给你这个商品的主要原因是因为参考了你曾经购买或者浏览的若干商品——可解释性可以大大提高用户体验,在个性化电子邮件营销中有很大用途。与之相对,基于用户的协同过滤可以挖掘一些更深层次的潜在关联,帮助提高交叉销售量,也就是在用户购买某品类产品的时候,向用户推荐其他品类的产品,从而提高用户购买的多样性。这不仅仅是眼前提高了用户的客单价,更重要的是扩充了用户新的购物品类,从而可以整体提高该用户的价值。基于商品的协同过滤往往倾向于推荐同品类商品,在交叉销售方面价值较小。这两种方法遇到的一个共同的问题就是倾向于推荐热门产品,推荐的多样性和新颖性不够——如何在不伤害推荐精确性的前提下提高推荐的多样性和新颖性,是个性化推荐技术研究的重大挑战[3,4]

 

[1] L. Lü, T. Zhou, Link prediction in complex networks: a survey, Physica A 390 (2011) 1150-1170.

[2] G. Linden, B. Smith, J. York, Amazon.com recommendations: item-to-item collaborative filtering, IEEE Internet Computing 7(1) (2003) 76-80.

[3] C.-N. Ziegler, S. M. McNee, J. A. Konstan, G. Lausen, Improving recommendation lists through topic diversification, Proceedings of the 14th international conference on World Wide Web, ACM Press, New York, 2005.

[4] T. Zhou, Z. Kuscsik, J.-G. Liu, M. Medo, J. R. Wakeling, Y.-C. Zhang, Solving the apparent diversity-accuracy dilemma of recommender systems, Proceedings of the National Academy of Sciences of the United States of America 107 (2010) 4511-4515.




文章原载于作者的科学网文章,所述内容属作者个人观点,不代表本平台立场。
本文经过系统重新排版,阅读原内容可点击 阅读原文