本文介绍马氏距离(Mahalanobis Distance),通过本文,你将了解到马氏距离的含义、马氏距离与欧式距离的比较以及一个通过马氏距离进行异常检测的例子(基于Python的sklearn包)。

目的

计算两个样本间的距离时,需要考虑样本所在的分布造成的影响。影响包括两个方面:

  • 不同维度上的方差不同,进而不同维度在计算距离时的重要性不同;
  • 不同维度间可能存在相关性,干扰距离计算。

当数据的分布已知时,我们通常会用马氏距离代替欧氏距离,或者选择另一种方法:对数据进行转换(如PCA)。

定义

  1. 度量样本到样本分布间的距离
    d = ( x ⃗ − μ ⃗ ) T S − 1 ( x ⃗ − μ ⃗ ) d = \sqrt{(\vec x - \vec \mu)^T S^{-1} (\vec x - \vec \mu)} d=(x −μ ​)TS−1(x −μ ​) ​其中 μ ⃗ \vec \mu μ ​是样本分布的均值, S S S是样本分布的协方差矩阵
  2. 度量一个分布下,两个样本之间的距离
    d = ( x ⃗ − y ⃗ ) T S − 1 ( x ⃗ − y ⃗ ) d = \sqrt{(\vec x - \vec y)^TS^{-1}(\vec x - \vec y)} d=(x −y ​)TS−1(x −y ​) ​

直观理解

下面是一个二维空间中距离度量的例子(戳这里查看实例来源)。

图中,圆圈表示样本分布的中心点 c c c,两个叉分别表示两个样本点 x , y x, y x,y,从图中可以看出,在二维空间中两个叉到样本分布的中心点间的欧氏距离相等。但是很明显,绿叉应该是分布内的点,红叉是分布外的点,所以绿叉距离分布中心点的距离应该更近才合理。

使用马氏距离,就等同于通过数据转换的方法,消除样本中不同特征维度间的相关性和量纲差异,使的欧式距离在新的分布上能有效度量样本到分布间的距离。

  • 第一步,端详一下原始数据分布的特点。
    这些样本的特征维度即为横坐标轴和纵坐标轴,且两个特征维度呈现明显的正相关性。

  • 第二步,消除不同维度之间的相关性。
    消除特征维度间的相关性后,样本分布图如下所示,还存在的一个问题是两个特征维度间的量纲不一致。

  • 第三步,消除不同维度之间的量纲差异。

经过以上三步,现在的样本分布下,样本间的距离可以用欧氏距离来衡量。

性质

马氏距离消除了样本不同维度之间的方差差异和相关性,是一个无量纲的度量方式。

与欧式距离的关系

  • 如果协方差矩阵是单位矩阵 → \rightarrow →样本的特征维度间相关性(协方差)为0,量纲一致 → \rightarrow →马氏距离等同于欧氏距离。
  • 如果协方差矩阵是对角矩阵 → \rightarrow →样本的特征维度间的量纲一致 → \rightarrow →马氏距离等同于标准化后的欧氏距离。

实例——用马氏距离进行异常检测

实例来自sklearn官方文档

马氏距离(Mahalanobis Distance)介绍与实例相关推荐

  1. 【知识学习】马氏距离 Mahalanobis Distance

    目录 1. 协方差的意义 2. 马氏距离 2.1 概述 2.2 公式 2.3 实际意义 2.4 局限性 2.4.1 协方差矩阵必须满秩[不平衡数据少数类一般都不是] 2.4.2 不能处理非线性流形(m ...

  2. 马氏距离-Mahalanobis Distance

    一.学习目的 在训练one-shoting learning 的神经网路的时候,由于采用的是欧式距离,欧氏距离虽然很有用,但也有明显的缺点.它将样品的不同属性(即各指标或各变量)之间的差别等同看待,这 ...

  3. 马氏距离(Mahalanobis Distance)推导及几何意义

    看了一些博客对马氏距离的解释,似乎没有讲到本质的地方,本文从欧氏距离存在的问题开始入手,一步步推导出马氏距离,并得出结论:原始空间中的马氏距离等于坐标旋转变换及缩放后的空间中的欧氏距离. 假设数据集 ...

  4. 马氏距离 (马哈拉诺比斯距离) (Mahalanobis distance)

    马氏距离(Mahalanobis distance)是由印度统计学家马哈拉诺比斯(P. C. Mahalanobis)提出的,表示点与一个分布之间的距离.它是一种有效的计算两个未知样本集的相似度的方法 ...

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

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

  6. 【尚未完成,不建议参考】马氏距离,汉明距离

    本博客尚未完成,不建议参考 主要参考:马氏距离实例详解_NLP新手村成员的博客-CSDN博客_马氏距离计算实例 马氏距离例题详解(全网最详细)___Wedream__的博客-CSDN博客_马氏距离公式 ...

  7. 欧氏距离,曼哈顿距离,闵可夫斯基距离,马氏距离,汉明距离

    欧氏距离 欧氏距离( Euclidean distance)是一个通常采用的距离定义,它是在N维空间中两个点之间的真实距离. 曼哈顿距离 曼哈顿距离是种使用在几何度量空间的几何学用语,用以标明两个点在 ...

  8. 马氏距离由浅入深的理解

    1. 简单理解协方差的物理意义 2. 协方差矩阵中的元素对分布的影响 3. 对马氏距离的理解 1. 简单理解协方差的物理意义 在概率论中,两个随机变量 X 与 Y 之间相互关系,大致有下列3种情况: ...

  9. 目标跟踪:Deepsort--卡尔曼滤波、匈牙利匹配、马氏距离、欧氏距离、级联匹配、reid

    本篇文章供自己学习回顾,其中错误希望指出! 先把目标跟踪中涉及到的名词抛出来: 1.卡尔曼滤波. 2.匈牙利匹配:https://blog.csdn.net/DeepCBW/article/detai ...

  10. 简单粗暴理解与实现机器学习之K-近邻算法(三):距离度量、欧氏距离、曼哈顿距离、切比雪夫距离、闵可夫斯基距离、标准化距离、余弦距离、汉明距离、杰卡德距离、马氏距离

    K-近邻算法 文章目录 K-近邻算法 学习目标 1.3 距离度量 1 欧式距离**(Euclidean Distance):** 2 **曼哈顿距离(Manhattan Distance):** 3 ...

最新文章

  1. 《剑指offer》c++版本 14.剪绳子
  2. 古代大臣上朝时手里拿的是什么东西
  3. 登陆状态下加入购物车
  4. IOS初级:UIScrollView UIPageControl
  5. ICG游戏:尼姆游戏异或解法的证明
  6. 论文二作对硕博研究生有用吗?
  7. (数据库系统概论|王珊)第二章关系数据库-第二节、第三节:关系操作和关系完整性
  8. vue 生产环境 background 背景图不显示原因
  9. Python数据分析学习笔记01:安装相关软件、导入扩展模块与集成开发环境
  10. 如何使用PowerShell保护密码
  11. GIS 地图制作 学习总结
  12. 【基于51】红外寻迹智能小车-硬件篇
  13. dp和px,那些不得不吐槽的故事——Android平台图片文字元素单位浅析
  14. 电磁波传播matlab程序,电磁波在不同介质中传播的 MATLAB 仿真教学实践论文
  15. sendcloud php 群发,laravel sendcloud发送邮件
  16. 【网页设计】期末大作业html+css(B站首页 1页 带js轮播)
  17. restTemplate访问接口
  18. 画论29 刘道醇《宋朝名画评》
  19. 宠物赛道的泡泡玛特|BarkBox 如何靠一流的订阅服务实现 95% 的用户留存
  20. Visp系列学习二:visp显示和visp_ros获取图像

热门文章

  1. 从数据标准到数据库设计:解决基础数据标准落地的最后一公里难题(上)
  2. IRT模型进行能力值估计
  3. 视频教程-网络营销-网站盈利方式/淘宝客网络赚钱/广告联盟-其他
  4. php 自动关键词,php实现自动获取生成关键词功能
  5. SPSS 22.0下载、授权及汉化
  6. 【无标题】C++输入两个坐标显示出输入的坐标以及均值
  7. 要想文章上Google搜索引擎首页,SEO 要做好下面7个点优化
  8. 有哪些公司为外贸独立站提供收款服务?
  9. windows10家庭版升级为企业版
  10. STM32F103步进电机驱动简单控制