《集体智慧编程》第2章 提供推荐 个人笔记

第2章 提供推荐

1、相关性

搜集完人们的偏好数据后,我们需要有一种方法来确定人们在品味方面的相似程度。将每个人与所有其他人对比,并计算他们的相似度评价值。这本书介绍两种评价体系:

  • 欧几里得距离
  • 皮尔逊相关度

其中皮尔逊相关系数是判断两组数据与某一直线拟合程度的一种度量,在数据不是很规范的时候会倾向于给出更好的结果(修正了“夸大分值”的情况)。
还有许多其他的函数,如Jaccard系数或曼哈顿距离等。

2、推荐

推荐物品(寻找相似的用户):对其他物品加权求平均来打分,排序后给予推荐。
推荐人(寻找相似的物品):同理推荐物品,只要将物品和人对换即可。

3、协同过滤

item based-Filtering & user based-Filtering

在拥有大量数据集的情况下,基于物品的协同过滤能够得出更好的结论,而且它允许我们将大量计算任务预先执行,从而使需要给予推荐的用户能够更快的得到他们所要的结果。总体思路是为每件物品预先计算好最为相近的其他物品。然后,当我们想为某位用户提供推荐时,就可以查看他曾经评过分的物品,并从中选出排位靠前者,再构造出一个加权列表,其中包含了与这些选中物品最为相近的其他物品。
对于稀疏数据集,基于物品的过滤方法通常优于基于用户的过滤方法。

你可能感兴趣的:(集体智慧编程)