探索相似性度量
基于用的推荐程序的一个重要的部分是用户相似度(UserSimilarity)实现。基于用户的推荐非常依赖这个组件。如果对用户的相似性缺乏可靠有效的定义,这类推荐方法是没有意义的。这也适用于用户的推荐的“近亲”------基于物品的推荐程序,它同样依赖相似性。
基于皮尔逊相关系数的相似度
皮尔逊相关系数是一个介于-1和1之间的数,它度量 两个一一对应数列之间的线性相关程度。也就是说,它表示两个数列中对应数字一起增大或者一起减小的可能性。它度量数字一起按比例改变的倾向性,也就是说两个数列中的数字存在一个大致的线性关系。当该倾向性强时,相关值趋于1。当相关性很弱时,相关值趋于0。在负相关的情况下一个序列的值很高而另一个序列的值低---相关趋势趋于-1
注意: 1、皮尔逊相关系数是两个序列协方差与两者方差乘积的比值。
2、协方差计算的是两个序列变化趋势一致的绝对量。当两个序列相对于各自的均值点向同一个方向移动得越远,协方差就越大。除以方差则是为了对这一变化进行归一化。
这一统计学中广泛使用的概念,同样可以用于度量用户之间的相似性。它度量两个用户针对同一物品的偏好值变化趋势的一致性(都偏高或者都偏低)。
例如:
1,101,5.0
1,102,3.0
1,103,2.5
2,101,2.0
2,102,2.5
2,103,5.0
2,104,2.0