【机器学习:欧氏距离 】机器学习中欧氏距离的理解和应用
在数学中,'欧氏距离'是指欧氏空间中任意两点之间的直线距离。这种距离可以通过应用勾股定理来计算,利用两点的笛卡尔坐标确定它们之间的直线距离,因此有时被称为'勾股定理距离'。
这些名字来自古希腊数学家欧几里得和毕达哥拉斯。在以欧几里得几何原理为代表的希腊演绎几何中,距离并不表示为数字,而是相同长度的线段被认为是"相等的"。距离的概念是用于绘制圆的圆规工具中固有的,圆的所有点到公共中心点的距离都相同。毕达哥拉斯定理与距离计算的联系直到 18 世纪才建立起来。
两个非点对象之间的距离通常定义为距两个对象的点对之间的最小距离。众所周知,公式用于计算不同类型对象之间的距离,例如从点到线的距离。在高等数学中,距离的概念已被推广到抽象的度量空间,并且已经研究了欧几里得以外的其他距离。在统计和优化的某些应用中,使用欧几里德距离的平方而不是距离本身。
使用勾股定理计算二维欧氏距离
距离公式
实线上任意两点之间的距离是它们坐标数值差的绝对值,即它们的绝对差。因此,如果 p p p和 q q q是实线上的两点,则它们之间的距离由以下公式给出:
d ( p , q ) = ∣ p − q ∣ d(p, q) = |p-q| d(p,q)=∣p−q∣
一个更复杂的公式,给出相同的值,但更容易推广到更高的维度,是:
d ( p , q ) = ( p − q ) 2 d(p, q) = \sqrt{(p-q)^2} d(p,q)=(p−q)2
在此公式中,先平方再开平方会使任何正数保持不变,但用其绝对值替换任何负数。
二维
在二维欧氏空间中,假设点p的笛卡尔坐标为 ( p 1 , p 2 ) (p_1, p_2) (p1,p2),点q的坐标为 ( q 1 , q 2 ) (q_1, q_2) (q1,q2)。然后 p p p和 q q q之间的距离由下式给出:
d ( p , q ) = ( p 1 − q 1 ) 2 + ( p 2 − q 2 ) 2 d(p, q) = \sqrt{(p_1-q_1)^2+(p_2-q_2)^2} d(p,q)=(p1−q1)2+(p2−q2)2
这个距离的计算可以通过将勾股定理应用于一个直角三角形,其中p到q的线段是斜边,而其余两边分别平行于坐标轴平方根内的两个平方公式给出水平边和垂直边上的正方形面积,外平方根将斜边上的正方形面积转换为斜边的长度。
同样,我们也可以计算出两点在极坐标系中的欧氏距离。如 p p p的极坐标是 ( r , θ ) (r, \theta) (r,θ)且 q q q的极坐标 ( s , ψ ) (s, \psi) (s,ψ)是 ,则它们的距离由余弦定律[2]给出:
d ( p , q ) = r 2 + s 2 − 2 r s cos ( θ − ψ ) d(p, q) = \sqrt{r^2+s^2-2rs\cos{(\theta-\psi)}} d(p,q)=r2+s2−2rscos(θ−ψ)
When p p p and q q q are expressed as complex numbers in the complex plane, the same formula for one-dimensional points expressed as real numbers can be used, although here the absolute value sign indicates the complex norm:[4]
d ( p , q ) = ∣ p − q ∣ d(p, q) = |p-q| d(p,q)=∣p−q∣
更高的维度
在三维欧氏空间中,如果点的位置由笛卡尔坐标给出,那么两点之间的距离可以表示为
d ( p , q ) = ( p 1 − q 1 ) 2 + ( p 2 − q 2 ) 2 + ( p 3 − q 3 ) 2 d(p, q) = \sqrt{(p_1-q_1)^2+(p_2-q_2)^2 + (p_3-q_3)^2} d(p,q)=(p1−q1)2+(p2−q2)2+(p3−q3)2
通常,对于在维欧几里得空间中由笛卡尔坐标给出的点,距离为。
d ( p , q ) = ( p 1 − q 1 ) 2 + ( p 2 − q 2 ) 2 + ⋯ + ( p n − q n ) 2 d(p, q) = \sqrt{(p_1-q_1)^2+(p_2-q_2)^2 +\dots + (p_n-q_n)^2} d(p,q)=(p1−q1)2+(p2−q2)2+⋯+(pn−qn)2
欧几里得距离也可以用欧几里得向量差的欧几里得范数更紧凑地表示:
d ( p , q ) = ∣ ∣ p − q ∣ ∣ d(p, q) = ||p-q|| d(p,q)=∣∣p−q∣∣
通过反复应用勾股定理推导-维欧几里得距离公式
点以外的物体
对于不是两个点的对象对,距离可以最简单地定义为两个对象之间任意两点之间的最小距离,尽管通常使用从点到集合的更复杂的概括,例如豪斯多夫距离。用于计算不同类型对象之间距离的公式包括:
- 在欧几里得平面中,从点到线的距离。
- 三维欧几里得空间中从点到平面的距离。
- 三维欧几里得空间中两条线之间的距离。
从点到曲线的距离可用于定义其平行曲线,另一条曲线的所有点与给定曲线的距离相同。
属性
欧几里得距离是度量空间中距离的典型示例,它遵循度量空间的所有定义属性:
- 它是对称的,这意味着对于所有点 p p p和 q q q, d ( p , q ) = d ( q , p ) d(p, q)=d(q, p) d(p,q)=d(q,p).也就是说(与单行道的道路距离不同),两点之间的距离不取决于两点中的哪一点是起点,哪一点是终点。
- 它是正数,这意味着每两个不同点之间的距离是一个正数,而从任何一点到自身的距离为零。
- 它服从三角形不等式:每三点 p p p、 q q q和 r r r , d ( p , q ) + d ( q , r ) ≥ d ( p , r ) d(p, q)+d(q, r)\geq d(p, r) d(p,q)+d(q,r)≥d(p,r) 。直观地说,从 p p p经过 q q q到 r r r 旅行不会比直接从 p p p 到 r r r旅行短。
另一个性质,托勒密不等式,涉及四点之间的欧几里得距离 p p p , q q q , r r r 和 s s s 。它指出
d ( p , q ) ⋅ d ( r , s ) + d ( q , r ) ⋅ d ( p , s ) ≥ d ( p , r ) ⋅ d ( q , s ) d(p, q)\cdot d(r, s) + d(q, r)\cdot d(p, s) \geq d(p, r)\cdot d(q,s) d(p,q)⋅d(r,s)+d(q,r)⋅d(p,s)≥d(p,r)⋅d(q,s)
对于平面中的点,这可以改写为,对于每个四边形,四边形相对边的乘积之和至少与其对角线的乘积一样大。然而,托勒密不等式更普遍地适用于欧几里得空间中任何维度的点,无论它们是如何排列的。对于度量空间中不是欧几里得空间的点,这种不等式可能不是真的。欧几里得距离几何研究欧几里得距离的性质,例如托勒密不等式,以及它们在测试给定距离集是否来自欧几里得空间中的点中的应用。
根据贝克曼-夸尔斯定理,欧几里得平面或保持单位距离的高维欧几里得空间的任何变换都必须是等距,保留所有距离。
欧几里得距离的平方
在许多应用中,特别是在比较距离时,在计算欧几里得距离时省略最终平方根可能更方便,因为平方根不会改变顺序(当且仅当)。由此省略产生的值是欧几里得距离的平方,称为欧几里得距离的平方。例如,欧几里得最小生成树可以仅使用距离之间的排序来确定,而不能使用它们的数值。比较平方距离会产生相同的结果,但避免了不必要的平方根计算并回避了数值精度问题。作为一个方程,距离的平方可以表示为平方和:
d 2 ( p , q ) = ( p 1 − q 1 ) 2 + ( p 2 − q 2 ) 2 + ⋯ + ( p n − q n ) 2 d^2(p, q) = (p_1-q_1)^2+(p_2-q_2)^2 +\dots + (p_n-q_n)^2 d2(p,q)=(p1−q1)2+(p2−q2)2+⋯+(pn−qn)2
除了应用于距离比较之外,平方欧几里得距离在统计学中也具有核心重要性,它被用于最小二乘法,这是一种通过最小化观测值和估计值之间的平方距离平均值来将统计估计拟合到数据的标准方法,并且是比较概率分布的最简单的散度形式。彼此之间的平方距离相加,就像在最小二乘拟合中所做的那样,对应于称为勾股加法的(非平方)距离运算。在聚类分析中,可以使用平方距离来增强较长距离的效果。
平方欧几里得距离不形成度量空间,因为它不满足三角形不等式。然而,它是两点的光滑、严格凸函数,与距离不同,距离是非光滑的(靠近相等的点对)和凸但不严格凸的。因此,平方距离在优化理论中是首选,因为它允许使用凸分析。由于平方是非负值的单调函数,因此最小化平方距离等价于最小化欧几里得距离,因此优化问题在两者方面都是等价的,但使用平方距离更容易求解。
有限集合中点对之间的所有平方距离的集合可以存储在欧几里得距离矩阵中,并以这种形式用于距离几何。
圆锥体,平面中距原点的欧几里得距离图
抛物面,与原点的平方欧几里得距离图
概括
在更高级的数学理论中,当把欧氏空间视为一个向量空间时,点之间的距离与一种特殊的范数欧氏范数密切相关。,该范数定义为每个向量与原点的距离。相对于其他规范,该规范的一个重要特性是,在围绕原点的空间任意旋转下,它保持不变。根据德沃雷茨基定理,每个有限维范数向量空间都有一个高维子空间,其范数近似于欧几里得;欧几里得范数是具有此性质的唯一范数。它可以扩展到无限维向量空间,如 L 2 L^2 L2范数或 L 2 L^2 L2距离。欧几里得距离为欧几里得空间提供了拓扑空间的结构,即欧几里得拓扑,以开放球(距给定点小于给定距离的点的子集)作为其邻域。
实坐标空间和函数空间中的其他常见距离:
切比雪夫距离( L ∞ L^\infty L∞ 距离),它测量距离作为每个坐标中距离的最大值。
出租车距离( L 1 L^1 L1距离),也称为曼哈顿距离,它以每个坐标中距离的总和来衡量距离。
闵可夫斯基距离( L p L^p Lp 距离),一种统一欧几里得距离、出租车距离和切比雪夫距离的概括。
对于三维曲面上的点,应将欧几里得距离与测地线距离区分开来,测地线距离是属于曲面的最短曲线的长度。特别是,为了测量地球或其他球形或近球面上的大圆距离,已使用的距离包括哈弗正弦距离,给出球体上两点之间的大圆距离,从它们的经度和纬度,以及文森特公式也称为"文森特距离",表示椭球体上的距离。
棋盘上 3-4-5 三角形斜边的切比雪夫、欧几里得和出租车距离的比较
历史
欧几里得距离是欧几里得空间中的距离。这两个概念都以古希腊数学家欧几里得的名字命名,他的《元素》在许多世纪以来成为几何学的标准教科书。长度和距离的概念在各种文化中都很普遍,可以追溯到公元前四千年(远在欧几里得之前)苏美尔现存最早的"原始文盲"官僚文件,并且据推测在儿童中发展的时间早于相关的速度和时间概念。但是,距离的概念,作为从两点定义的数字,实际上并没有出现在欧几里得的元素中。相反,欧几里得通过线段的同余、线段长度的比较以及比例性的概念,隐含地接近了这个概念。
毕达哥拉斯定理也很古老,但只有在勒内·笛卡尔于 1637 年发明笛卡尔坐标后,它才能在距离测量中发挥核心作用。距离公式本身由亚历克西斯·克莱劳特(Alexis Clairaut)于1731年首次发表。由于这个公式,欧几里得距离有时也称为勾股距离。尽管自古以来,许多文化中就再次研究了地球表面长距离的精确测量,这些距离不是欧几里得的(见大地测量学的历史),但欧几里得距离可能不是测量数学空间中点之间距离的唯一方法的想法甚至更晚,随着 19 世纪非欧几里得几何的表述。欧几里得范数和三维以上几何的欧几里得距离的定义也最早出现在 19 世纪的奥古斯丁-路易·柯西 (Augustin-Louis Cauchy) 的著作中。