一文读懂“欧氏距离”

出自《白话大数据与机器学习》

欧氏距离的定义大概是这样的:在一个N维度的空间里,求两个点的距离,这个距离肯定是一个大于等于0的数字(也就是说没有负距离,最小也就是两个点重合的零距离),那么这个距离需要用两个点在各自维度上的坐标相减,平方后加和再开平方。

欧氏距离使用的范围实在是太广泛了,我们几乎每天都在使用。

一维的应用就相当多,如在地图上有一条笔直的东西向或者南北向的路,在上面有两个点,怎么量取它们在地图上的距离?数轴标识如图所示,可以用尺子的刻度贯穿两个点,大值减小值就能直接得出结果,最多再乘以一个比例尺就能得到实际的大小。或者用其中一个点的读数减去另外一个点的读数,不管结果正负,将它平方后再开方,还是一个非负数的值,这两种办法本质上没有什么区别。地图明明是一个二维平面的概念,为什么非要说是一维的呢?只是因为量取的手段和一维一样,只参考一个维度的读数就可以了。

一文读懂“欧氏距离”_第1张图片
二维的应用也是很多的,其中最典型的莫过于人们熟知的“勾股定理”。公式如下:
在这里插入图片描述

在这里插入图片描述
推广到三维的应用,还是可以使用勾股定理的思路进行计算。每个点都向3个平面各做一条垂线段,可以看出,两个点的距离其实就是一个长方体的对角线长度。最后得到距离为3个维度的坐标差值分别平方加和再开平方:
在这里插入图片描述

欧氏距离除了刚刚举的例子,在数据挖掘部分会有很多应用场景。它主要用来描述两个多维点之间的“距离”,遗憾的是,三维以下的点和点的距离通过刚刚的讲解很容易出现画面感,四维和四维以上的距离就只能凭想象了,只是在计算中确实存在且有对应的含义解释。这种解释通常也用来直接判断两个点在多维关系上谁与谁更“近”,虽然超过三维的情况下这个“近”已经没有办法用手边的工具量出来。例如,在一个五维空间里,A点和B点的距离为6,A点和C点的距离为10,那么就可以认为B点到A点的距离比C点到A点的距离更近,这样就足够了。

你可能感兴趣的:(机器学习,算法)