zl程序教程

您现在的位置是:首页 >  系统

当前栏目

推荐系统(3):相似性度量

系统 推荐 度量 相似性
2023-09-14 09:14:56 时间

目录

0. 相关文章链接

1. 什么是相似性度量

2. 皮尔逊相关系数

3. 欧式距离

4. 同现相似度


0. 相关文章链接

推荐系统文章汇总

1. 什么是相似性度量

基于用户的推荐和基于物品的推荐都需要找相似,即需要找相似用户以及相似物品。比如一个男生和一个女生是朋友,不能讲该女生穿的衣服推荐给男生。要找相似。那么衡量的指标有哪些?比如皮尔逊相关系数、欧式距离、同现相似度、Cosine相似度、Tanimoto系数等。

2. 皮尔逊相关系数

皮尔逊相关系数是介于1到-1之间的数,他衡量两个一一对应的序列之间的线性相关性。也就是两个序列一起增大或者一起减小的可能性。两个序列正相关值就趋近1,否者趋近于0。

数学含义:两个序列协方差与二者方差乘积的比值,如果比较两个人的相似度,那么他们所有共同评价过的物品可以看做两个人的特征序列,这两个特征序列的相似度就可以用皮尔逊相关系数去衡量。物品的相似度比较也是如此。

皮尔逊对于稀疏矩阵表现不好,可以通过引入权重进行优化。

3. 欧式距离

将两个人所有共同评价过的物品看做这个人的特征,将这些特征看做是空间中的点,计算两点之间的距离。

4. 同现相似度

物品i和物品j的同相似度公式定义:

        其中,分母是喜欢物品i的用户数,而分子则是同时喜欢物品i和物品j的用户数。因此,上述公式可用理解为喜欢物品i的用户有多少比例的用户也喜欢j  (和关联规则类似)

         但上述的公式存在一个问题,如果物品j是热门物品,有很多人都喜欢,则会导致Wij很大,接近于1。因此会造成任何物品都和热门物品交有很大的相似度。为此我们用如下公式进行修正:

这个格式惩罚了物品j的权重,因此减轻了热门物品和很多物品相似的可能性。(也归一化了[i,j]和[j,i])


注:其他推荐系统相关文章链接由此进 -> 推荐系统文章汇总