距离度量的方法有欧式距离,切比雪夫距离、马氏距离、巴氏距离,曼哈顿距离等;

用欧氏距离(也称欧几里德度量),高中所学的两点距离公式就是欧氏距离在二维空间上的公式,也就是欧氏距离的n的值为2的情况.

二维坐标下:

(x1−x2)2+(x3−x4)2\sqrt{(x_1-x_2)^2} \quad + \quad \sqrt{(x_3-x_4)^2} (x1​−x2​)2​+(x3​−x4​)2​

曼哈顿距离:
c=∣x1−x2∣+∣x3−x4∣c=|x_1-x_2|+|x_3-x_4|c=∣x1​−x2​∣+∣x3​−x4​∣
从公式定义上看,曼哈顿距离一定是一个非负数,距离最小的情况就是两个点重合,距离为 0,这一点和欧氏距离一样。曼哈顿距离和欧氏距离的意义相近,也是为了描述两个点之间的距离,不同的是曼哈顿距离只需要做加减法,这使得计算机在大量的计算过程中代价更低,而且会消除在开平方过程中取近似值而带来的误差。不仅如此,曼哈顿距离在人脱离计算机做计算的时候也会很方便。

在国际象棋棋盘(图 2)上,有这种横平竖直的格子,描述格子和格子之间的距离可以直接用曼哈顿距离。如 A1 格子到 C4 格子的曼哈顿距离计算如下:

c=|3-1|+|4-1|=5 两个格子之间的曼哈顿距离为 5。
上面的公式只给了二维空间上的曼哈顿距离公式,三维、四维或者更多维度的计算原理是一样。

之所以曼哈顿距离又被称为出租车距离是因为在像纽约曼哈顿区这样的地区有很多由横平竖直的街道所切成的街区(Block),出租车司机计算从一个位置到另一个位置的距离,通常直接用街区的两个坐标分别相减,再相加,这个结果就是他即将开车通过的街区数量,而完全没有必要用欧氏距离来求解——算起来超级麻烦还没有意义,毕竟谁也没办法从欧氏距离的直线上飞过去。如图 3 所示,假设一辆出租车要从上面的圆圈位置走到下面的圆圈位置,无论是左边的线路,还是右边的线路,都要经过 11 个街区,而这个 11 就是曼哈顿距离。

从曼哈顿距离的定义就能看出,曼哈顿距离的创立,与其说有很大的学术意义不如说更多的是应用意义。这也是本书一直想说的一点,数学就在我们身边,它是我们的工具,能帮我们解决问题而不是带来麻烦。


切比雪夫距离

设平面空间内存在两点,它们的坐标为(x1,y1),(x2,y2)

则dis=max(|x1−x2|,|y1−y2|)

即两点横纵坐标差的最大值

如果想进一步了解曼哈顿距离与切比雪夫的互化,点击曼哈顿距离与切比雪夫的互化

距离度量的方法,欧式距离,切比雪夫距离、马氏距离、巴氏距离,曼哈顿距离相关推荐

  1. 数据的距离度量 一、欧式距离,曼哈顿距离,闵氏距离,切比雪夫距离,兰氏距离,马氏距离

    数据的距离度量 一.欧式距离,曼哈顿距离,闵氏距离,切比雪夫距离,兰氏距离,马氏距离 前言 欧式距离 标准欧式距离 曼哈顿距离 闵氏距离 切比雪夫距离 兰氏距离 马氏距离 前言 本篇记录一下常用的数据 ...

  2. 相似性度量(距离度量)方法(一):基本种类与公式

    相似性度量(或距离度量)方法在多元统计中的聚类分析.判别分析中的距离判别法.泛函分析.机器学习等方面都有应用.所以对于数据分析.机器学习等方面,掌握相似性的不同度量方法是十分重要且必要的. 相似性度量 ...

  3. 2个点马氏距离计算实例_数据分析基础:距离度量方式(欧式距离、马氏距离、曼哈顿距离)...

    数据分析中,为了评定数据之间的相似度,有很多不同的距离的计算方法,如欧氏距离,马氏距离等等. 欧氏距离 Euclidean distance:欧几里得距离,m维空间中两个点之间的真实距离 离差平方和, ...

  4. 数据科学中常见的9种距离度量方法,包括欧氏距离、切比雪夫距离、半正矢距离等

    1.欧氏距离(Euclidean Distance) 欧式距离可解释为连接两个点的线段的长度.欧式距离公式非常简单,使用勾股定理从这些点的笛卡尔坐标计算距离. 代码实现: import numpy a ...

  5. 【机器学习基础】常见的9种距离度量方法,内含欧氏距离、切比雪夫距离等

    作者|机器之心编译 来源|机器之心 在数据挖掘中,我们经常需要计算样本之间的相似度,通常的做法是计算样本之间的距离.在本文中,数据科学家 Maarten Grootendorst 向我们介绍了 9 种 ...

  6. 数据科学中常见的9种距离度量方法

    选自towardsdatascience 作者:Maarten Grootendorst 机器之心编译 编辑:陈萍 在数据挖掘中,我们经常需要计算样本之间的相似度,通常的做法是计算样本之间的距离.在本 ...

  7. 常见的几种距离量度(欧式距离、曼哈顿距离、切比雪夫距离等)

    在机器学习和数据挖掘中,我们经常需要计算样本之间的相似度,通常的做法是计算样本之间的距离.本文介绍几种常用的距离量度方法. 一.欧氏距离(Euclidean Distance) 我们从最常见的欧式距离 ...

  8. 近邻的距离度量表示法

    K近邻算法的核心在于找到实例点的邻居,这个时候,问题就接踵而至了,如何找到邻居,邻居的判定标准是什么,用什么来度量.这一系列问题便是下面要讲的距离度量表示法.但有的读者可能就有疑问了,我是要找邻居,找 ...

  9. 从K近邻算法、距离度量谈到KD树、SIFT+BBF算法

    原文出自:http://blog.csdn.net/v_JULY_v/article/details/8203674 前言 前两日,在微博上说:"到今天为止,我至少亏欠了3篇文章待写:1.K ...

最新文章

  1. Linux下配置汇编编译器NASM和bochs模拟器
  2. javaweb学习总结(三十九)——数据库连接池
  3. solidity智能合约[7]-整型与运算
  4. linux查询所建文件夹,linux中的文件和文件夹的新建、查询、删除
  5. java里面什么时候环境变量_Java的环境变量什么时候需要设置?
  6. 浅谈python爬取数字书苑图书
  7. Java反射机制是否会影响性能
  8. python常用模块:re模块案例、subprocess
  9. 题目:python 打印出如下图案(菱形):
  10. kkFileView集成LibreOffice,解决部分文档预览500
  11. 轻松高效搭建可视化数据网站
  12. 使用 pandas 做数据可视化
  13. USACO 2012 January Contest, Gold Division Solution
  14. VUEElement综合案例
  15. 2021.5.22 Python爬虫实战:效率办公,从下载文献开始...
  16. HomeGuard Pro(系统监控软件)v8.3.1版本更新
  17. 百度快排是什么原理,百度霸屏如何实现?
  18. mqtt 发送消息过多_eclipse mqttclient 性能MQTT(32202): 正在发布过多的消息
  19. 离线对活动目录数据库进行碎片整理
  20. 图文详解AO打印(标准模式)

热门文章

  1. oracle 日期函数截取,oracle的截取函数(主要日期)
  2. 淘宝双十一为什么这么火?
  3. 研宝网:在职研究生,主要的优势有哪些?
  4. Ubuntu必备开发工具安装
  5. centos7用Java搭建网站,CentOS7 使用java建站程序publiccms建站教程之--Redhat系环境搭建篇...
  6. python cms建站教程:Wagtail建站(二、修改主页与自定义后台管理)
  7. Python Selenium 基础知识
  8. SWUST OJ 1159 吃披萨
  9. 抗震救灾,众志成城,情系汶川,哀悼512
  10. parse_url用法和一些参数说明