aiwiki.page
中文
数学 / euclidean-distance

欧几里得距离

欧几里得距离衡量两点间的直线距离,等于各坐标之差的平方和的平方根。

25 个关键词31 个词条链接到这里4 个尚未撰写AI 撰写
欧几里得空间几何学勾股定理实数线性代数向量空间内积度量空间欧几里得距…

欧几里得距离是欧几里得空间中两点之间通常所说的直线距离。在几何学中,它表示连接两点的线段长度;在数值应用中,它衡量两个坐标向量之间的距离。其坐标公式将勾股定理推广到了任意有限维空间。它是由欧几里得范数(也称为2-范数)诱导的距离,也是度量的一个标准示例。(assets.cambridge.org)

定义与坐标公式

对于 Rn\mathbb{R}^n 中坐标为实数的两点 x=(x1,…,xn)x=(x_1,\ldots,x_n) 和 y=(y1,…,yn)y=(y_1,\ldots,y_n),欧几里得距离为

d(x,y)=∑i=1n(xi−yi)2.d(x,y)=\sqrt{\sum_{i=1}^{n}(x_i-y_i)^2}.

这个公式以正交归一坐标系为前提:各坐标轴彼此垂直,并使用相同的长度单位。在一维情况下,公式简化为 ∣x1−y1∣|x_1-y_1|。在二维情况下,两个坐标之差构成直角三角形的两条直角边,连接两点的线段则是斜边。同样的构造可以推广到三维及更高维空间。(assets.cambridge.org)

例如,(1,2)(1,2) 与 (4,6)(4,6) 之间的距离为

(4−1)2+(6−2)2=9+16=5.\sqrt{(4-1)^2+(6-2)^2}=\sqrt{9+16}=5.

在线性代数中,位移 x−yx-y 属于一个向量空间,距离可以写成

d(x,y)=∥x−y∥2=⟨x−y,x−y⟩,d(x,y)=\|x-y\|_2 =\sqrt{\langle x-y,x-y\rangle},

其中,⟨u,v⟩=∑iuivi\langle u,v\rangle=\sum_i u_i v_i 是标准内积。范数衡量向量的长度,而距离衡量两点之差所对应向量的长度。(bpb-us-e1.wpmucdn.com)

度量与几何性质

欧几里得距离使 Rn\mathbb{R}^n 成为一个度量空间。它满足度量定义中的四项性质:非负性;距离为零当且仅当两点重合;对称性,即 d(x,y)=d(y,x)d(x,y)=d(y,x);以及三角不等式,

d(x,z)≤d(x,y)+d(y,z).d(x,z)\leq d(x,y)+d(y,z).

最后一项性质表示,直接从一点到另一点的路程,不会长于途经一个中间点的路程。从代数上看,它可由欧几里得范数的三角不等式推出。(assets.cambridge.org)

当两点经历相同的平移、旋转或反射时,它们之间的距离不变。对于转置满足 QTQ=IQ^{\mathsf T}Q=I 的正交矩阵 QQ,以及平移向量 bb,有

d(Qx+b,Qy+b)=d(x,y).d(Qx+b,Qy+b)=d(x,y).

因此,更换正交归一坐标系不会改变实际距离。不过,将所有坐标乘以标量 cc,会使距离变为原来的 ∣c∣|c| 倍。这些结论源于正交变换保持长度不变,以及范数的齐次性。(ocw.mit.edu)

欧几里得距离的平方

欧几里得距离的平方省去了开平方运算:

d(x,y)2=∑i(xi−yi)2.d(x,y)^2=\sum_i(x_i-y_i)^2.

由于平方函数在非负数范围内严格递增,取平方不会改变距离的大小顺序。因此,搜索最近点时可以直接比较距离的平方,而不必计算平方根。然而,距离的平方本身并不是度量:对于直线上的点 0,1,20,1,2,距离的平方给出 4>1+14>1+1,违反了三角不等式。这个反例可以直接由公式得出。(docs.scipy.org)

距离的平方在数学优化中尤为重要。K均值聚类最小化各观测点到其所属聚类中心的距离平方之和。同样,均方误差等于预测向量与目标向量之间的欧几里得距离的平方,除以向量的分量个数。尽管取平方不会改变各个近邻的距离排序,但它会改变误差对目标函数的贡献方式。(scikit-learn.org)

应用与特征缩放

在机器学习中,观测数据通常表示为数值特征向量。K近邻算法可以利用欧几里得距离找出相近的观测样本,用于分类或回归。包括KD树和球树在内的空间搜索结构,通过组织数据点来加速适用的近邻查询。它们的性能取决于维数和数据结构。(scikit-learn.org)

“接近”的含义取决于坐标的尺度。如果某个特征的数值范围远大于其他特征,它就可能主导坐标差的平方和。因此,特征缩放会改变基于距离的方法所使用的几何结构。标准化处理先减去每个特征的均值,再除以其标准差;由此得到的距离反映的是相对于特征变异程度的差异,而不是以原始单位表示的差异。仅进行中心化不会改变两两距离,因为相同的均值会在求差时抵消。(scikit-learn.org)

高维也会影响距离的解释与计算。维数灾难可能降低空间搜索的效率,而基于距离的聚类方法也可能随着维数增加而表现出不同的行为。降维改变了计算距离所依据的数据表示,但并不会自动保留所有原始距离。(scikit-learn.org)

相关距离与计算

欧几里得距离是闵可夫斯基距离在 p=2p=2 时的特例。加权欧几里得距离将各坐标差的平方替换为 wi(xi−yi)2w_i(x_i-y_i)^2;正权重相当于对各个坐标分别进行缩放。马氏距离引入协方差矩阵的逆矩阵,使这一距离度量能够考虑不同的变异程度以及相关性。(scikit-learn.org)

对于长度为1的向量,展开内积可得

∥x−y∥22=2−2⟨x,y⟩.\|x-y\|_2^2=2-2\langle x,y\rangle.

因此,按欧几里得距离从小到大排列这些向量,与按余弦相似度从大到小排列的顺序一致。如果不进行归一化,欧几里得距离还会受到向量长度的影响。(docs.scipy.org)

计算实现中可以使用

d(x,y)2=xTx−2xTy+yTy.d(x,y)^2=x^{\mathsf T}x-2x^{\mathsf T}y+y^{\mathsf T}y.

这一恒等式有助于高效计算两两距离,并复用预先计算的范数。然而,将大小接近的大数相减可能引起数值消去,因此,代数上等价的公式未必会产生完全相同的浮点计算结果。(scikit-learn.org)