搜索
写经验 领红包
 > 影视

切比雪夫距离计算公式(什么是切比雪夫距离)

导语:欧式距离、切比雪夫距离和L1距离,数据科学家必备知识

全文共1617字,预计学习时长5分钟

图源:Unsplash

世界上最遥远的距离

不是生与死的距离

而是我站在你面前

你却不知道我爱你

“尴尬开场”到此结束。

今天,小芯给大家带来的是数据科学家绝对不能错过的3个距离知识!

无论你是刚开始接触数据科学还是有一定的经验,下面这三个距离都是必不可少的知识:

1. 欧式距离(Euclidean Distance)(或直线距离)

欧氏距离算法最直观:这是有人让我们测量距离时最直观的一种距离计算方法。

欧氏距离就是横纵坐标轴(x,y)内两点间的直线距离:比如在世界地图上,可以通过坐标(纬度,经度)锁定一个城市。

欧氏距离算法测量直线距离

想象一下在下图城市中心地图上测量A、B两点间的直线距离。

A到B之间的欧氏距离就是直线距离,采用毕达哥拉斯算法

既然是欧氏距离,那么只需要两点的横纵坐标,再运用毕达哥拉斯算法即可。

毕达哥拉斯定理是指在已知直角的水平线和垂直线长度时,通过公式a² + b²=c²计算得出直角的“对角线”长度(或弦长)。

点A、B之间欧氏距离的计算

2. 切比雪夫距离(Chebyshev Distance)(也称棋盘距离)

切比雪夫距离也叫棋盘距离(ChessboardDistance)或L-Infinity距离。对该距离最简单的解释就是“王”在棋盘上移动的距离:可以朝任意方向走(上、下、左、右)。

切比雪夫距离中,走斜线跟走直角是一样的

与L1距离的不同之处在于,这里我们将走直角的路线当作一步,而在城市街区距离中走直角是当作两步的(一步向左一步向右)。

该距离跟欧式距离也不一样,因为在欧氏距离中,正如上文所述,直角的路径是(x²+y²)开根的值。

欧氏距离、L1距离和切比雪夫距离的对比

切比雪夫距离就是棋盘距离。

举一个简单的例子就是有两个独立发动机的无人机:一个发动机是提供向前的动力,另一个是提供向侧面移动的动力。二者可以同时运转,而且可以在同一时间达到各自的最大动力。

效果就是无人机可以沿斜线飞速移动,跟水平移动的速度一样快:两个发动机都运转到极限就行。

再看上方的切比雪夫距离城市地图,步子1时,两个发动机同时运转,在步子2中二者也保持同时运转,但到步子3时就不用向前移动了,只需给侧面提供动力的发动机运转即可。

切比雪夫距离也因此得名“轴上最长的距离”

计算点A,B间的切比雪夫距离

3. L1距离(或城市街区距离)

L1距离,也称城市街区距离、曼哈顿距离(ManhattanDistance)、出租车距离(TaxicabDistance)、直线式距离(RectilinearDistance)或蛇形距离(SnakeDistance),并非指直线而是按街区算。

L1距离测量街区距离:只算直线部分

看下面这幅图便一目了然:L1距离只允许直线式移动!

点A到B之间的L1距离就是城市街区距离,也称为曼哈顿距离。

图中由A到B距离最短有多种选择:可以先朝上走过两个街区,然后右转再走过三个街区;或者先朝右走过三个街区,然后转而朝上走,等等。

L1距离就是段距离,所以跟实际路线无关。只需要知道最终要向东移动一定的x轴距离,向北移动一定的y轴距离。两个距离相加就是AB间的L1距离。

计算点A,B间的曼哈顿距离

希望这篇文章对大家以后理解距离有帮助,小芯在这里也非常感谢大家的阅读。

武运昌隆!

留言点赞关注

我们一起分享AI学习与发展的干货

如转载,请后台留言,遵守转载规范

本文内容由快快网络小鸣整理编辑!