当前位置: 首页 > article >正文

Spearman、Pearson、Euclidean、Cosine、Jaccard,用来衡量不同数据之间的相似性或差异性

1. Spearman相关系数:

  • 用于衡量两个变量之间的排序关系的强度和方向。
  • Spearman相关系数关注的是两个变量的排序一致性,而不关心具体的数值大小。
  • 值的范围为-1到1,1表示完全正相关,-1表示完全负相关,0表示无相关性。
  • 常用于统计分析和数据之间的单调关系检测。

2. Pearson相关系数

  • 衡量不同数据之间相似性或差异性的一种方法。
  • 它主要用于度量两个变量之间的线性相关性。具体来说,Pearson相关系数反映的是两个变量的协同变化趋势,即当一个变量增加或减少时,另一个变量是否以相似的方式变化。
  • 值的范围为-1到1,1表示完全正相关,-1表示完全负相关,0表示无相关性,即两个变量之间没有线性关系。

Spearman与Pearson之间的区别:

  • Pearson 适用于两个变量之间的线性关系,而Spearman适用于单调关系
  • Pearson 处理变量的数据原始值,而 Spearman 处理数据排序值需要先做变换,transform
  • 如果散点图表明“可能是单调的,可能是线性的”关系,最好的选择是 Spearman 而不是 Pearson。即使数据证明是完全线性的,用 Spearman 也不会造成信息丢失。但是,如果不是完全线性但使用 Pearson 系数,会丢失 Spearman 可以捕获的信息,是否单调。http://相关系数: Pearson vs Spearman - ml-butcher的文章 - 知乎 https://zhuanlan.zhihu.com/p/465213120

3. 欧氏距离(Euclidean distance) 

  • 衡量两个之间的“直线”距离,计算公式为点之间各坐标差的平方和的平方根。
  • 在多维空间中常用来衡量两个样本的差异,距离越大表示差异越大
  • 常用于聚类算法(如K-Means)和最近邻算法(如KNN)。
  • 另:欧氏距离可以应用于两个向量之间的比较。它常用于衡量两个向量在多维空间中的“直线”距离,也就是说,两个向量之间的差异程度。

4. 余弦相似度(Cosine similarity)

  • 衡量两个向量之间的角度相似性,计算公式为两个向量点积除以其模长乘积。
  • 取值范围为[-1, 1],1表示完全相似,0表示不相关,-1表示完全相反。
  • 常用于文本相似性分析(如TF-IDF向量化后的文本比较)和推荐系统中。
  • 在PPI网络中,使用随机游走生成的节点向量时,比较向量相似性通常更适合使用余弦距离
  • 原因如下:
  • 向量的方向更重要

    • 在PPI网络中,随机游走生成的向量反映了节点之间的拓扑结构和邻接关系。此时,向量的方向(即节点在网络中的相对位置)往往比向量的绝对大小更重要。
    • 余弦距离衡量的是向量之间的夹角,即方向上的相似性,而不考虑向量的长度。因此,适用于比较基于网络拓扑生成的向量。
  • 降低向量长度的影响

    • PPI网络中的节点连接数(度)可能会有较大差异,导致生成的向量大小不同。余弦距离在这种情况下可以消除向量长度对相似性计算的影响,只比较向量的方向。
    • 欧氏距离会受到向量长度的影响,如果节点度数差异较大,使用欧氏距离可能会导致相似性评估不准确。
  • 在网络嵌入应用中的常用做法

    • 在大多数基于图嵌入的应用中(如Node2Vec、DeepWalk等),余弦相似度是常见的选择。它在衡量网络节点的相似性时表现更为稳定。

5. Jaccard相似度(Jaccard similarity): 

  • 衡量两个集合之间的相似性,计算公式为两个集合交集的大小除以并集的大小。
  • 取值范围为[0, 1],1表示完全相似,0表示完全不同。
  • 常用于集合相似性比较,如文本、标签或分类数据的比较。

 


http://www.kler.cn/news/361903.html

相关文章:

  • 2024软件测试面试秘籍(含答案+文档)
  • 基于知识图谱的美食推荐系统
  • 深度学习——线性神经网络(五、图像分类数据集——Fashion-MNIST数据集)
  • Flutter Container容器组件实战案例
  • 导数的概念及在模型算法中的应用
  • 天线有源数据和无源数据有什么区别
  • 【Linux】从 fork() 到 exec():理解 Linux 进程程序替换的魔法
  • gbn,sr和tcp的区别
  • Oracle VM的网络中桥接网卡找不到网络
  • UEFI EDK2框架学习 (四)——UEFI图形化
  • 设计模式05-创建型模式(建造者/原型/单例模式/Java)
  • 使用js和canvas实现绘制一只丑萌的小猫,一步步绘制
  • 电感的学习
  • Tomcat怎么调整参数以优化性能
  • 【MySQL备份】Percona XtraBackup
  • 中医大模型开源!数据集开源!自己训练一个中医大模型吧!
  • 简单介绍冯诺依曼体系
  • 深入理解 JavaScript 中的剩余参数和扩展运算符
  • 对比学习)
  • C++ 标准库:功能与应用解析
  • 考研408考试科目之计算机数据结构在科技应用——未来之窗学习通
  • 安卓設備上怎麼設置HTTP代理?
  • IIS不能使用Delete方法
  • Spring事务底层源码解析(二)
  • 大数据分析案例-基于随机森林模型的机器学习工程师岗位薪资预测
  • SQLI LABS | Less-3 GET-Error based-Single quotes with twist-String