一、定义

1.1 特点

马氏距离具有以下特点:

  • 马氏距离不受量纲的影响,两点之间的马氏距离与原始数据的测量单位无关,即独立于测量尺度。采用数据预处理中的标准化和中心化等方法所获得的马氏距离相同;
  • 马氏距离具有放大变化微小的变量的作用,这对于化学指纹图谱的分析而言是有利的特点;
  • 马氏距离在计算中考虑了各自变量之间的线性相关关系,因此可以排除变量之间相关性的干扰;
  • 马氏距离可用于鉴别离群值。一个马氏距离较大的样本必然是一个离群值;
  • 应用马氏距离的前提是各自变量均应符合正态分布。

马氏距离与欧氏距离的主要区别点在于:

  • 欧氏距离有量纲,将各自变量的差别同等对待;马氏距离无量纲;
  • 欧氏距离不考虑变量间的相关性,马氏距离根据协方差矩阵消除了相关性;
  • 如果协方差矩阵为单位矩阵,则马氏距离就简化为欧氏距离;

注意:马氏距离的平方属于卡方分布,两者结合可以用于异常点的检测

二、卡方分布

详细的介绍

https://baike.so.com/doc/5430887-5669177.html

下图是卡方分布表

matlab代码示例

%异常值处理
%采用马氏距离法
clc;
clear all;load data0.txt %读数据ave=mean(data0);%如果A是一个矩阵,mean(A)将中的各列视为向量,把矩阵中的每列看成一个向量,返回一个包含每一列所有元素的平均值的行向量。
[m,n]=size(data0);
%计算矩阵协方差
xfc=cov(data0);
%xfcni=inv(xfc);%计算矩阵协方差的逆delta=zeros(m,n);
for i=1:m delta(i,:)=data0(i,:)-ave(1,:);%计算样本与均值的差值
end
%deltazz=delta';%n*m,样本与均值的差值的逆%计算马氏距离
msjl=zeros(m,1);
for i=1:mmsjl(i,1)=delta(i,:)/xfc*(delta(i,:)');
end
s=0;
for i=1:mif msjl(i,1)>2.18%置信度为0.975,自由度为8,对应的卡方值s=s+1;end
end

三、具体应用

注意:自由度的选取

马氏距离 结合 卡方分布 异常点检测相关推荐

  1. 马氏距离详解(数学原理、适用场景、应用示例代码)

    看了很多关于马氏距离(Mahalanobis Distance)的介绍,但是总感觉有一些地方不太清晰,所以结合数学公式.机器学习中的应用案例,从头梳理一下. 马氏距离实际上是欧氏距离在多变量下的&qu ...

  2. 浅谈马氏距离【Mahalonobis Distance】

    浅谈马氏距离[Mahalonobis Distance] 1. Introduction 2. 欧式距离对于多元数据会存在一些什么问题? 3 .什么是马氏距离 4.马氏距离背后的数学和intuitio ...

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

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

  4. 直观理解--马氏距离

    首先我们很了解欧氏距离了,就是用来计算欧式空间(就是我们常见的坐标系)中两个点的距离的. 比如点 x = ( x 1 , - , x n ) x = (x_1,-,x_n) x=(x1​,-,xn​) ...

  5. RX异常点检测算法(马氏距离)

    异常检测算法目的在于从影像中将目标信息(异常信息)从影响背景和噪声中分离出来.RX异常检测算法为一种局部目标检测算法,算法的监测窗口包括目标窗口和背景窗口,且后者远大于前者.RX算法假设数据空间白化且 ...

  6. 马氏距离进行离群值检测

    没找到非常好的中文的文章,看到一篇很好的使用python进行马氏距离离群值检测的文章,在此转载,里面的代码可以直接跑,效率也是挺高的. 核心代码为: # Covariance matrix covar ...

  7. 马氏距离(Mahalanobis Distance)介绍与实例

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

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

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

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

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

  10. What is Mahalanobis distance? 马氏距离

    https://blogs.sas.com/content/iml/2012/02/15/what-is-mahalanobis-distance.html https://blogs.sas.com ...

最新文章

  1. CSDN受邀成为首批中国人工智能产业发展联盟特约媒体
  2. Jetson nano安装JupyterLab
  3. WebIDE,让开发更简单
  4. Java(4)---Java 对象和类
  5. cressman插值_NCL自带常用插值函数集锦
  6. linux充当防火墙,Linux下主机充当防火墙的巧妙应用之iptables
  7. 尚硅谷设计模式-观察者模式
  8. eclipse可视化插件
  9. python集合运算_python set集合的基本运算
  10. Halcon 《机器视觉算法及应用》十例(其四)
  11. Android如何播放一组音频文件(类似支付宝收款播报或者叫号播报)
  12. 【程序人生】从外包到大厂,你知道我这一个月是怎么过的吗?
  13. 革新OCR结构化技术应用,揭秘百度中英文OCR结构化模型StrucTexT预训练模型
  14. OBS Studio显示器捕获黑屏的解决方法
  15. vue + Element UI 动态Breadcrumb 面包屑的制作
  16. Java是未来的第一编程语言吗?
  17. Quartz相关配置
  18. javascript网页自动填表_javascript 自动填写表单
  19. 实战 J2EE 开发购物网站 开发环境篇
  20. R语言计算加权平均值:weighted.mean函数计算加权平均值、matrixStats包的weightedMean函数计算加权平均值、SDMTools包的wt.mean函数计算加权平均值

热门文章

  1. linkis标准版安装教程
  2. 2021-10-23
  3. Delphi学习第一课
  4. 你要的电子书下载网站
  5. Python面积计算器源代码
  6. codeforces633H Fibonacci-ish II
  7. hdu 5211 Mutiple 数学
  8. python股票回测
  9. ES查询-空字段和非空字段结果
  10. fgui的ui管理框架_GitHub - zyswx/DCET: Unity3D客户端和.Net Core服务器双端框架,支持FGUI和双端行为树,支持代码全热更(包括FGUI和行为树)...