本文转载自微信公众号「活在信息时代」,作者活在信息时代。转载本文请联系活在信息时代公众号。
在机器学习中,一个基础的概念就是如何判断两个样本之间的差异,从而能够评价两个样本之间的相似性和类别等信息。而判断这种相似性的度量就是两个样本在特征空间内的距离。
根据数据特征的不同,度量方法有很多种。一般而言,对两个数据样本x,y,定义一个函数d(x,y),如果定义其为两个样本之间的距离,那么d(x,y)则需要满足以下几条基本性质:
- 非负性:d(x,y)>=0
- 同一性:d(x,y)=0 ⇔ x=y
- 对称性:d(x,y)= d(y,x)
- 三角不等式:d(x,y)
通常来讲,常见的距离度量包括:点在空间中的距离、字符串间的距离、集合的相似度、变量/概念分布间的距离四种。
今天我们首先来介绍一下最为常用的点在空间中的距离。
点在空间中的距离包括以下几种:
1、欧几里得距离(Ecllidean Distance)
毫无疑问,欧氏距离是人们最熟悉的距离,它即是两点之间的直线距离。学过初中数学的同学都知道在笛卡尔坐标系中如何计算二维空间两个点之间的距离
其计算公式为:
推广到N维空间的欧氏距离即为:
2、曼哈顿距离(Manhattan Distance)
曼哈顿距离又称为出租车距离,其概念来源于纽约曼哈顿区这样有很多横平竖直的街区,在这种街区中,出租车司机如果想从一个点走到另一个点的话,计算直线距离是没有用的,因为出租车不可能从建筑物上飞过去。因此,这种距离通常是将两个点的东西向、南北向距离分别相减再相加,这也就是出租车实际要经过的距离。
如图所示,红线和黄线就是两种不同路径的曼哈顿距离。数学上,二维空间的曼哈顿距离计算方法如下:
3、切比雪夫距离(Chebyshev Distance)
切比雪夫距离定义为两个点之间各坐标数值差的最大值。
其最直观的例子即是国际象棋中的国王,因为它可以横走直走斜走,但是每次都只能走一格,所以切比雪夫距离就是他要走到另一个格子所需要的最小距离。
4、闵可夫斯基距离(Minkowski Distance)
闵氏距离本身不是一个特别的距离,而是将多个距离(曼哈顿距离、欧氏距离、切比雪夫距离)合并成为的一个公式。
其定义为,对于两个n维变量,闵氏距离为:
当p=1时,可以看到
此时为曼哈顿距离。
当p=2时,可以看到
此时即为欧氏距离。
当p=∞时,可以看到
此时即为切比雪夫距离。
5、标准化的欧几里得距离(Standardized Euclidean Distance)
欧氏距离可以测量两个点之间的直线距离,但是在某些情况下,可能会受到单位不同的影响。例如同时是差5,差5毫米的身高和差5公斤的体重,观感可能是完全不同的。如果我们想对三个模特进行聚类,她们各自的属性如下:
A:65000000毫克(即65公斤),1.74米
B:60000000毫克(即60公斤),1.70米
C:65000000毫克(即65公斤),1.40米
按我们正常的理解,A和B是身材比较好的模特,应该归到一类。但是以上述单位实际计算的时候,却发现A和B的差异大于A和C之间的差异。原因在于属性计量单位的不同导致数值差异过大。同样的数据如果换个单位。
A:65千克,174厘米
B:60千克,170厘米
C:65千克,140厘米
那么就会得到我们想到的结果,将A和B归为一类了。因此,为避免出现这种由于计量单位的不同而出现的差异,我们就需要引入标准化欧氏距离。在这种距离计算中,会将各个分量都标准化到均值、方差相等的区间。
假设样本集X的均值(mean)为m,标准差(standard deviation)为s,那么X的“标准化变量”表示为:
其中,标准化后的值 = ( 标准化前的值 - 分量的均值 ) /分量的标准差。经过简单的推导就可以得到两个n维向量间的标准化欧氏距离公式为:
如果将方差的倒数看成是一个权重,这个公式可以看成是一种加权欧氏距离(Weighted Euclidean distance)。通过这种操作,我们就有效的消除了不同计重单位之间的差异。
6、兰氏距离(Lance and Willianms Distance)
兰氏距离又称为堪培拉距离,
它是一个无量纲的指标,克服了闵氏距离与各指标的量纲有关的缺点,并且对于较大的奇异值不敏感,特别适合调度偏倚的数据。但是这种距离也没有考虑到变量间的相关性。所以如果需要考虑变量之间的相关性的话,还是需要马氏距离。
7、马氏距离(Mahalanobis Distance)
对数值进行标准化之后,就一定不会出问题吗?也不一定。例如在一个一维的例子中,如果有两个类,一个类均值为0,方差为0.1,而另一个类均值为5,方差为5。那么如果一个值为2的点应该属于哪一类呢?我们直觉上认为它肯定是第二类,因为第一类显然不太可能在数值上达到2。但是实际上从距离上计算的话2这个数就得属于第一类。
所以,在一个方差较小的维度下,很小的差别就可能成为离群点。例如说下图,A与B相对于原点的距离是相同的,但是由于样本整体沿着横轴分布,所以B点更有可能是样本中的点,而A点则更有可能是离群点。
而在维度间不独立同分布的情况下,也会出现问题,例如说下图中的A点与B点到原点的距离相等,但是主要分布类似于f(x)=x,所以A更像是一个离群点。
因此,我们可以看到,在这种情况下,标准化的欧氏距离也会有问题,所以我们需要引入马氏距离。
马氏距离将变量按照主成分进行旋转,让维度间相互独立,然后再进行标准化,让维度同分布。而主成分即为特征向量方向,所以只需要按照特征向量的方向进行旋转,然后缩放特征值倍就可以了。例如上图变换之后会得到下面的结果:
可以看出离群点被成功分离了。
马氏距离是由印度数学家马哈拉诺比斯提出的,表示数据的协方差距离。它是一种有效地计算两个未知样本集的相似度的方法。
对于一个均值为
,协方差矩阵为Σ的多变量矢量
,其马氏距离(单个数据点的马氏距离)为:
对于两个服从同一分布并且其协方差矩阵为Σ的随机变量X与Y的差异程度,数据点x, y之间的马氏距离为:
如果协方差矩阵为单位矩阵,那么马氏距离就简化成了欧氏距离。如果协方差矩阵为对角阵,那么马氏距离就变成了标准化的欧氏距离。
8、余弦距离(Cosine Distance)
顾名思义,余弦距离来源于几何中的夹角余弦,它可用来衡量两个向量方向的差异,而非距离或长度上。当余弦值为0时,两向量正交,夹角为90度。夹角越小,余弦值越接近于1,方向更趋同。
在N维空间中,余弦距离为:
值得指出的是,余弦距离不满足三角不等式。
9、测地距离(Geodesic Distance)
测地距离最初是指球体表面之间的最短距离。当特征空间为平面时,测地距离即为欧氏距离。在非欧几何中,球面上两点间距离最短的线是连接这两点的大圆弧,在球面上的三角形、多边形的边也是由这些大圆弧组成的。
10、布雷柯蒂斯距离(Bray Curtis Distance)
布雷柯蒂斯距离主要用于植物学、生态学和环境科学,它可以用来计算样本之间的差异。其公式为:
其取值在[0, 1]之间,如果两个向量坐标都为0的话,那么值就无意义。
以上是机器学习基础之数字上的距离:点在空间中的距离的详细内容。更多信息请关注PHP中文网其他相关文章!

利用“设备” AI的力量:建立个人聊天机器人CLI 在最近的过去,个人AI助手的概念似乎是科幻小说。 想象一下科技爱好者亚历克斯(Alex)梦见一个聪明的本地AI同伴 - 不依赖

他们的首届AI4MH发射于2025年4月15日举行,著名的精神科医生兼神经科学家汤姆·因斯尔(Tom Insel)博士曾担任开幕式演讲者。 Insel博士因其在心理健康研究和技术方面的杰出工作而闻名

恩格伯特说:“我们要确保WNBA仍然是每个人,球员,粉丝和公司合作伙伴,感到安全,重视和授权的空间。” anno

介绍 Python擅长使用编程语言,尤其是在数据科学和生成AI中。 在处理大型数据集时,有效的数据操作(存储,管理和访问)至关重要。 我们以前涵盖了数字和ST

潜水之前,一个重要的警告:AI性能是非确定性的,并且特定于高度用法。简而言之,您的里程可能会有所不同。不要将此文章(或任何其他)文章作为最后一句话 - 目的是在您自己的情况下测试这些模型

建立杰出的AI/ML投资组合:初学者和专业人士指南 创建引人注目的投资组合对于确保在人工智能(AI)和机器学习(ML)中的角色至关重要。 本指南为建立投资组合提供了建议

结果?倦怠,效率低下以及检测和作用之间的差距扩大。这一切都不应该令任何从事网络安全工作的人感到震惊。 不过,代理AI的承诺已成为一个潜在的转折点。这个新课

直接影响与长期伙伴关系? 两周前,Openai提出了强大的短期优惠,在2025年5月底之前授予美国和加拿大大学生免费访问Chatgpt Plus。此工具包括GPT-4O,A A A A A


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

Atom编辑器mac版下载
最流行的的开源编辑器

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境