主页 > 游戏开发  > 

欧氏距离、曼哈顿距离、切比雪夫距离、闵可夫斯基距离、马氏距离理解学习

欧氏距离、曼哈顿距离、切比雪夫距离、闵可夫斯基距离、马氏距离理解学习

目录 一、欧氏距离(Euclidean Distance)公式:原理: 二、曼哈顿距离(Manhattan Distance)公式:原理: 三、切比雪夫距离(Chebyshev Distance)公式:原理: 四、闵可夫斯基距离(Minkowski Distance)公式:原理: 五、马氏距离(Mahalanobis Distance)公式:原理:

一、欧氏距离(Euclidean Distance)

欧氏距离是最常见的距离度量之一,用于计算两个点之间的直线距离。

公式:

对于二维空间中的两个点   P ( x 1 , y 1 ) \ P(x_1, y_1)  P(x1​,y1​) 和   Q ( x 2 , y 2 ) \ Q(x_2, y_2)  Q(x2​,y2​):

d ( P , Q ) = ( x 2 − x 1 ) 2 + ( y 2 − y 1 ) 2 d(P, Q) = \sqrt{(x_2 - x_1)^2 + (y_2 - y_1)^2} d(P,Q)=(x2​−x1​)2+(y2​−y1​)2 ​

在   n \ n  n 维空间中(   P n ( x 1 , x 2 , . . . , x n ) \ P_n(x_1,x_2,...,x_n)  Pn​(x1​,x2​,...,xn​);   Q n ( y 1 , y 2 , . . . , y n ) \ Q_n(y_1,y_2,...,y_n)  Qn​(y1​,y2​,...,yn​)),计算公式为: d ( P , Q ) = ∑ i = 1 n ( x i − y i ) 2 d(P, Q) = \sqrt{\sum_{i=1}^{n} (x_i - y_i)^2} d(P,Q)=i=1∑n​(xi​−yi​)2 ​ 注意是n维,而不是n个点,就是我们从初中到高中经常用到的距离公式!

原理: 计算两点间的直线最短路径。适用于几何计算和机器学习中的距离计算。
二、曼哈顿距离(Manhattan Distance)

曼哈顿距离度量的是沿坐标轴方向的距离,而非直线距离。

公式:

对于二维空间中的两个点   P ( x 1 , y 1 ) \ P(x_1, y_1)  P(x1​,y1​) 和   Q ( x 2 , y 2 ) \ Q(x_2, y_2)  Q(x2​,y2​):

d ( P , Q ) = ∣ x 2 − x 1 ∣ + ∣ y 2 − y 1 ∣ d(P, Q) = |x_2 - x_1| + |y_2 - y_1| d(P,Q)=∣x2​−x1​∣+∣y2​−y1​∣

在   n \ n  n 维空间中,公式为:

d ( P , Q ) = ∑ i = 1 n ∣ x i − y i ∣ d(P, Q) = \sum_{i=1}^{n} |x_i - y_i| d(P,Q)=i=1∑n​∣xi​−yi​∣

原理: 适用于网格状城市(如曼哈顿街道)。仅允许水平或垂直方向的移动。
三、切比雪夫距离(Chebyshev Distance)

切比雪夫距离计算的是最大坐标轴差异,适用于棋盘格场景。

公式:

对于二维空间中的两个点   P ( x 1 , y 1 ) \ P(x_1, y_1)  P(x1​,y1​) 和   Q ( x 2 , y 2 ) \ Q(x_2, y_2)  Q(x2​,y2​):

d ( P , Q ) = max ⁡ ( ∣ x 2 − x 1 ∣ , ∣ y 2 − y 1 ∣ ) d(P, Q) = \max(|x_2 - x_1|, |y_2 - y_1|) d(P,Q)=max(∣x2​−x1​∣,∣y2​−y1​∣)

在   n \ n  n 维空间中,公式为:

d ( P , Q ) = max ⁡ i = 1 n ∣ x i − y i ∣ d(P, Q) = \max_{i=1}^n |x_i - y_i| d(P,Q)=i=1maxn​∣xi​−yi​∣

原理: 适用于国际象棋中的国王移动(八个方向)。计算最短步数时较为常见。
四、闵可夫斯基距离(Minkowski Distance)

闵可夫斯基距离是欧氏距离和曼哈顿距离的广义形式,通过调整参数   p \ p  p 来控制计算方式。

公式:

对于   n \ n  n 维空间中的两个点:

d ( P , Q ) = ( ∑ i = 1 n ∣ x i − y i ∣ p ) 1 p d(P, Q) = \left( \sum_{i=1}^{n} |x_i - y_i|^p \right)^{\frac{1}{p}} d(P,Q)=(i=1∑n​∣xi​−yi​∣p)p1​

当   p = 1 \ p = 1  p=1 时,闵可夫斯基距离等于曼哈顿距离。当   p = 2 \ p = 2  p=2 时,闵可夫斯基距离等于欧氏距离。 原理: 适用于灵活调整不同计算方式的场景。通过改变   p \ p  p 值,可适配不同任务。
五、马氏距离(Mahalanobis Distance)

马氏距离是一种考虑数据分布的距离度量方式,它不仅计算点之间的距离,还考虑变量的协方差关系。

公式:

对于两个点   P \ P  P 和   Q \ Q  Q,马氏距离定义为:

d ( P , Q ) = ( P − Q ) T Σ − 1 ( P − Q ) d(P, Q) = \sqrt{(P - Q)^T \Sigma^{-1} (P - Q)} d(P,Q)=(P−Q)TΣ−1(P−Q) ​

其中:

  Σ − 1 \ \Sigma^{-1}  Σ−1 为数据的协方差矩阵的逆。 原理: 适用于多维数据分析,考虑特征之间的相关性。常用于异常检测和**主成分分析(PCA)**等领域。

不同的距离度量方法适用于不同的任务场景,选择合适的距离计算方式能提高算法的效果!

标签:

欧氏距离、曼哈顿距离、切比雪夫距离、闵可夫斯基距离、马氏距离理解学习由讯客互联游戏开发栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“欧氏距离、曼哈顿距离、切比雪夫距离、闵可夫斯基距离、马氏距离理解学习