机器学习基础之数字上的距离:点在空间中的距离
本文转载自微信公众号「活在信息时代」,作者活在信息时代。转载本文请联系活在信息时代公众号。
在机器学习中,一个基础的概念就是如何判断两个样本之间的差异,从而能够评价两个样本之间的相似性和类别等信息。而判断这种相似性的度量就是两个样本在特征空间内的距离。
根据数据特征的不同,度量方法有很多种。一般而言,对两个数据样本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工具

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

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

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

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

热门文章

热工具

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

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

图像标注是将标签或描述性信息与图像相关联的过程,以赋予图像内容更深层次的含义和解释。这一过程对于机器学习至关重要,它有助于训练视觉模型以更准确地识别图像中的各个元素。通过为图像添加标注,使得计算机能够理解图像背后的语义和上下文,从而提高对图像内容的理解和分析能力。图像标注的应用范围广泛,涵盖了许多领域,如计算机视觉、自然语言处理和图视觉模型具有广泛的应用领域,例如,辅助车辆识别道路上的障碍物,帮助疾病的检测和诊断通过医学图像识别。本文主要推荐一些较好的开源免费的图像标注工具。1.Makesens

在机器学习和数据科学领域,模型的可解释性一直是研究者和实践者关注的焦点。随着深度学习和集成方法等复杂模型的广泛应用,理解模型的决策过程变得尤为重要。可解释人工智能(ExplainableAI|XAI)通过提高模型的透明度,帮助建立对机器学习模型的信任和信心。提高模型的透明度可以通过多种复杂模型的广泛应用等方法来实现,以及用于解释模型的决策过程。这些方法包括特征重要性分析、模型预测区间估计、局部可解释性算法等。特征重要性分析可以通过评估模型对输入特征的影响程度来解释模型的决策过程。模型预测区间估计

通俗来说,机器学习模型是一种数学函数,它能够将输入数据映射到预测输出。更具体地说,机器学习模型就是一种通过学习训练数据,来调整模型参数,以最小化预测输出与真实标签之间的误差的数学函数。在机器学习中存在多种模型,例如逻辑回归模型、决策树模型、支持向量机模型等,每一种模型都有其适用的数据类型和问题类型。同时,不同模型之间存在着许多共性,或者说有一条隐藏的模型演化的路径。将联结主义的感知机为例,通过增加感知机的隐藏层数量,我们可以将其转化为深度神经网络。而对感知机加入核函数的话就可以转化为SVM。这一

本文将介绍如何通过学习曲线来有效识别机器学习模型中的过拟合和欠拟合。欠拟合和过拟合1、过拟合如果一个模型对数据进行了过度训练,以至于它从中学习了噪声,那么这个模型就被称为过拟合。过拟合模型非常完美地学习了每一个例子,所以它会错误地分类一个看不见的/新的例子。对于一个过拟合的模型,我们会得到一个完美/接近完美的训练集分数和一个糟糕的验证集/测试分数。略有修改:"过拟合的原因:用一个复杂的模型来解决一个简单的问题,从数据中提取噪声。因为小数据集作为训练集可能无法代表所有数据的正确表示。"2、欠拟合如

20世纪50年代,人工智能(AI)诞生。当时研究人员发现机器可以执行类似人类的任务,例如思考。后来,在20世纪60年代,美国国防部资助了人工智能,并建立了实验室进行进一步开发。研究人员发现人工智能在许多领域都有用武之地,例如太空探索和极端环境中的生存。太空探索是对宇宙的研究,宇宙涵盖了地球以外的整个宇宙空间。太空被归类为极端环境,因为它的条件与地球不同。要在太空中生存,必须考虑许多因素,并采取预防措施。科学家和研究人员认为,探索太空并了解一切事物的现状有助于理解宇宙的运作方式,并为潜在的环境危机

C++中机器学习算法面临的常见挑战包括内存管理、多线程、性能优化和可维护性。解决方案包括使用智能指针、现代线程库、SIMD指令和第三方库,并遵循代码风格指南和使用自动化工具。实践案例展示了如何利用Eigen库实现线性回归算法,有效地管理内存和使用高性能矩阵操作。

译者|李睿审校|重楼人工智能(AI)和机器学习(ML)模型如今变得越来越复杂,这些模型产生的输出是黑盒——无法向利益相关方解释。可解释性人工智能(XAI)致力于通过让利益相关方理解这些模型的工作方式来解决这一问题,确保他们理解这些模型实际上是如何做出决策的,并确保人工智能系统中的透明度、信任度和问责制来解决这个问题。本文探讨了各种可解释性人工智能(XAI)技术,以阐明它们的基本原理。可解释性人工智能至关重要的几个原因信任度和透明度:为了让人工智能系统被广泛接受和信任,用户需要了解决策是如何做出的

机器学习是人工智能的重要分支,它赋予计算机从数据中学习的能力,并能够在无需明确编程的情况下改进自身能力。机器学习在各个领域都有着广泛的应用,从图像识别和自然语言处理到推荐系统和欺诈检测,它正在改变我们的生活方式。机器学习领域存在着多种不同的方法和理论,其中最具影响力的五种方法被称为“机器学习五大派”。这五大派分别为符号派、联结派、进化派、贝叶斯派和类推学派。1.符号学派符号学(Symbolism),又称为符号主义,强调利用符号进行逻辑推理和表达知识。该学派认为学习是一种逆向演绎的过程,通过已有的
