CF中User-Based与Item-Based的区别

先来了解以下两者的实现思路:

User-Based算法基本思路:

  1. 找到与目标用户购买过相(同)类似商品的用户,作为相似用户;
  2. 得到相似用户评价很高的,并且目标用户没有评分过(购买过)的Item,并推荐给目标用户;

Item-Based算法基本思路:

  1. 计算目标用户评分过(购买过)的Item与其他Item的相似度;
  2. 根据目标用户的历史行为和物品的相似度,为目标用户生成推荐列表;

        可以看出,User-Based算法注重的是用户所在的”兴趣小组“,给用户推荐的是所在的小组中的热门商品,更注重社会化,群体化;Item-Based算法更注重的是用户有过的历史行为的商品,以用户本身的兴趣爱好为基础,更注重个性化

一、适用场景上的比较

        User-Based算法基于用户与用户之间的相似程度来进行推荐,因此,当用户量远远少于Item数量时,可以考虑使用User-Based算法。如社交网站,快消素材网站,短视频之类的,就比较适合这种算法,因为这类网站内容更新比较频繁,且用户更加注重社会化热点

        Item-Based算法基于物品与物品之间的相似度来推荐,当Item数量远远少于用户量时,可以使用该算法。如购物网站,技术博客,音乐推荐系统,因此可以减少推荐的计算量,而且不必频繁更新。

二、推荐系统多样性的比较

        单用户方面:User-Based的多样性优于Item-Based,因为前者是可以推荐到不同用户的商品,而后者只能依据本身历史行为;

        系统方面:Item-Based多样性优于User-Based,对于前者,每个用户都是基于个性化,整个系统来说,推荐的商品更多样性,而后者则集中于热门商品。

三、用户特点上的比较

        User-Based算法是基于兴趣小组成员所喜欢的商品,如果目标用户暂时找不到其具有共同兴趣的用户,那么使用User-Based算法时,出来的效果大打折扣,因此,是否选择使用User-Based算法,与兴趣小组成员数量成正相关关系;

        Item-Based算法则是基于商品的自相似度,它认为”用户对于他购买过的相似商品,一定会感兴趣“。如果该商品是一种周期性短的,那么Item-Based会比较合适,反之亦然。

你可能感兴趣的:(大数据,协同过滤CF)