协同过滤

协同过滤(collaborative filtering)是根据其他用户进行推荐。

1. 如何寻找相似用户

推荐的第一步就是找相似用户。加入用户对一些内容进行评分,那么可以根据他们对同样的数据进行打分来判断他们的相似。也就是计算距离。

加入有数据:

千与千寻 大鱼海棠
小明 5 5
小强 2 5
小亮 1 4

1.1 曼哈顿距离

曼哈顿距离(Manhattan Distance)是最简单的计算方法。在二维情况下,每个用户用$(x, y)$表示,因此$(x_1, y_1)$可能是小明,而$(x_2, y_2)$可能是神秘的X女士。于是他们的距离可以采用以下公式来计算:$$|x_1-x_2|+|x_2-y_2|$$ 即分别计算$x$坐标和$y$坐标的差值的绝对值。

1.2 欧氏距离

勾股定理(毕达哥拉斯定理):$$\sqrt{(x_1-x_2)^2+(y_1-y_2)^2}$$ 这里$x_1$、$x_2$分别表示用户1和用户2喜欢《千与千寻》的程度,而$y