https://www.toutiao.com/a6643326861214482957/

 

2019-01-06 18:21:09

前边我们已经介绍了推荐算法里的基于内容的推荐算法CB,今天我们来介绍一下基于协同的推荐算法Collaboration Filtering(CF)。协同过滤是一个利用群体智慧的一个算法,举一个简单的例子,如果放假了你想去北京玩几天,但是不知道北京都有哪些好玩的,你会怎么做?你可能会上网查一下网友的推荐,也可能会咨询一下曾经去过北京的亲朋好友,最后你很可能会采纳你好朋友的推荐。因为你的好朋友和你相似的爱好和品味。

基于协同的推荐算法又分为两种

  • User Based CF

基于当前用户对物品的偏好找到相似偏好的用户,然后把相似偏好用户喜欢的物品推荐给当前用户。例如下图,对于 user1,我们找到了和他有相似偏好的 user3,他们都同时喜欢 Item1 和Item3 ,并且 user3 还喜欢 Item4,我们就可以把 Item4 推荐给 user1。

推荐算法——基于协同过滤CF

 

  • Item Based CF

原理和基于用户的类似,只是在计算时基于物品而不是用户,找到和当前用户喜欢的物品相似的物品,然后推荐给当前用户。例如下图,我们发现喜欢 Item1 的用户都喜欢 Item3,并且还有很多也喜欢 Item4,我们就认为 Item1、Item2 和 Item4 比较相似,所以我们就可以把 Item4推荐给 user1。

推荐算法——基于协同过滤CF

 

协同过滤的实现,一般通过以下几个步骤

  • 收集用户对物品的偏好数据

通常把用户对物品的行为数据收集起来,然后根据不同的行为数据来标志用户对该物品的喜欢程度,然后根据喜欢程度给物品一个打分。比如说一个电商网站,根据用户的浏览,收藏,加购物车,购买,评论等行为数据来进行打分,标志用户对这个物品的喜爱程度。

  • 通过计算找到相似的用户或物品

然后像上边举得两个例子那样,通过一些算法,来找到和该用户有相似偏好的用户,或者找到和该用户喜欢的物品相似的物品。

  • 然后把相似度较高的n个结果推荐给用户

最后从得到的推荐列表里挑选分数较高的n个结果推荐给用户

基于用户和基于物品的协同过滤有各自的优点和不足,我们使用的时候要根据具体的场景和情况来选择合适的来使用。最后来比较一下两者的不同。

推荐算法——基于协同过滤CF

 

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐