自学内容网 自学内容网

【AI知识】距离度量和相似性度量的常见算法

本文介绍一些AI中常见的距离度量和相似性度量算法:

1. 欧几里得距离(Euclidean Distance)

欧几里得距离是最常见的距离度量方法,用来计算两个向量之间的“直线距离”,也被成为L2范数。

公式如下,其中 x x x y y y 是两个n维向量, x i x_i xi y i y_i yi 分别是它们的第 i i i 个分量。
在这里插入图片描述
应用示例: 在图像识别或聚类算法(如K-Means)中,欧几里得距离常用于度量数据点之间的相似性。


2. 曼哈顿距离(Manhattan Distance)

曼哈顿距离也称为“L1距离”或“城市街区距离”,它是两个向量之间的绝对坐标差值之和。
在这里插入图片描述
应用示例: 在图像处理中,可以将图像的像素值表示为向量,通过计算不同图像像素向量之间的曼哈顿距离,衡量图像的相似性。


3. 余弦相似度(Cosine Similarity)

余弦相似度衡量的是两个向量之间的夹角余弦值,用于评估两个向量在方向上的相似性。

公式如下,其中 x ⋅ y x \cdot y xy 表示向量的点积, ∥ x ∥ ∥x∥ x ∥ y ∥ ∥y∥ y 是向量的范数(有L1范数,即曼哈顿距离,L2范数,即欧几里得距离),(即向量的长度)。计算出的余弦相似性值介于 [−1,1] 之间,值越接近1,两个向量的方向越相似,值越接近-1,则表示两个向量的方向越相反,值为0则表示它们是正交的(即完全不相似)。
应用示例: 在自然语言处理(NLP)中,将文本表示为词向量,通过计算不同文本向量之间的余弦相似度,可衡量文本的语义相似性。


4. 闵可夫斯基距离(Minkowski Distance)

闵可夫斯基距离是欧几里得距离和曼哈顿距离的广义形式,参数 p p p 控制距离计算的形式。当 p = 1 p=1 p=1 时,它是曼哈顿距离;当 p = 2 p=2 p=2 时,它是欧几里得距离。
在这里插入图片描述
应用示例: 闵可夫斯基距离在需要调整距离度量灵活性时使用广泛。


5. 切比雪夫距离(Chebyshev Distance)

切比雪夫距离是向量分量之间最大差值的度量,用于衡量两个向量在一个维度上的最大变化。
在这里插入图片描述
应用示例: 切比雪夫距离常用于棋盘上棋子的移动问题(如国际象棋中的国王),因为它考虑的是最大一步距离。


6. 马氏距离(Mahalanobis Distance)

马氏距离(Mahalanobis Distance)是一种距离的度量,可以看作是欧氏距离的一种修正,它考虑了各个维度的不同尺度,还考虑了数据的相关性,即协方差结构

  • 一个点和总体数据集之间的马氏距离:
    在这里插入图片描述
    在这里插入图片描述

  • 两个点之间的马氏距离:
    在这里插入图片描述

应用示例: 马氏距离在异常检测和聚类算法中使用,特别是在数据具有不同尺度和相关性的情况下。


7. 汉明距离(Hamming Distance)

汉明距离用于计算两个等长向量(通常是二进制向量)中不相同位置的个数。

公式:
其中, I ( x i ≠ y i ) I(x_i \neq y_i) I(xi=yi)为指示函数,当 x i x_i xi y i y_i yi 不相等时值为1,否则为0。

应用示例: 汉明距离常用于衡量两个字符串或二进制序列之间的差异,广泛用于纠错码和信息编码中。


8. Jaccard系数(Jaccard Index)

Jaccard系数(Jaccard Index)是衡量两个集合相似性的一种常用指标。它的定义是两个集合交集的大小与两个集合并集的大小之比。Jaccard系数的值范围从0到1,0表示完全不相似,1表示完全相似。
在这里插入图片描述
应用示例: 在自然语言处理和信息检索中,Jaccard系数常用于比较文档的相似性,尤其是在处理词袋模型(Bag of Words)时。


9.什么是点积?

点积(dot product),也叫内积(inner product),是两个向量之间的一种运算,通常用于衡量两个向量的相似性或相关性。

点积的定义:
在这里插入图片描述点积的几何解释: 在这里插入图片描述

应用示例: 在机器学习和自然语言处理中,点积常用于衡量向量之间的相似性,尤其是在计算余弦相似度时。两个向量越相似,它们的点积越大。


原文地址:https://blog.csdn.net/qq_45791939/article/details/143027477

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!