在推荐系统中,该算法出现最早。在2000年之前,都十分著名。
基本思想
俗话说“物以类聚、人以群分”,拿看电影这个例子来说,如果你喜欢《蝙蝠侠》、《碟中谍》、《星际穿越》、《源代码》等电影,另外有个人也都喜欢这些电影,而且他还喜欢《钢铁侠》,则很有可能你也喜欢《钢铁侠》这部电影。所以说,当一个用户 A 需要个性化推荐时,可以先找到和他兴趣相似的用户群体 G,然后把 G 喜欢的、并且 A 没有听说过的物品推荐给 A,这就是基于用户的系统过滤算法。
步骤:
-
倒排法-为了避免计算显然不相关的两个用户相似度,减少计算开支;
-
找到与目标用户兴趣相似的用户集合;
-
找到这个集合中用户喜欢,并且目标用户没有购买的物品推荐给目标用户。
发现兴趣相似用户
倒排法
首先将用户–物品表转化为物品–用户表(倒排表);
然后根据倒排表画出相似度矩阵(比如倒排表第一行说明AB BC AC有关联,就在矩阵中置1,第二行说明AC有关联,又加1变为了2)
矩阵中为0的我们就不需要去计算它们的兴趣相似度了。
得到用户相似度之后,我们开始计算用户对物品的兴趣度。