机器学习-各种距离的定义

机器学习笔记(八)KNN原理详解和实践 一、KNN原理 K近邻法(k-nearest neighbors,KNN)是一种应用比较多的机器学习算法模型,其核心思想就是未知的对象总是和距离自己最近的群体类似。简单地说就是一个人如果经常和好人走的近,那么我们可以认为(大概率)他是好人,如果他经常和坏人混迹在一起,那么我们就会认为他更可能是坏人,在推荐领域,KNN 可以用来为消费行为相似的人推荐商品。现在还有一个不确定的问题,就是距离最近的群体怎么衡量呢?这也正是KNN中K的含义,就是找距离自己最近的K个样本。这里需要注意 KNN 中的 K 和 K-M 阅读详情

转自:https://www.cnblogs.com/ronny/p/4080442.html

1. 欧氏距离

欧氏距离是最常见的两点之间或多点之间的距离表示法,又称之为欧几里得度量,它定义于欧几里得空间中,如点 x=(x1,⋯,xn)x=(x1,⋯,xn) 和y=(y2,⋯,yn)y=(y2,⋯,yn)之间的距离为:

 

d(x,y)=(x1–y1)2+(x2−y2)2+⋯+(xn−yn)2−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−√=∑i=1n(xi−yi)2−−−−−−−−−−√d(x,y)=(x1–y1)2+(x2−y2)2+⋯+(xn−yn)2=∑i=1n(xi−yi)2

1)二维平面上两点a(x1,y1)a(x1,y1)与b(x2,y2)b(x2,y2)间的欧氏距离:

d=(x1–x2)2+(y1–y2)2−−−−−−−−−−−−−−−−√d=(x1–x2)2+(y1–y2)2

2)三维空间两点a(x1,y1,z1)a(x1,y1,z1)与b(x2,y2,z2)b(x2,y2,z2)间的欧氏距离:

d=(x1–x2)2+(y1–y2)2+(z1–z2)2−−−−−−−−−−−−−−−−−−−−−−−−−√d=(x1–x2)2+(y1–y2)2+(z1–z2)2

3)两个nn维向量a(x11,x12,⋯,x1n)a(x11,x12,⋯,x1n)与 b(x21,x22,⋯,x2n)b(x21,x22,⋯,x2n)间的欧氏距离:

d=∑k=1n(x1k–x2k)2−−−−−−−−−−−√d=∑k=1n(x1k–x2k)2

也可以用表示成向量运算的形式:

d=(a−b)(a−b)T−−−−−−−−−−−−√d=(a−b)(a−b)T

nn维平面上两点欧式距离,代码可以如下编写:

//unixfy:计算欧氏距离 
double euclideanDistance(const vector<double>& v1, const vector<double>& v2) 
{ 
    assert(v1.size() == v2.size()); 
    double ret = 0.0; 
    for (vector<double>::size_type i = 0; i != v1.size(); ++i) 
    { 
        ret += (v1[i] - v2[i]) * (v1[i] - v2[i]); 
    } 
    return sqrt(ret); 
}

2. 曼哈顿距离

我们可以定义曼哈顿距离的正式意义为L1L1-距离或城市区块距离,也就是在欧几里得空间的固定直角坐标系上两点所形成的线段对轴产生的投影的距离总和。

例如在平面上,坐标(x1,y1)(x1,y1)的点P1P1与坐标(x2,y2)(x2,y2)的点P2P2的曼哈顿距离为:

 

D(P1,P2)=|x1−x2|+|y1–y2|D(P1,P2)=|x1−x2|+|y1–y2|

要注意的是,曼哈顿距离依赖座标系统的转度,而非系统在座标轴上的平移或映射。

通俗来讲,想象你在曼哈顿要从一个十字路口开车到另外一个十字路口,驾驶距离是两点间的直线距离吗?显然不是,除非你能穿越大楼。而实际驾驶距离就是这个“曼哈顿距离”,此即曼哈顿距离名称的来源, 同时,曼哈顿距离也称为城市街区距离(City Block distance)。

1)二维平面两点a(x1,y1)a(x1,y1)与b(x2,y2)b(x2,y2)间的曼哈顿距离

d(a,b)=|x1–x2|+|y1−y2|d(a,b)=|x1–x2|+|y1−y2|

2)两个nn维向量a(x11,x12,⋯,x1n)a(x11,x12,⋯,x1n)与b(x21,x22,⋯,x2n)b(x21,x22,⋯,x2n)间的曼哈顿距离

d(a,b)=∑k=1n|x1k–x2k|d(a,b)=∑k=1n|x1k–x2k|

3. 切比雪夫距离

若二个向量或二个点p,qp,q,其座标分别为(p1,p2,⋯,pi,⋯)(p1,p2,⋯,pi,⋯)及(q1,q2,⋯,qi,⋯)(q1,q2,⋯,qi,⋯),则两者之间的切比雪夫距离定义如下:

 

DChebyshev(p,q)=maxi(|pi–qi|)DChebyshev(p,q)=maxi(|pi–qi|)

这也等于以下LpLp度量的极值:limk→∞(∑ni=1|pi–qi|k)1/klimk→∞(∑i=1n|pi–qi|k)1/k,因此切比雪夫距离也称为L∞L∞度量。以数学的观点来看,切比雪夫距离是由一致范数(或称为上确界范数)所衍生的度量,也是超凸度量的一种。

1)在平面几何中,若二点pp及qq的直角坐标系坐标为(x1,y1)(x1,y1)及(x2,y2)(x2,y2),则切比雪夫距离为:DChess=max(|x2–x1|,|y2−y1|)DChess=max(|x2–x1|,|y2−y1|)。

玩过国际象棋的朋友或许知道,国王走一步能够移动到相邻的8个方格中的任意一个。那么国王从格子(x1,y1)(x1,y1)走到格子(x2,y2)(x2,y2)最少需要多少步?。你会发现最少步数总是max(|x2–x1|,|y2−y1|)max(|x2–x1|,|y2−y1|)步 。

2)二维平面上两点a(x1,y1)a(x1,y1)与b(x2,y2)b(x2,y2)间的切比雪夫距离

d(a,b)=max(|x1−x2|,|y1–y2|)d(a,b)=max(|x1−x2|,|y1–y2|)

3)两个nn维向量a(x11,x12,⋯,x1n)a(x11,x12,⋯,x1n)与 b(x21,x22,⋯,x2n)b(x21,x22,⋯,x2n)间的切比雪夫距离

d(a,b)=maxi(|x1i–x2i|)d(a,b)=maxi(|x1i–x2i|)

这个公式的另一种等价形式是

d(a,b)=limk→∞(∑i=1n|x1i–x2i|k)1/kd(a,b)=limk→∞(∑i=1n|x1i–x2i|k)1/k

4. 闵可夫斯基距离(Minkowski Distance)

闵氏距离不是一种距离,而是一组距离的定义。

两个nn维向量a(x11,x12,⋯,x1n)a(x11,x12,⋯,x1n)与 b(x21,x22,⋯,x2n)b(x21,x22,⋯,x2n)间的闵可夫斯基距离定义为:

 

d(a,b)=∑k=1n|x1k–x2k|p−−−−−−−−−−−√pd(a,b)=∑k=1n|x1k–x2k|pp

其中pp是一个变参数。

当p=1p=1时,就是曼哈顿距离;

当p=2p=2时,就是欧氏距离;

当p→∞p→∞时,就是切比雪夫距离;

根据变参数的不同,闵氏距离可以表示一类的距离。

5. 标准化欧氏距离 (Standardized Euclidean distance )

标准化欧氏距离是针对简单欧氏距离的缺点而作的一种改进方案。标准欧氏距离的思路:既然数据各维分量的分布不一样,那先将各个分量都“标准化”到均值、方差相等。

假设样本集XX的数学期望或均值为μμ,标准差为σσ,那么XX的“标准化变量”X^X^表示为:(X−μ)/σ(X−μ)/σ,而且标准化变量的数学期望为0,方差为1。

即,样本集的标准化过程(standardization)用公式描述就是:

 

X^=X−μσX^=X−μσ

经过简单的推导就可以得到两个nn维向量a(x11,x12,⋯,x1n)a(x11,x12,⋯,x1n)与 b(x21,x22,⋯,x2n)b(x21,x22,⋯,x2n)间的标准化欧氏距离的公式:

 

d(a,b)=∑k=1n(x1k–x2kσk)2−−−−−−−−−−−−−−⎷d(a,b)=∑k=1n(x1k–x2kσk)2

如果将方差的倒数看成是一个权重,这个公式可以看成是一种加权欧氏距离(Weighted Euclidean distance)。

6. 马氏距离(Mahalanobis Distance)   

有MM个样本向量X1∼XMX1∼XM,协方差矩阵记为SS,均值记为向量μμ,则其中样本向量XX到μμ的马氏距离表示为:

 

D(X)=(X−μ)TS−1(X−μ)−−−−−−−−−−−−−−−−−√D(X)=(X−μ)TS−1(X−μ)

而其中向量XiXi与XjXj之间的马氏距离定义为:

 

D(Xi,Xj)=(Xi–Xj)TS−1(Xi–Xj)−−−−−−−−−−−−−−−−−−√D(Xi,Xj)=(Xi–Xj)TS−1(Xi–Xj)

若协方差矩阵是单位矩阵(各个样本向量之间独立同分布),则公式就成了:     

 

D(Xi,Xj)=(Xi–Xj)T(Xi–Xj)−−−−−−−−−−−−−−−√D(Xi,Xj)=(Xi–Xj)T(Xi–Xj)

也就是欧氏距离了。

若协方差矩阵是对角矩阵,公式变成了标准化欧氏距离。 
马氏距离的优缺点:量纲无关,排除变量之间的相关性的干扰。

7. 巴氏距离(Bhattacharyya Distance)

在统计中,Bhattacharyya距离测量两个离散或连续概率分布的相似性。它与衡量两个统计样品或种群之间的重叠量的Bhattacharyya系数密切相关。Bhattacharyya距离和Bhattacharyya系数以20世纪30年代曾在印度统计研究所工作的一个统计学家A. Bhattacharya命名。同时,Bhattacharyya系数可以被用来确定两个样本被认为相对接近的,它是用来测量中的类分类的可分离性。

对于离散概率分布pp和qq在同一域XX,它被定义为:

 

DB(p,q)=–ln(BC(p,q))DB(p,q)=–ln(BC(p,q))

其中:

 

BC(p,q)=∑x∈Xp(x)q(x)−−−−−−−√BC(p,q)=∑x∈Xp(x)q(x)

是Bhattacharyya系数。

对于连续概率分布,Bhattacharyya系数被定义为:

 

BC(p,q)=∫p(x)q(x)−−−−−−−√dxBC(p,q)=∫p(x)q(x)dx

Bhattacharyya系数是两个统计样本之间的重叠量的近似测量,可以被用于确定被考虑的两个样本的相对接近。

计算Bhattacharyya系数涉及集成的基本形式的两个样本的重叠的时间间隔的值的两个样本被分裂成一个选定的分区数,并且在每个分区中的每个样品的成员的数量,在下面的公式中使用

 

Bhattacharyya=∑i=1n(∑ai⋅∑bi)−−−−−−−−−−−−√Bhattacharyya=∑i=1n(∑ai⋅∑bi)

考虑样品aa和bb ,nn是的分区数,∑ai∑ai是指样品aa中落在分区ii内的个数,∑bi∑bi有类似的定义。

8. 汉明距离(Hamming distance),

两个等长字符串s1s1与s2s2之间的汉明距离定义为将其中一个变为另外一个所需要作的最小替换次数。

例如字符串“1111”与“1001”之间的汉明距离为2。

应用:信息编码(为了增强容错性,应使得编码间的最小汉明距离尽可能大)。

9. 夹角余弦(Cosine)

几何中夹角余弦可用来衡量两个向量方向的差异,机器学习中借用这一概念来衡量样本向量之间的差异。

(1)在二维空间中向量A(x1,y1)A(x1,y1)与向量B(x2,y2)B(x2,y2)的夹角余弦公式:

 

cosθ=x1x2+y1y2x21+y21−−−−−−√x22+y22−−−−−−√cosθ=x1x2+y1y2x12+y12x22+y22

(2) 两个nn维向量a(x11,x12,⋯,x1n)a(x11,x12,⋯,x1n)与 b(x21,x22,⋯,x2n)b(x21,x22,⋯,x2n)的夹角余弦

 

cos(θ)=a⋅b|a||b|cos(θ)=a⋅b|a||b|

类似的,对于两个n维样本点a(x11,x12,⋯,x1n)a(x11,x12,⋯,x1n)与 b(x21,x22,⋯,x2n)b(x21,x22,⋯,x2n),可以使用类似于夹角余弦的概念来衡量它们间的相似程度,即:

 

cos(θ)=∑nk=1x1kx2k∑nk=1x21k−−−−−−−√∑nk=1x22k−−−−−−−√cos(θ)=∑k=1nx1kx2k∑k=1nx1k2∑k=1nx2k2

夹角余弦取值范围为[-1,1]。夹角余弦越大表示两个向量的夹角越小,夹角余弦越小表示两向量的夹角越大。当两个向量的方向重合时夹角余弦取最大值1,当两个向量的方向完全相反夹角余弦取最小值-1。

10. 杰卡德相似系数(Jaccard similarity coefficient)

10.1 杰卡德相似系数      

两个集合AA和BB的交集元素在A,BA,B的并集中所占的比例,称为两个集合的杰卡德相似系数,用符号J(A,B)J(A,B)表示。

 

J(A,B)=|A∩B||A∪B|J(A,B)=|A∩B||A∪B|

杰卡德相似系数是衡量两个集合的相似度一种指标。

10.2 杰卡德距离      

与杰卡德相似系数相反的概念是杰卡德距离(Jaccard distance)。

杰卡德距离可用如下公式表示:

杰卡德距离用两个集合中不同元素占所有元素的比例来衡量两个集合的区分度。

10.3 杰卡德相似系数与杰卡德距离的应用     

可将杰卡德相似系数用在衡量样本的相似度上。

举例:样本A与样本B是两个n维向量,而且所有维度的取值都是0或1,例如:A(0111)和B(1011)。我们将样本看成是一个集合,1表示集合包含该元素,0表示集合不包含该元素。

M11 :样本A与B都是1的维度的个数

M01:样本A是0,样本B是1的维度的个数

M10:样本A是1,样本B是0 的维度的个数

M00:样本A与B都是0的维度的个数

依据上文给的杰卡德相似系数及杰卡德距离的相关定义,样本A与B的杰卡德相似系数J可以表示为:

这里M11+M01+M10可理解为A与B的并集的元素个数,而M11是A与B的交集的元素个数。而样本A与B的杰卡德距离表示为J':

 

11.皮尔逊系数(Pearson Correlation Coefficient)

    在具体阐述皮尔逊相关系数之前,有必要解释下什么是相关系数 ( Correlation coefficient )与相关距离(Correlation distance)。

    相关系数 ( Correlation coefficient )的定义是:

(其中,E为数学期望或均值,D为方差,D开根号为标准差,E{ [X-E(X)] [Y-E(Y)]}称为随机变量X与Y的协方差,记为Cov(X,Y),即Cov(X,Y) = E{ [X-E(X)] [Y-E(Y)]},而两个变量之间的协方差和标准差的商则称为随机变量X与Y的相关系数,记为)

   相关系数衡量随机变量X与Y相关程度的一种方法,相关系数的取值范围是[-1,1]。相关系数的绝对值越大,则表明X与Y相关度越高。当X与Y线性相关时,相关系数取值为1(正线性相关)或-1(负线性相关)。

    具体的,如果有两个变量:X、Y,最终计算出的相关系数的含义可以有如下理解:

当相关系数为0时,X和Y两变量无关系。 
当X的值增大(减小),Y值增大(减小),两个变量为正相关,相关系数在0.00与1.00之间。 
当X的值增大(减小),Y值减小(增大),两个变量为负相关,相关系数在-1.00与0.00之间。

   相关距离的定义是:

OK,接下来,咱们来重点了解下皮尔逊相关系数。

    在统计学中,皮尔逊积矩相关系数(英语:Pearson product-moment correlation coefficient,又称作 PPMCC或PCCs, 用r表示)用于度量两个变量X和Y之间的相关(线性相关),其值介于-1与1之间。

通常情况下通过以下取值范围判断变量的相关强度: 
相关系数     0.8-1.0     极强相关 
                 0.6-0.8     强相关 
                 0.4-0.6     中等程度相关 
                 0.2-0.4     弱相关 
                 0.0-0.2     极弱相关或无相关

在自然科学领域中,该系数广泛用于度量两个变量之间的相关程度。它是由卡尔·皮尔逊从弗朗西斯·高尔顿在19世纪80年代提出的一个相似却又稍有不同的想法演变而来的。这个相关系数也称作“皮尔森相关系数r”。

(1)皮尔逊系数的定义:

两个变量之间的皮尔逊相关系数定义为两个变量之间的协方差和标准差的商:

以上方程定义了总体相关系数, 一般表示成希腊字母ρ(rho)。基于样本对协方差和方差进行估计,可以得到样本标准差, 一般表示成r:

一种等价表达式的是表示成标准分的均值。基于(Xi, Yi)的样本点,样本皮尔逊系数是

               其中、 及 ,分别是标准分、样本平均值和样本标准差。

或许上面的讲解令你头脑混乱不堪,没关系,我换一种方式讲解,如下:

假设有两个变量X、Y,那么两变量间的皮尔逊相关系数可通过以下公式计算:

公式一:

注:勿忘了上面说过,“皮尔逊相关系数定义为两个变量之间的协方差和标准差的商”,其中标准差的计算公式为:

公式二: 
公式三: 
公式四:

以上列出的四个公式等价,其中E是数学期望,cov表示协方差,N表示变量取值的个数。

(2)皮尔逊相关系数的适用范围 
当两个变量的标准差都不为零时,相关系数才有定义,皮尔逊相关系数适用于:

两个变量之间是线性关系,都是连续数据。 
两个变量的总体是正态分布,或接近正态的单峰分布。 
两个变量的观测值是成对的,每对观测值之间相互独立。

(3)如何理解皮尔逊相关系数

rubyist:皮尔逊相关系数理解有两个角度

其一, 按照高中数学水平来理解, 它很简单, 可以看做将两组数据首先做Z分数处理之后, 然后两组数据的乘积和除以样本数,Z分数一般代表正态分布中, 数据偏离中心点的距离.等于变量减掉平均数再除以标准差.(就是高考的标准分类似的处理)

样本标准差则等于变量减掉平均数的平方和,再除以样本数,最后再开方,也就是说,方差开方即为标准差,样本标准差计算公式为:

所以, 根据这个最朴素的理解,我们可以将公式依次精简为:

其二, 按照大学的线性数学水平来理解, 它比较复杂一点,可以看做是两组数据的向量夹角的余弦。下面是关于此皮尔逊系数的几何学的解释,先来看一幅图,如下所示:

回归直线: y=gx(x) [红色] 和 x=gy(y) [蓝色]

如上图,对于没有中心化的数据, 相关系数与两条可能的回归线y=gx(x) 和 x=gy(y) 夹角的余弦值一致。

对于没有中心化的数据 (也就是说, 数据移动一个样本平均值以使其均值为0), 相关系数也可以被视作由两个随机变量 向量 夹角 的 余弦值(见下方)。

举个例子,例如,有5个国家的国民生产总值分别为 10, 20, 30, 50 和 80 亿美元。 假设这5个国家 (顺序相同) 的贫困百分比分别为 11%, 12%, 13%, 15%, and 18% 。 令 x 和 y 分别为包含上述5个数据的向量: x = (1, 2, 3, 5, 8) 和 y = (0.11, 0.12, 0.13, 0.15, 0.18)。 
利用通常的方法计算两个向量之间的夹角  (参见 数量积), 未中心化 的相关系数是:

我们发现以上的数据特意选定为完全相关: y = 0.10 + 0.01 x。 于是,皮尔逊相关系数应该等于1。将数据中心化 (通过E(x) = 3.8移动 x 和通过 E(y) = 0.138 移动 y ) 得到 x = (−2.8, −1.8, −0.8, 1.2, 4.2) 和 y = (−0.028, −0.018, −0.008, 0.012, 0.042), 从中

(4)皮尔逊相关的约束条件

从以上解释, 也可以理解皮尔逊相关的约束条件:

1 两个变量间有线性关系 
2 变量是连续变量 
3 变量均符合正态分布,且二元分布也符合正态分布 
4 两变量独立

在实践统计中,一般只输出两个系数,一个是相关系数,也就是计算出来的相关系数大小,在-1到1之间;另一个是独立样本检验系数,用来检验样本一致性。

简单说来,各种“距离”的应用场景简单概括为,空间:欧氏距离,路径:曼哈顿距离,国际象棋国王:切比雪夫距离,以上三种的统一形式:闵可夫斯基距离,加权:标准化欧氏距离,排除量纲和依存:马氏距离,向量差距:夹角余弦,编码差别:汉明距离,集合近似度:杰卡德类似系数与距离,相关:相关系数与相关距离。

机器学习---常见的距离公式(欧氏距离、曼哈顿距离、标准化欧式距离、余弦距离、杰卡德距离、马氏距离、切比雪夫距离、闵可夫斯基距离、K-L散度) 欧几里得度量(euclidean metric)(也称欧氏距离)是一个通常采用的距离定义,指在m维空。间中两个点之间的真实距离,或者向量的自然长度(即该点到原点的距离)。的欧氏距离就是两点之间的实际距离。 阅读详情

相关推荐

用ST25DV芯片+KiCad快速设计NFC标签天线:参数计算/脚本生成/实测优化全流程

本文详细介绍了使用ST25DV芯片和KiCad工具设计NFC标签天线的全流程,包括参数计算、脚本生成和实测优化。通过解析芯片等效工作原理和设计思路,帮助开发者避开常见陷阱,实现高效、可量产的天线设计。文章还提供了Python计算工具和KiCad自动化脚本,大幅提升设计效率和成功率。

jj890的博客 758

ML 07、机器学习中的距离度量

机器学习算法 原理、实现与实践 —— 距离的度量     声明:本篇文章内容大部分转载于July于优快云的文章:从K近邻算法、距离度量谈到KD树、SIFT+BBF算法,对内容格式与公式进行了重新整理。同时,文章中会有一些对知识点的个人理解和归纳补充,不代表原文章作者的意图。 1. 欧氏距离 欧氏距离是最常见的两点之间或多点之间的距离表示法,又称之为欧几里得度量,它定义于欧几里得...

weixin_33811539的博客 1506

CHIP-Seq数据分析流程

文章目录CHIP-Seq数据分析流程相关软件安装数据下载将SRA转化为fastq文件数据质控,过滤数据质控然后进行质控,过滤低质量reads,去接头比对下载小鼠参考基因组的索引和注释文件比对sam文件转bam为bam文件建立索引载入IGV查看用MACS call peak安装MACS结果注释与可视化 CHIP-Seq数据分析流程 相关软件安装 所需要的软件有sratoolkit, fastqc,bowtie2,samtools,macs2,htseq-count,bedtools和前面RNA-seq数据分析

bio_meimei的博客 8789

【欧氏距离简介】

欧氏距离的概念简单易懂,但在很多数据分析任务中都扮演着关键角色。例如,在聚类分析中,我们可以使用欧氏距离来衡量数据点之间的相似性,从而将相似的数据点归为一类。在图像处理中,可以利用欧氏距离来比较图像的相似性,从而进行图像检索或匹配。欧氏距离是用来衡量两个向量之间的相似性或差异性的一种度量方法。它在很多领域,包括图像处理、聚类分析和推荐系统中都得到了广泛的应用。欧氏距离是在多维空间中计算两点之间的直线距离的方法。在这个例子中,我们定义了一个计算欧氏距离的函数。,最后计算并打印出了点。

武帝为此的博客 3262

Origin画图——获取论文图中数据

有时候需要已发表论文的图的数据,这里使用Origin软件取值,并且可以实现对图形再次画图。 Step 1. 打开origin软件,点击工具,图形数字化工具。 Step 2. 打开要获取数据的图片。拉动红蓝坐标,与图的坐标轴所贴合。 Step 3. 打开要获取数据的图片。拉动红蓝坐标,与图的坐标轴所贴合。 Step 3. 设置参数横轴起始坐标为300-900,纵轴为1.8-2.6. Step 4. 点击第五个手动取点,取出图中数据点。 Step 5. 依次对原图进行取点。点击项目资源查看图。

qq_42278015的博客 5183

C++,使用Qt设计一个登录窗口

使用Qt设计一个登录界面

heyu0311的博客 2991

距离向量(欧式距离、曼哈顿距离等)

二、距离向量 1)欧氏距离 欧式距离是最容易值观理解的距离度量方法。 2)曼哈顿距离 在曼哈顿街区要从一个十字路口开车到另一个十字路口,驾驶距离显然不是两点之前的直线距离。这个实际的驾驶距离就是"曼哈顿距离"。曼哈顿距离也称“城市街区距离”。 3)切比雪夫距离 国际象棋中,国王可以直行、横行、斜行,所以国王走一步可以移动到相邻8个方格中的任意一个。国王从格子(x1,y1)走到格子(x2,y2...

王涛涛的博客 1万+

Spring AI Alibaba Agent开发实战:DeepResearch Agent调度系统

智能Agent调度系统通过专业化分工解决传统AI系统的三大痛点:通用模型专业性不足、处理效率低下和资源浪费。系统采用分层架构设计,核心组件包括智能调度器、Agent选择辅助器和集成工具类,实现问题分类、专业Agent匹配和搜索策略优化的全流程自动化。系统特点包括:1)配置驱动的灵活扩展;2)分层回退的容错机制;3)支持工具调用与传统搜索的智能切换。该架构通过策略模式和依赖注入等技术,在保证稳定性的同时显著提升了研究质量和效率,为企业级多Agent协作提供了完整解决方案。(149字)

wjianwei666的专栏 503

机器学习中的数学——距离定义:基础知识

在机器学习中,我们经常需要计算样本之间的差异,进而评价个体的相似性和类别等信息。特征空间中两个样本之间的距离就是两个样本相似性的一种反映。常见的分类和聚类算法,如k近邻、k-means、层次聚类等、等都会选择一种距离或相似性的度量方法。根据数据特性的不同,可以采用不同的度量方法。一般而言,定义一个函数 d(x,y)d(x,y)d(x,y), 若它是一种“距离度量”,则需要满足一些基本性质: 非负性:d(x,y)≥0d(x,y)\geq 0d(x,y)≥0 同一性:d(x,y)=0⇔x=yd(x,y)=0\

冯·诺依曼 2万+

一文吃透 ABAP CDS SELECT:语法全景、关联与去重、可运行示例与实战心法

摘要: 本文深入解析ABAP中CDS视图的SELECT语法,重点介绍两种等价写法、关联与路径表达式优化、DISTINCT去重逻辑及WHERE/GROUP BY/HAVING/UNION等子句的应用。通过可运行的业务伙伴角色去重、关联路径查询及多角色筛选示例,演示如何将CDS特性转化为项目实践。强调关联复用性优于传统JOIN,并指出DISTINCT的权限边界与误用场景,帮助开发者从行式思维转向图式数据建模。(150字) 关键词: ABAP CDS、SELECT语法、路径表达式、DISTINCT去重、关联复用

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 391

YOLOv13改进策略【Head】| 引入RT-DETR中的RTDETRDecoder,替换检测头

本文记录的是基于RTDETRDecoder模块的YOLOv13目标检测改进方法研究。RT-DETR的模块通过,能为解码器提供高质量的初始,从而。相比v13原始的检测头,RT-DETR能,替换后能够更好的提高模型性能。

Limiiiing的博客 433

机器学习中的数学——距离定义(一):欧几里得距离(Euclidean Distance)

欧几里得距离或欧几里得度量是欧几里得空间中两点间的即直线距离。使用这个距离,欧氏空间成为度量空间,相关联的范数称为欧几里得范数。 nnn维空间中的欧几里得距离: d(x,y)=∑i=1n(xi−yi)2=(x1−y1)2+(x2−y2)2+⋯+(xn−yn)2d(x, y)=\sqrt{\sum_{i=1}^n(x_i-y_i)^2}=\sqrt{(x_1-y_1)^2+(x_2-y_2)^2+\cdots+(x_n-y_n)^2}d(x,y)=i=1∑n​(xi​−yi​)2​=(x1​−y1​)2+(x

冯·诺依曼 7万+

Apollo Planning决策规划算法代码详细解析 (1):Scenario选择

本文重点讲解Apollo代码中怎样配置Scenario以及选择当前Scenario,Scenario决策是Apollo规划算法的第一步,本文会对代码进行详细解析,也会梳理整个决策流程,码字不易,喜欢的朋友们麻烦点个关注与赞。 在本文你将学到下面这些内容: 规划器planer的种类; 规划器planer的主要函数及逻辑; 场景管理类ScenarioManager的运行机制; 场景注册方法; 场景决策流程,如何选择当前场景 详细的apollo决策规划代码分析 代码具体过程如下: 1、Scenar

自动驾驶Player的博客 1万+

机器学习中的数学——距离定义(十六):豪斯多夫距离(Hausdorff Distance)

豪斯多夫距离(Hausdorff Distance)是在度量空间中任意两个集合之间定义的一种距离。给定欧氏空间中的两点集A={a1,a2,⋯ ,an}A=\{a_1, a_2, \cdots, a_n\}A={a1​,a2​,⋯,an​}和B={b1,b2,⋯ ,bm}B=\{b_1, b_2, \cdots, b_m\}B={b1​,b2​,⋯,bm​},则豪斯多夫距离为: H(A,B)=max⁡(h(A,B),h(B,A))H(A, B)=\max{(h(A, B), h(B, A))}H(A,B)=m

冯·诺依曼 2万+

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

机器学习中的数学——距离定义(二):曼哈顿距离(Manhattan Distance)

曼哈顿距离是种使用在几何度量空间的几何学用语,用以标明两个点在标准坐标系上的绝对轴距总和。 下图中红线代表曼哈顿距离,绿色代表欧氏距离,也就是直线距离,而蓝色和黄色代表等价的曼哈顿距离。 曼哈顿距离在2维平面是两点在纵轴上的距离加上在横轴上的距离,即: d(x,y)=∣x1−y1∣+∣x2−y2∣d(x, y)=|x_1-y_1|+|x_2-y_2|d(x,y)=∣x1​−y1​∣+∣x2​−y2​∣ 对于一个具有正南正北、正东正西方向规则布局的城镇街道(如:曼哈顿),从一点到达另一点的距离正是在南北方向

冯·诺依曼 6万+

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

机器学习-各距离定义

机器学习-各类距离的定义 两个向量之间的距离(此时向量作为n维坐标系中的点)计算,在数学上称为向量的距离(distance),也称为样本之间的相似性度量(Similarity Measurement) 它反映为某类事物在距离上接近或远离的程度。直觉上,距离越近的就越相似,越容易归为一类;距离越远就越不同。 范数 向量的范数可以简单、形象地理解为向量的长度,或者向量到坐标系原点的距离,或者相应空...

qq_38304392的博客 481

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

机器学习中的数学——距离定义(四):切比雪夫距离(Chebyshev Distance)

切比雪夫距离(Chebyshev Distance)为L∞L\inftyL∞度量,是向量空间中的一种度量,二个点之间的距离定义是其各坐标数值差绝对值的最大值。以数学的观点来看,切比雪夫距离是由一致范数(或称为上确界范数)所衍生的度量,也是超凸度量的一种: D(x,y)=max⁡(∣xi−yi∣)D(x, y)=\max(|x_i-y_i|)D(x,y)=max(∣xi​−yi​∣) 国际象棋棋盘上二个位置间的切比雪夫距离是指王要从一个位子移至另一个位子需要走的步数。由于王可以往斜前或斜后方向移动一格,因此可

冯·诺依曼 3万+

机器学习中的数学——距离定义(十五):Dice系数(Dice Coefficient)

Dice系数(Dice Coefficient)用于度量两个集合的相似性,因为可以把字符串理解为一种集合,因此Dice系数也会用于度量字符串的相似性: Dice(A,B)=2∣A∩B∣∣A∣+∣B∣\text{Dice}(A, B)=\frac{2|A\cap B|}{|A| + |B|}Dice(A,B)=∣A∣+∣B∣2∣A∩B∣​ 其中,分子是AAA与BBB的交集数量的两倍,分母为AAA和BBB的长度之和,所以他的范围也在0到1之间。从公式看,Dice系数和杰卡德相似系数非常的类似。杰卡德相似系数是在

冯·诺依曼 1万+

机器学习中的数学——距离定义(十四):Ochiia系数(Ochiia Coefficient)

Ochiia系数(Ochiia Coefficient)指的是两个集合的交集大小与两个集合大小的几何平均值的壁纸,它是余弦相似性的一种形式: K(A,B)=∣A∩B∣∣A∣×∣B∣K(A, B)=\frac{|A\cap B|}{\sqrt{|A|\times|B|}}K(A,B)=∣A∣×∣B∣​∣A∩B∣​ ...

冯·诺依曼 1万+

利用dft的定义计算dft的matlab程序_机器学习中的距离计算方式

在机器学习中,往往需要设定一个损失函数,损失函数的设定对模型优化有着至关重要的作用,我们希望损失函数尽量是凸函数,那么就可以用相关的优化算法进行求解迭代。损失函数代表着我们模型预测值与真实值之间的差异(一般有求和),这个差异就是预测值与真实值之间的距离。今天我们聊一聊机器学习中的那些距离计算方式。首先、一个距离在数学上的定义是: //同一性 //非负性 //对称性 //直递性,也称为三角形法则常见...

weixin_39549852的博客 654

机器学习中的数学——距离定义(八):余弦距离(Cosine Distance)

余弦距离(Cosine Distance)也可以叫余弦相似度。 几何中夹角余弦可用来衡量两个向量方向的差异,机器学习中借用这一概念来衡量样本向量之间的差异。相比距离度量,余弦相似度更加注重两个向量在方向上的差异,而非距离或长度上。nnn维空间中的余弦距离为: cos⁡(x,y)=x⋅y∣x∣⋅∣y∣=∑i=1nxiyi∑i=1nxi2∑i=1nyi2\cos(x, y)=\frac{x\cdot y}{|x|\cdot|y|}=\frac{\sum_{i=1}^nx_iy_i}{\sqrt{\sum_{i=

冯·诺依曼 5万+

机器学习中的数学——距离定义(十一):汉明距离(Hamming Distance)

汉明距离(Hamming Distance)是应用于数据传输差错控制编码的距离度量方式,它表示两个(相同长度)字符串对应位不同的数量。对两个字符串进行异或运算,并统计结果为1的个数,那么这个数就是汉明距离。我们也可以将汉明距离理解为两个等长字符串之间将其中一个变为另外一个所需要作的最小替换次数。 下面我们来看一下布雷汉明距离的Python实现: def HammingDistance(x, y): return sum(x_ch != y_ch for x_ch, y_ch in zip(x, y)

冯·诺依曼 3万+

机器学习中的数学——距离定义(六):马氏距离(Mahalanobis Distance)

马氏距离(Mahalanobis Distance)是由印度统计学家马哈拉诺比斯(P. C. Mahalanobis)提出的,表示数据的协方差距离。它是一种有效的计算两个未知样本集的相似度的方法。与欧氏距离不同的是它考虑到各种特性之间的联系并且是尺度无关的,即独立于测量尺度。对于一个均值为μμμ,协方差矩阵为Σ\SigmaΣ的多变量向量,其nnn维空间中的马氏距离为: d(x,y)=(x−y)TΣ−1(x−y))d(x, y)=\sqrt{(x-y)^T\Sigma^{-1}(x-y))}d(x,y)=(x

冯·诺依曼 3万+

机器学习中的数学——距离定义(九):测地距离(Geodesic Distance)

测地距离(Geodesic Distance)最初是指球体表面两点之间的最短距离,但随后这一概念便被推广到了数学空间的测量之中。例如在图论中,测地距离就是图中两节点的最短路径的距离。

冯·诺依曼 2万+

n维空间的欧式距离计算公式_[机器学习]常用距离定义与计算

本文首发于个人blog:http://booleflow.com/说明此处主要使用scipy中的距离计算模块,scipy.spatial.distance源码在这里https://github.com/scipy/scipy/blob/v0.17.1/scipy/spatial/distance.py#L606-L634from scipy.spatial import distance数值向量距...

weixin_39538500的博客 4694

机器学习中的数学——距离定义(三):闵可夫斯基距离(Minkowski Distance)

闵可夫斯基距离不是一种距离,而是一组距离的定义,是对多个距离度量公式的概括性的表述,它包含了我们在《距离定义(一):欧几里得距离》和《距离定义(二):曼哈顿距离》中的欧几里得距离和曼哈顿距离就是闵可夫斯基距离的一种特殊情况: d(x,y)=(∑i=1n(xi−yi)p)1pd(x, y)=(\sum_{i=1}^n(x_i-y_i)^p)^{\frac{1}{p}}d(x,y)=(i=1∑n​(xi​−yi​)p)p1​ ...

冯·诺依曼 3万+
上一篇: C++调试之创建Dump文件和调试Dump文件
下一篇: 并行计算——C++ AMP(1)
Walker Zhang
博客等级 码龄14年 144粉丝 60原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值