协同过滤算法(Collaborative Filtering, CF)是很常用的一种算法,在很多电商网站上都有用到。CF算法包括基于用户的CF(User-based CF)和基于物品的CF(Item-based CF)。
基于用户的CF原理如下:
分析各个用户对item的评价(通过浏览记录、购买记录等);
依据用户对item的评价计算得出所有用户之间的相似度;
选出与当前用户最相似的N个用户;
将这N个用户评价最高并且当前用户又没有浏览过的item推荐给当前用户。
基于物品的CF原理大同小异,只是主体在于物品:
分析各个用户对item的浏览记录。
依据浏览记录分析得出所有item之间的相似度;
对于当前用户评价高的item,找出与之相似度最高的N个item;
将这N个item推荐给用户。
举个列子(用R语言简单实现):
更多详情请见:详情请见点击