简介
关于协同过滤的例子就是看电影,有时候不知道哪一部电影是我们喜欢的或者评分比较高的,那么我们通常的做法就是问问周围的朋友,看看有什么好的电影推荐。在问的时候,都习惯于问跟自己口味差不多的朋友,这就是协同过滤的核心思想。
定义
- 百度百科
协同过滤简单来说是利用某兴趣相投、拥有共同经验之群体的喜好来推荐用户感兴趣的信息,个人通过合作的机制给予信息相当程度的回应(如评分)并记录下来以达到过滤的目的进而帮助别人筛选信息,回应不一定局限于特别感兴趣的,特别不感兴趣信息的纪录也相当重要。协同过滤又可分为评比(rating)或者群体过滤(social filtering)。协同过滤以其出色的速度和健壮性,在全球互联网领域炙手可热
- 维基百科
协同过滤是通过将过滤操作在一大群人中扩散,用于过滤大量信息的一种机制。与主流媒体都有一个或少数几个编辑设定一些指导原则不同的是,协同过滤的社会化网络可以有无穷多的编辑,并随着参与者人数的增多而变地更好。协同过滤基于群体智慧和多数原则的两个基本原则之上。
核心
- 收集用户偏好
- 找到相似的用户或者物品
- 计算并推荐
算法细分
以用户为基础(User-based)的协同过滤
1.收集用户信息
2.最近邻搜索(Nearest neighbor search, NNS)
3.产生推荐结果基于物品的协同过滤算法
跟上述的基于用户的协同过滤算法类似,但它从物品本身,而不是用户角度。
比如喜欢物品A的用户都喜 欢物品C,那么可以知道物品A与物品C的相似度很高,而用户C喜欢物品A,那么可以推断出用户C也可能喜欢物品C以项目为基础(Item-based)的协同过滤
1.收集用户信息
2.针对项目的最近邻搜索
3.产生推荐结果以模型为基础(Model- based)的协同过滤
以模型为基础的协同过滤(Model-based Collaborative Filtering)是先用历史数据得到一个模型,再用此模型进行预测。以模型为基础的协同过滤广泛使用的技术包括Latent Semantic Indexing、Bayesian Networks…等,根据对一个样本的分析得到模型。
国内案例
豆瓣是国内做的比较成功的社交网站,它以图书,电影,音乐和同城活动为中心,形成一个多元化的社交网络平台,自然推荐的功能是必不可少的,当你在豆瓣电影中将一些你看过的或是感兴趣的电影加入你看过和想看的列表里,并为它们做相应的评分,这时豆瓣的推荐引擎已经拿到你的一些偏好信息豆瓣的推荐是通过 “豆瓣猜”,为了让用户清楚这些推荐是如何来的,豆瓣还给出了“豆瓣猜”的一个简要的介绍
你的个人推荐是根据你的收藏和评价自动得出的,每个人的推荐清单都不同。你的收藏和评价越多,豆瓣给你的推荐会越准确和丰富。每天推荐的内容可能会有变化。随着豆瓣的发展,给你推荐的内容也会越来越准。
所以我们通过豆瓣得知,豆瓣猜是基于社会化的协同过滤的推荐。豆瓣的用户越多,用户的反馈越多,那么推荐的效果也就会越准确。
国内案例
AMAZON书店提供先进的个性化推荐功能,能为不同兴趣偏好的用户自动推荐尽量符合其兴趣需要的书籍。 AMAZON使用推荐软件对读者曾经购买过的书以及该读者对其他书的评价进行分析后,将向读者推荐他可能喜欢的新书,只要鼠标点一下,就可以买到该书;AMAZON能对顾客购买过的东西进行自动分析,然后因人而异的提出合适的建议。 读者的信息将被再次保存,这样顾客下次来时就能更容易的买到想要的书。此外,完善的售后服务也是AMAZON的优势,读者可以在拿到书籍的30天内,将完好无损的书和音乐光盘退回AMAZON,AMAZON将原价退款。当然AMAZON的成功还不止于此,如果一位顾客在AMAZON购买一本书,下次他再次访问时,映入眼帘的首先是这位顾客的名字和欢迎的字样。
AMAZON对于用户的协同过滤就是通过用户曾经购买过的书和读者对其他的书进行分析,最后给用户推荐出用户可能会喜欢的新书。购买数越多,AMAZON的个性化推荐功能也越多。
双手奉上:关于协同过滤
上面文字均参考与百度百科。
网友评论