0


【AI知识点】欧几里得距离(Euclidean Distance)L2距离(L2 Distance)

【AI论文解读】【AI知识点】【AI小项目】【AI战略思考】


欧几里得距离(Euclidean Distance)也称L2距离(L2 Distance),是一种常用的几何距离度量方法,用来计算两个点之间的直线距离。在二维或更高维空间中,欧几里得距离可以看作是“最短路径”的概念。它在机器学习、图像处理、模式识别、聚类分析等领域有广泛的应用。

1. 欧几里得距离的定义

给定两个向量或点

  1. A
  2. =
  3. (
  4. x
  5. 1
  6. ,
  7. x
  8. 2
  9. ,
  10. ,
  11. x
  12. n
  13. )
  14. \mathbf{A} = (x_1, x_2, \dots, x_n)
  15. A=(x1​,x2​,…,xn​)
  16. B
  17. =
  18. (
  19. y
  20. 1
  21. ,
  22. y
  23. 2
  24. ,
  25. ,
  26. y
  27. n
  28. )
  29. \mathbf{B} = (y_1, y_2, \dots, y_n)
  30. B=(y1​,y2​,…,yn​),欧几里得距离的公式为:
  31. d
  32. (
  33. A
  34. ,
  35. B
  36. )
  37. =
  38. (
  39. x
  40. 1
  41. y
  42. 1
  43. )
  44. 2
  45. +
  46. (
  47. x
  48. 2
  49. y
  50. 2
  51. )
  52. 2
  53. +
  54. +
  55. (
  56. x
  57. n
  58. y
  59. n
  60. )
  61. 2
  62. d(\mathbf{A}, \mathbf{B}) = \sqrt{(x_1 - y_1)^2 + (x_2 - y_2)^2 + \dots + (x_n - y_n)^2}
  63. d(A,B)=(x1​−y1​)2+(x2​−y2​)2+⋯+(xn​−yn​)2

或者更一般的形式是:

  1. d
  2. (
  3. A
  4. ,
  5. B
  6. )
  7. =
  8. A
  9. B
  10. 2
  11. d(\mathbf{A}, \mathbf{B}) = \|\mathbf{A} - \mathbf{B}\|_2
  12. d(A,B)=∥AB2

其中,

  1. 2
  2. \|\cdot\|_2
  3. ∥⋅∥2 L2范数,表示向量之间的欧几里得距离。

二维空间中的欧几里得距离

给定两个点

  1. A
  2. =
  3. (
  4. x
  5. 1
  6. ,
  7. y
  8. 1
  9. )
  10. \mathbf{A} = (x_1, y_1)
  11. A=(x1​,y1​)
  12. B
  13. =
  14. (
  15. x
  16. 2
  17. ,
  18. y
  19. 2
  20. )
  21. \mathbf{B} = (x_2, y_2)
  22. B=(x2​,y2​) 在二维平面上,欧几里得距离可以通过勾股定理计算为这两个点之间的直线距离。公式为:
  23. d
  24. (
  25. A
  26. ,
  27. B
  28. )
  29. =
  30. (
  31. x
  32. 2
  33. x
  34. 1
  35. )
  36. 2
  37. +
  38. (
  39. y
  40. 2
  41. y
  42. 1
  43. )
  44. 2
  45. d(\mathbf{A}, \mathbf{B}) = \sqrt{(x_2 - x_1)^2 + (y_2 - y_1)^2}
  46. d(A,B)=(x2​−x1​)2+(y2​−y1​)2

这个公式表示两点在平面上形成的直角三角形的斜边长度。

三维空间中的欧几里得距离

如果是三维空间中的两个点

  1. A
  2. =
  3. (
  4. x
  5. 1
  6. ,
  7. y
  8. 1
  9. ,
  10. z
  11. 1
  12. )
  13. \mathbf{A} = (x_1, y_1, z_1)
  14. A=(x1​,y1​,z1​)
  15. B
  16. =
  17. (
  18. x
  19. 2
  20. ,
  21. y
  22. 2
  23. ,
  24. z
  25. 2
  26. )
  27. \mathbf{B} = (x_2, y_2, z_2)
  28. B=(x2​,y2​,z2​),它们之间的欧几里得距离为:
  29. d
  30. (
  31. A
  32. ,
  33. B
  34. )
  35. =
  36. (
  37. x
  38. 2
  39. x
  40. 1
  41. )
  42. 2
  43. +
  44. (
  45. y
  46. 2
  47. y
  48. 1
  49. )
  50. 2
  51. +
  52. (
  53. z
  54. 2
  55. z
  56. 1
  57. )
  58. 2
  59. d(\mathbf{A}, \mathbf{B}) = \sqrt{(x_2 - x_1)^2 + (y_2 - y_1)^2 + (z_2 - z_1)^2}
  60. d(A,B)=(x2​−x1​)2+(y2​−y1​)2+(z2​−z1​)2

更高维空间中的欧几里得距离

对于n维空间中的两个点

  1. A
  2. =
  3. (
  4. x
  5. 1
  6. ,
  7. x
  8. 2
  9. ,
  10. ,
  11. x
  12. n
  13. )
  14. \mathbf{A} = (x_1, x_2, \dots, x_n)
  15. A=(x1​,x2​,…,xn​)
  16. B
  17. =
  18. (
  19. y
  20. 1
  21. ,
  22. y
  23. 2
  24. ,
  25. ,
  26. y
  27. n
  28. )
  29. \mathbf{B} = (y_1, y_2, \dots, y_n)
  30. B=(y1​,y2​,…,yn​),它们之间的欧几里得距离为:
  31. d
  32. (
  33. A
  34. ,
  35. B
  36. )
  37. =
  38. i
  39. =
  40. 1
  41. n
  42. (
  43. x
  44. i
  45. y
  46. i
  47. )
  48. 2
  49. d(\mathbf{A}, \mathbf{B}) = \sqrt{\sum_{i=1}^{n} (x_i - y_i)^2}
  50. d(A,B)=i=1n​(xi​−yi​)2

即在每个维度上计算两个点的差值的平方,取这些平方和的平方根。


2. 欧几里得距离的计算示例

示例1:二维空间中的欧几里得距离

假设有两个点

  1. A
  2. =
  3. (
  4. 1
  5. ,
  6. 2
  7. )
  8. \mathbf{A} = (1, 2)
  9. A=(1,2)
  10. B
  11. =
  12. (
  13. 4
  14. ,
  15. 6
  16. )
  17. \mathbf{B} = (4, 6)
  18. B=(4,6),它们在二维平面上的欧几里得距离可以计算如下:
  19. d
  20. (
  21. A
  22. ,
  23. B
  24. )
  25. =
  26. (
  27. 4
  28. 1
  29. )
  30. 2
  31. +
  32. (
  33. 6
  34. 2
  35. )
  36. 2
  37. =
  38. 3
  39. 2
  40. +
  41. 4
  42. 2
  43. =
  44. 9
  45. +
  46. 16
  47. =
  48. 25
  49. =
  50. 5
  51. d(\mathbf{A}, \mathbf{B}) = \sqrt{(4 - 1)^2 + (6 - 2)^2} = \sqrt{3^2 + 4^2} = \sqrt{9 + 16} = \sqrt{25} = 5
  52. d(A,B)=(41)2+(62)2​=32+42​=9+16​=25​=5

因此,这两个点之间的欧几里得距离为5。

示例2:三维空间中的欧几里得距离

假设有两个点

  1. A
  2. =
  3. (
  4. 1
  5. ,
  6. 2
  7. ,
  8. 3
  9. )
  10. \mathbf{A} = (1, 2, 3)
  11. A=(1,2,3)
  12. B
  13. =
  14. (
  15. 4
  16. ,
  17. 6
  18. ,
  19. 8
  20. )
  21. \mathbf{B} = (4, 6, 8)
  22. B=(4,6,8),它们在三维空间中的欧几里得距离为:
  23. d
  24. (
  25. A
  26. ,
  27. B
  28. )
  29. =
  30. (
  31. 4
  32. 1
  33. )
  34. 2
  35. +
  36. (
  37. 6
  38. 2
  39. )
  40. 2
  41. +
  42. (
  43. 8
  44. 3
  45. )
  46. 2
  47. =
  48. 3
  49. 2
  50. +
  51. 4
  52. 2
  53. +
  54. 5
  55. 2
  56. =
  57. 9
  58. +
  59. 16
  60. +
  61. 25
  62. =
  63. 50
  64. 7.07
  65. d(\mathbf{A}, \mathbf{B}) = \sqrt{(4 - 1)^2 + (6 - 2)^2 + (8 - 3)^2} = \sqrt{3^2 + 4^2 + 5^2} = \sqrt{9 + 16 + 25} = \sqrt{50} \approx 7.07
  66. d(A,B)=(41)2+(62)2+(83)2​=32+42+52​=9+16+25​=50​≈7.07

因此,这两个点之间的距离约为7.07。


3. 欧几里得距离的直观理解

欧几里得距离可以直观地理解为平面或空间中的“直线距离”或“最短路径”。它基于勾股定理,计算两个点之间的直线距离。

例子:

在日常生活中,如果你在城市的一个街区(点A),想要到达另一条街(点B),欧几里得距离就是从A到B的直线距离。如果你可以无视街道和建筑物,直接穿越到目标点,所走的距离就是欧几里得距离。

在更高维的向量空间中,这一概念仍然适用:欧几里得距离是两个向量之间的直线距离,描述了它们在向量空间中的“最短”距离。


4. 欧几里得距离的应用场景

a. 聚类分析

在聚类分析中,欧几里得距离常用于衡量数据点之间的相似性。距离越小,表示两个数据点越相似。常见的聚类算法如K-means使用欧几里得距离来决定数据点和聚类中心之间的距离,并根据距离将数据点划分到最接近的簇中。

b. 图像处理

在图像处理任务中,欧几里得距离可以用于衡量图像特征之间的差异。图像可以通过特征向量表示,特征向量之间的欧几里得距离可以衡量图像的相似性。

c. 最近邻算法(K-NN)

在K近邻算法(K-NN)中,欧几里得距离用于衡量新样本和训练集中每个样本之间的距离。距离最近的K个点用于预测新样本的类别。


5. 欧几里得距离的优缺点

优点:

  1. 简单直观:欧几里得距离是最常用的距离度量之一,易于理解和计算。
  2. 几何解释:它具有直观的几何解释,代表了两个点之间的最短路径。

缺点:

  1. 维度灾难:在高维空间中,欧几里得距离的效果会受到“维度灾难”影响,即随着维度的增加,数据点之间的距离会趋于相似,从而使得距离度量失效。
  2. 对尺度敏感:欧几里得距离对不同特征的尺度非常敏感。如果不同特征的量纲(单位)不一致,欧几里得距离可能会被主导量纲较大的特征所主导。因此,在应用欧几里得距离之前,通常需要对数据进行归一化或标准化。

6. 欧几里得距离与其他距离度量的对比

a. L1距离(曼哈顿距离 Manhattan Distance)

L2距离是两点之间的直线距离,而L1距离(曼哈顿距离)是两点在各个坐标轴上的绝对差值之和。L1距离不涉及平方操作,因此对噪声的鲁棒性较好,但有时在高维空间中可能表现不如L2距离。公式为:

  1. d
  2. Manhattan
  3. (
  4. A
  5. ,
  6. B
  7. )
  8. =
  9. i
  10. =
  11. 1
  12. n
  13. x
  14. i
  15. y
  16. i
  17. d_{\text{Manhattan}}(\mathbf{A}, \mathbf{B}) = \sum_{i=1}^{n} |x_i - y_i|
  18. dManhattan​(A,B)=i=1n​∣xi​−yi​∣

b. 余弦相似度(Cosine Similarity):

余弦相似度用于衡量两个向量之间的方向相似性,而不是它们的距离。余弦相似度的值范围是

  1. [
  2. 1
  3. ,
  4. 1
  5. ]
  6. [-1, 1]
  7. [−1,1],用于表示两个向量的夹角余弦值。如果两个向量的夹角为0度,表示它们的方向相同,余弦相似度为1。而欧几里得距离关注的是向量之间的“物理距离”。

c. 马氏距离(Mahalanobis Distance)

马氏距离是一种考虑数据分布的距离度量,特别适用于多元正态分布数据。它考虑了变量之间的协方差,因此在不规则数据分布的情况下,马氏距离比欧几里得距离更可靠。


7. 总结

欧几里得距离作为一种简单而有效的距离度量,仍然在机器学习和数据分析中占据着重要地位,尤其是在KNN、K-Means等核心算法中。尽管在高维空间中可能面临维度灾难,但通过适当的预处理、数据降维以及结合其他技术,欧几里得距离依然能够在实际应用中表现出色。


本文转载自: https://blog.csdn.net/weixin_43221845/article/details/142679627
版权归原作者 AI完全体 所有, 如有侵权,请联系我们删除。

“【AI知识点】欧几里得距离(Euclidean Distance)L2距离(L2 Distance)”的评论:

还没有评论