相似性_相似性计算 - CSDN
精华内容
参与话题
  • 常用的相似性度量指标

    千次阅读 2019-12-22 15:19:51
    相似性度量,即综合评定两个事物之间相近程度的一种度量。两个事物越接近,它们的相似性度量也就越大,而两个事物越疏远,它们的相似性度量也就越小。相似性度量的给法种类繁多,一般根据实际问题进行选用。 1. ...

    相似性度量,即综合评定两个事物之间相近程度的一种度量。两个事物越接近,它们的相似性度量也就越大,而两个事物越疏远,它们的相似性度量也就越小。相似性度量的给法种类繁多,一般根据实际问题进行选用。

    1. 余弦相似度

    2. 曼哈顿距离

    3. 切比雪夫距离

    4. 简单匹配系数 

    5. jaccard 相似度

    5.1 Jaccard系数

    5.2 jaccard 距离

    5.3 举例 

    6. 皮尔逊相关系数


    1. 余弦相似度

    自然语言处理中,常采用余弦相似度进行文档相似性度量手段,假定AB是两个n维文档向量,A[A1, A2, ..., An] B[B1, B2, ..., Bn] ,则AB余弦相似度等于:

    $$ \cos \theta=\frac{x_{1} x_{2}+y_{1} y_{2}}{\sqrt{x_{1}^{2}+y_{1}^{2}} \times \sqrt{x_{2}^{2}+y_{2}^{2}}} $$

    2. 曼哈顿距离

    设平面空间内存在两点,它们的坐标为(x1,y1),(x2,y2),则dis=|x1−x2|+|y1−y2|,即两点横纵坐标差之和。

    3. 切比雪夫距离

    设平面空间内存在两点,它们的坐标为(x1,y1),(x2,y2),则dis=max(|x1−x2|,|y1−y2|),即两点横纵坐标差的最大值。

    曼哈顿距离和切比雪夫距离之间的相互转换关系,请移步至:曼哈顿距离与切比雪夫距离及其相互转化

    4. 简单匹配系数 

    简单匹配系数(simple matching coefficient)的定义如下:

    设x和y是两个对象,都有n个二元属性组成。这两个对象(二元向量)进行比较,可以生成4个量:

    • f00=x取0且y取0的属性个数;
    • f10=x取1且y取0的属性个数;
    • f01=x取0且y取1的属性个数;
    • f11=x取1且y取1的属性个数;
    SMC=值匹配的属性个数/属性个数=(f11+f00)/(f01+f10+f00+f11)

    5. jaccard 相似度

    5.1 Jaccard系数

    Jaccard系数(jaccard index)又称为Jaccard 相似度(jaccard similarity coefficient),用于比较有限样本集之间的相似性和差异性。给定两个集合A,B jaccard 系数定义为A与B交集的大小并集大小比值,jaccard值越大说明相似度越高。

    $$ J(A, B)=\frac{|A \cap B|}{|A \cup B|}=\frac{|A \cap B|}{|A|+|B|-|A \cap B|} $$

    当A和B都为空时,jaccard(A,B)=1;

    jaccard相似度的缺点是只适用于二元数据的集合。

    5.2 jaccard 距离

    与jaccard 系数相关的指标是jaccard距离用于描述不相似度,公式为

    $$ d_{j}(A, B)=1-J(A, B)=\frac{|A \cup B|-|A \cap B|}{|A \cup B|}=\frac{A \Delta B}{|A \cup B|} $$

    5.3 举例 

    举一个非对称(注意这里强调非对称)二元属性的相似度的例子。

    二元属性:取值为0或者1的属性,所以也成为布尔属性

    对称二元属性:属性的两个状态的权重相同,例如:“性别”这一属性的取值“男性”,“女性”。

    非对称二元属性:即状态的权重不相同,例如:“HIV”有“阴性”和“阳性”,阳性比较稀少,更重要。

    已知有序集合A,B,每个集合都含有n个二元的属性,即每个属性都是0或1,其中:

    • M11表示A和B对应位都是1的属性的数量
    • M10表示A中为1,B中对应位为0的总数量
    • M01表示A中为0,B中对应位为1的总数量
    • M00表示对应位都为0的总数量

    则满足:M11+M10+M01+M00=n。

    Jaccard 相似度

    $$ J=\frac{M_{11}}{M_{01}+M_{10}+M_{11}} $$

    jaccard距离

    $$ d_{J}=\frac{M_{01}+M_{10}}{M_{01}+M_{10}+M_{11}}=1-J $$

    这里有人会有疑问,jaccard相似度是指交集和并集的比值,但是,这里J的分子为什么只有M11没有M00?

    这是因为我们求的是非对称二元属性的相似度,这里只有非0值才受关注,比如考虑普通人的健康状况,属性集合(糖尿病,心脏病,精神病等),糖尿病指标0表示没有糖尿病,1表示糖尿病,心脏病指标0表示没有心脏病,1表示心脏病,比较两个人的患病情况,我们只关注有病的情况。所以分子和分母中没有M00。

    更多详情,请移步至:jaccard相似度

    6. 皮尔逊相关系数

    Pearson相关系数 (Pearson CorrelationCoefficient)是用来衡量两个数据集合是否在一条线上面,定义如下:

    $$ \rho_{X Y}=\frac{\operatorname{Cov}(\mathrm{X}, \mathrm{Y})}{\sqrt{D(X)} \sqrt{D(Y)}}=\frac{E((\mathrm{X}-\mathrm{EX})(Y-E Y))}{\sqrt{D(X)} \sqrt{D(Y)}} $$

     其中:D(X)为X的方差,D(Y)为Y的方差。

    根据施瓦茨不等式可以得到-1<=Corr(X,Y)<=1,这样就可以定量的分析两个随机变量的相关性了。

    • Corr(X,Y)=1的时候,说明两个随机变量完全正相关,即满足Y=aX+b,a>0。考虑Corr(X,X),两个随机变量相同,肯定满足线性关系,此时,Cov(X,X)=Var(X),容易得到Corr(X,Y)=1;
    • Corr(X,Y)=-1的时候,说明两个随机变量完全负相关,即满足Y=-aX+b,a>0;
    • 0<| Corr(X,Y)|<1的时候,说明两个随机变量具有一定程度的线性关系。

    相关距离: 

    $$ D_{x y}=1-\rho_{X y} $$

    举例:

     

    身高X(cm)

    体重Y(500g)

    1

    152

    92

    2

    185

    162

    3

    169

    125

    4

    172

    118

    5

    174

    122

    6

    168

    135

    7

    180

    168

    E(X)=(152+185+169+172+174+168+180)/7=171.43
    
    E(Y)=(92+162+125+118+122+135+168)/7=131.71
    
    D(X)=((152-171.43)^2+(185-171.43)^2+(169-171.43)^2+(172-171.43)^2+(174-171.43)^2+(168-171.43)^2+(180-171.43)^2)/7=94.24
    
    D(Y)=((92-131.71)^2+(162-131.71)^2+(125-131.71)^2+(118-131.71)^2+(122-131.71)^2+(135-131.71)^2+(168-131.71)^2)/7=592.78
    
    E{[X-E(X)][Y-E(Y)]}=((152-171.43)*(92-131.71)+(185-171.43)*(162-131.71)+(169-171.43)*(125-131.71)+(172-171.43)*(118-131.71)+(174-171.43)*(122-131.71)+(168-171.43)*(135-131.71)+(180-171.43)*(168-131.71))/7=209.41
    
    Corr(X,Y)= 209.41/((94.24)^(1/2)*(592.78)^(1/2))=0.89

    补充说明:Corr(X,Y)为0,表示X与Y不相关,这里的不相关指的是X与Y没有线性关系,但不是没有关系。因此将“相关”理解为“线性相关”也许更恰当一些。

    展开全文
  • 数学基础-相关性和相似度度量

    千次阅读 2018-12-25 17:12:01
    相关性是数据属性相关性的度量方法,相似度是数据对象相似性度量的方法,数据对象由多个数据属性描述,数据属性的相关性由相关系数来描述,数据对象的相似性由某种距离度量。许多数据分析算法会涉及相似性度量和...

    相关性是数据属性相关性的度量方法,相似度是数据对象相似性度量的方法,数据对象由多个数据属性描述,数据属性的相关性由相关系数来描述,数据对象的相似性由某种距离度量。许多数据分析算法会涉及相似性度量和相关性度量,如聚类、KNN等。

    相关性度量

    相关性用相关系数来度量,相关系数种类如下图所示。相关系数绝对值越大表是相关性越大,相关系数取值在-1–1之间,0表示不相关。各系数计算表达式和取值范围参考 相关性与相似性度量
    这里写图片描述

    相似性度量

    相似度用距离来度量,相似度度量指标种类如下图所示。相似度通常是非负的,取值在0-1之间。距离越大,相似性越小,在应用过程中要注意计算的是相似度还是距离。
    这里写图片描述
    Jaccard(杰卡德相似系数)
    两个集合A和B的交集元素在A,B的并集中所占的比例 这里写图片描述
    杰卡德距离用两个集合中不同元素占所有元素的比例来衡量两个集合的区分度这里写图片描述
    Cosine(余弦相似度)
    在二维空间中向量A(x1,y1)与向量B(x2,y2)的夹角余弦公式这里写图片描述
    夹角余弦取值范围为[-1,1]。当两个向量的方向重合时夹角余弦取最大值1,当两个向量的方向完全相反夹角余弦取最小值-1,两个方向正交时夹角余弦取值为0.

    Minkowski Distance(闵可夫斯基距离)
    两个n维变量间的闵可夫斯基距离定义为:这里写图片描述
    当p=1时,就是曼哈顿距离,两点间各边距离之和
    当p=2时,就是欧氏距离,两点间直线距离
    当p→∞时,就是切比雪夫距离,所有边距离的最大值
    闵氏距离的缺点(1)数据量纲不同,无法直接进行距离计算,需要先对数据进行归一化(2)没有考虑各个分量的分布(期望,方差等)。下图展示了不同距离函数是怎么逼近中心的在这里插入图片描述

    Mahalanobis Distance(马氏距离)
    马氏距离计算公式为这里写图片描述
    S为协方差矩阵, 若协方差矩阵是单位矩阵则变为欧式距离。马氏距离的优点是量纲无关、排除变量之间的相关性的干扰。

    Hamming distance(汉明距离)
    两个等长字符串s1与s2之间的汉明距离定义为将其中一个变为另外一个所需要作的最小替换次数。例如字符串“1111”与“1010”之间的汉明距离为2。信息编码时为了增强容错性,应使得编码间的最小汉明距离尽可能大。

    K-L散度(相对熵)
    是衡量两个分布(P、Q)之间的距离;越小越相似这里写图片描述
    Hellinger距离
    在概率论和统计理论中,Hellinger距离被用来度量两个概率分布的相似度。它是f散度的一种(f散度——度量两个概率分布相似度的指标)。
    概率密度函数分别表示为 f 和 g,两个概率密度函数的Hellinger距离的平方为
    在这里插入图片描述

    具有混合类型属性的对象可以将相同类型的属性划分为一组,对每组属性分析继续相似度度量,也可以分别对每个属性进行相似度度量再加权。

    其他类型的距离度量可以参考 18种和“距离(distance)”、“相似度(similarity)”相关的量的小结

    本文内容参考以下链接,写博客的目的是学习的总结和知识的共享,如有侵权,请与我联系,我将尽快处理
    https://blog.csdn.net/solomonlangrui/article/details/47454805
    http://www.docin.com/p-738642884.html
    http://bluewhale.cc/2016-06-30/analysis-of-correlation.html
    https://blog.csdn.net/a200800170331/article/details/12912997
    https://blog.csdn.net/bbbeoy/article/details/78617680

    展开全文
  • 相似性

    千次阅读 2018-05-04 15:21:38
    拓扑相似性语义相似性(semantic similarity)定义在一组文档上或者术语上的度量,他们之间的距离基于他们的意义或者语义内容的相似性,而不是语法表示上的相似性。我们可以通过定义拓扑相似性来估计语义相似性。...

    拓扑相似性


    语义相似性(semantic similarity)定义在一组文档上或者术语上的度量,他们之间的距离基于他们的意义或者语义内容的相似性,而不是语法表示上的相似性。我们可以通过定义拓扑相似性来估计语义相似性。

    生物医学上的应用:它们主要用于比较基因和蛋白质的功能相似性,而不是它们的序列相似性,但它们也正在扩展到其他生物实体,如化合物,解剖实体和疾病等方面。

    常用来计算相似性:

    1.jaccard 相似性:Jaccard指数也称为交集交汇点和Jaccard相似系数(Paul Jaccard最初创造的系数),是用于比较样本集的相似性和多样性的统计量。 Jaccard系数测量有限样本集之间的相似性,并将其定义为交点的大小除以样本集的并集大小:如果AB都是空集的话,也定义为J(A,B) = 1.

    如上图,如果所交的区域或者说样本集比较大的话,我们就可以说他们之间的相似性较大。


    维基链接:https://en.wikipedia.org/wiki/Jaccard_index

    2.高斯相似性:高斯核函数的相似性,可见https://www.cnblogs.com/yan2015/p/5182144.html

    3.余弦相似性:余弦相似度是衡量内积空间的两个非零向量之间相似度的度量,它衡量它们之间角度的余弦。具体就是根据词句的内容以及词频,生成向量。计算他们之间的余弦大小,越接近1越相似。更详细的介绍可点击链接http://www.ruanyifeng.com/blog/2013/03/cosine_similarity.html



    常见的相似性度量:见地址https://blog.csdn.net/xholes/article/details/52708854

    展开全文
  • 相似性度量总结

    2020-02-06 19:37:51
    狭义Jaccard相似度,计算两个集合之间的相似程度,元素的“取值”为0或1 对集合A和B,Jaccard相似度计算如下: Jaccard(A, B)= |A intersectB| / |A union B| 相似度数值在[0, 1]之间,当A==B的时候,为1. 优缺点...

    cosine

    img

    Jaccard系数(杰卡德系数)

    img

    cosine更适合稠密空间,Jaccard和tfidf都适合稀疏空间.

    狭义Jaccard相似度,计算两个集合之间的相似程度,元素的“取值”为0或1

    对集合A和B,Jaccard相似度计算如下:

    Jaccard(A, B)= |A intersectB| / |A union B|

    相似度数值在[0, 1]之间,当A==B的时候,为1. 优缺点,就是元素的取值只能是0或者1,无法利用更丰富的信息

    由相似度,可以转换成Jaccard距离:

    Jaccard distance (A, B) = 1- Jaccard(A, B)

    TF-IDF

    大概估计文本相似度时,使用TF就可以了。当我们使用文本相似度进行检索的类似场景时(如搜索引擎中的query relevence的计算),此时TF-IDF更好一些。

    1. tf/tf-idf为每一个词汇计算得到一个数字,而word embedding将词汇表示成向量
    2. tf/tf-idf在文本分类的任务中表现更好一些,而word embedding的方法更适用于来判断上下文的语义信息(这可能是由word embedding的计算方法决定的)。

    曼哈顿距离

    如果直接使用AB的欧氏距离(欧几里德距离:在二维和三维空间中的欧氏距离的就是两点之间的距离),则必须要进行浮点运算,如果使用AC和CB,则只要计算加减法即可,这就大大提高了运算速度,而且不管累计运算多少次,都不会有误差。

    欧几里得距离(Eucledian Distance)

    欧氏距离是最常用的距离计算公式,衡量的是多维空间中各个点之间的绝对距离,当数据很稠密并且连续时,这是一种很好的计算方式。

    因为计算是基于各维度特征的绝对数值,所以欧氏度量需要保证各维度指标在相同的刻度级别,比如对身高(cm)和体重(kg)两个单位不同的指标使用欧式距离可能使结果失效。

    明可夫斯基距离(Minkowski distance)

    展开全文
  • 在做分类时常常需要估算不同样本之间的相似性度量(SimilarityMeasurement),这时通常采用的方法就是计算样本间的“距离”(Distance)。采用什么样的方法计算距离是很讲究,甚至关系到分类的正确与否。  本文的目的...
  • 数据相似性的度量方法总结

    万次阅读 多人点赞 2016-10-31 16:29:48
    而对数据相似性的度量又是数据挖掘分析中非常重要的环节。针对这些不同形式的数据,不可能找到一种具备普遍意义的相似性度量算法,甚至可以说,每种类型的数据都有它对应的相似度度量标准。这些标准很多,也比较杂乱...
  • 向量相似性度量方法总结

    万次阅读 2018-02-23 15:00:38
    出处:https://www.cnblogs.com/liujinhong/p/6001997.html距离计算方法总结 在做分类时常常需要估算不同样本之间的相似性度量(Similarity Measurement)... 本文的目的就是对常用的相似性度量作一个总结。本文...
  • 序列的相似性

    千次阅读 2019-05-04 08:02:20
    序列的相似性可以是定量的数值,也可以是定性的描述。相似度是一个数值,反映两条序列的相似程度。关于两条序列之间的关系,有许多名词,如相同、相似、同源、同功、直向同源、共生同源等。在进行序列比较时经常使用...
  • 时间序列相似性度量-DTW

    万次阅读 多人点赞 2020-06-04 14:45:24
    最近项目中遇到求解时间序列相似性问题,这里序列也可以看成向量。在传统算法中,可以用余弦相似度和pearson相关系数来描述两个序列的相似度。但是时间序列比较特殊,可能存在两个问题: 两段时间序列长度不同。...
  • 数据测量与相似性分析

    千次阅读 2019-07-28 18:28:39
    这篇文章中主要记录如何分析样本间相似性的内容,相似性分析在分类算法(如K最邻近分类)和聚类任务中会涉及到。相似性分析基于样本属性取值,因此对于样本属性类型及其取值的特征也有必要说明。 1.数据测量及属性...
  • 数据相似性检测算法

    千次阅读 热门讨论 2010-09-08 20:46:00
    本文研究了数据相似性的计算方法,对Bloom filter和LCS两种常用相似性检测算法进行剖析、实现和分析比较。
  • 相似性度量(距离及相似系数)

    万次阅读 2016-06-30 17:39:29
    在分类聚类算法中,时常需要计算两个变量(通常是向量的形式)的距离,即相似性度量。其中,距离度量的性质:非负性,自反性,对称性和三角不等式。  本文的目的就是对常用的相似性度量作一个总结。 ...
  • 图像质量评估算法 SSIM(结构相似性)

    万次阅读 多人点赞 2017-04-14 09:20:21
    SSIM的全称为structural similarity index,即为结构相似性,是一种衡量两幅图像相似度的指标。该指标首先由德州大学奥斯丁分校的图像和视频工程实验室(Laboratory for Image and Video Engineering)提出。而如果...
  • 时间序列相似性搜索总结

    万次阅读 2015-08-18 09:33:06
    对时序相似性搜索进行了总结,时序相似性搜索主要包括时序数据呈现技术以及时序数据相似性测量。这篇博文是对读过的论文的总结,对时序数据相似性搜索的过程梳理出一个框架。
  • 协同过滤推荐及相似性度量

    万次阅读 2014-01-08 10:42:22
    协同过滤 —— Collaborative Filtering 协同过滤简单来说就是根据目标用户的行为特征,为他发现一个兴趣相投、拥有共同经验的群体,然后根据群体的喜好来为目标用户过滤可能感兴趣的内容。 ...
  • 图像相似性度量

    万次阅读 2013-01-12 16:22:37
    图像相似性度量 【转载】原文出处:http://blog.sina.com.cn/s/blog_4a540be60100vjae.html   图像相似度计算主要用于对于两幅图像之间内容的相似程度进行打分,根据分数的高低来判断图像内容的相近程度。  ...
  • 字符串相似性的几种度量方法

    万次阅读 2016-11-09 21:58:57
    无论是做科学研究,还是工程项目,我们总是会碰上要比较字符串的相似性,比如拼写纠错、文本去重、上下文相似性等。度量的方法有很多,到底使用哪一种方法来计算相似性,这就需要我们根据情况选择合适的方法来计算。...
  • SimRank 是在有向图中测量顶点对间相似性的重要措施。 SimRank 是一个评估任意两个对象之间相似性的模型,核心思想是:如果两个对象的引用是相似的,那么这两个对象也是相似的。它的定义有两种: (1), 其中NI(u)...
  • 机器学习中的相似性度量

    万次阅读 2013-06-10 09:41:45
    机器学习中的相似性度量 发表于 2012-01-03  在做分类时常常需要估算不同样本之间的相似性度量(Similarity Measurement),这时通常采用的方法就是计算样本间的“距离”(Distance)。采用什么样的方法计算...
  • 时间序列相似性

    千次阅读 2017-10-15 12:55:29
    对于两个序列来说,如果要比较两个波形的相似程度,可以使用DWT(动态时间规整)的方法...DTW通过把时间序列进行延伸和缩短,来计算两个时间序列性之间的相似性。 1,两个要进行匹配的数据A=[A1,A2,...An]和B=[B1,B
1 2 3 4 5 ... 20
收藏数 625,920
精华内容 250,368
关键字:

相似性