相似度的计算.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
相似度计算 相似度的计算简介 关于相似度的计算,现有的几种基本方法都是基于向量(Vector)的,其实也就是计算两个向量的距离,距离越近相似度越大。在推荐的场景中,在用户-物品偏好的二维矩阵中,我们可以将一个用户对所有物品的偏好作为一个向量来计算用户之间的相似度,或者将所有用户对某个物品的偏好作为一个向量来计算物品 之间的相似度。下面我们详细介绍几种常用的相似度计算方法: 皮尔逊相关系数(Pearson Correlation Coefficient) 皮尔逊相关系数一般用于计算两个定距变量间联系的紧密程度,它的取值在 [-1,+1] 之间。 sx, sy是 x 和 y 的样品标准偏差。 类名:PearsonCorrelationSimilarity 原理:用来反映两个变量线性相关程度的统计量 范围:[-1,1],绝对值越大,说明相关性越强,负相关对于推荐的意义小。 说明:1、 不考虑重叠的数量;2、 如果只有一项重叠,无法计算相似性(计算过程被除数有n-1);3、 如果重叠的值都相等,也无法计算相似性(标准差为0,做除数)。 该相似度并不是最好的选择,也不是最坏的选择,只是因为其容易理解,在早期研究中经常被提起。使用Pearson线性相关系数必须假设数据是成对地从正态分布中取得的,并且数据至少在逻辑范畴内必须是等间距的数据。Mahout中,为皮尔森相关计算提供了一个扩展,通过增加一个枚举类型(Weighting)的参数来使得重叠数也成为计算相似度的影响因子。 欧几里德距离(Euclidean Distance) 最初用于计算欧几里德空间中两个点的距离,假设 x,y 是 n 维空间的两个点,它们之间的欧几里德距离是: 可以看出,当 n=2 时,欧几里德距离就是平面上两个点的距离。当用欧几里德距离表示相似度,一般采用以下公式进行转换:距离越小,相似度越大。 类名:EuclideanDistanceSimilarity 原理:利用欧式距离d定义的相似度s,s=1 / (1+d)。 范围:[0,1],值越大,说明d越小,也就是距离越近,则相似度越大。 说明:同皮尔森相似度一样,该相似度也没有考虑重叠数对结果的影响,同样地,Mahout通过增加一个枚举类型(Weighting)的参数来使得重叠数也成为计算相似度的影响因子。 Cosine 相似度(Cosine Similarity) Cosine 相似度被广泛应用于计算文档数据的相似度: 类名: UncenteredCosineSimilarity 原理:多维空间两点与所设定的点形成夹角的余弦值。 范围:[-1,1],值越大,说明夹角越大,两点相距就越远,相似度就越小。 说明:在数学表达中,如果对两个项的属性进行了数据中心化,计算出来的余弦相似度和皮尔森相似度是一样的,在mahout中,实现了数据中心化的过程,所以皮尔森相似度值也是数据中心化后的余弦相似度。另外在新版本中,Mahout提供了UncenteredCosineSimilarity类作为计算非中心化数据的余弦相似度。 Spearman秩相关系数--Spearman Correlation 类名:SpearmanCorrelationSimilarity 原理:Spearman秩相关系数通常被认为是排列后的变量之间的Pearson线性相关系数。 范围:{-1.0,1.0},当一致时为1.0,不一致时为-1.0。 说明:计算非常慢,有大量排序。针对推荐系统中的数据集来讲,用Spearman秩相关系数作为相似度量是不合适的。 Tanimoto 系数(Tanimoto Coefficient) Tanimoto 系数也称为 Jaccard 系数,是 Cosine 相似度的扩展,也多用于计算文档数据的相似度: 类名:TanimotoCoefficientSimilarity 原理:又名广义Jaccard系数,是对Jaccard系数的扩展,等式为 范围:[0,1],完全重叠时为1,无重叠项时为0,越接近1说明越相似。 说明:处理无打分的偏好数据。 对数似然相似度 类名:LogLikelihoodSimilarity 原理:重叠的个数,不重叠的个数,都没有的个数 说明:处理无打分的偏好数据,比Tanimoto系数的计算方法更为智能。 曼哈顿距离 类名:CityBlockSimilarity 原理:曼哈顿距离的实现,同欧式距离相似,都是用于多维数据空间距离的测度 范围:[0,1],同欧式距离一致,值越小,说明距离值越大,相似度越大。 说明:比欧式距离计算量少,性能相对高。 各相似度计算方法优缺点分析 基于皮尔森相关性的相似度— Pearson correlation-based simila

文档评论(0)

3388813 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档