机器学习——马氏距离
机器学习——马氏距离
- 前言
- 马氏距离
- 马氏距离的推导
前言
在介绍马氏距离之前,我们首先看如下概念:
- 方差:方差是标准差的平方,而标准差的意义是数据集中各个点到均值点距离的平均值。反应的是数据的离散程度
- 协方差:标准差与方差是描述一维数据的,当存在多维数据时,我们通常需要知道每个维数的变量中间是否存在关联。**协方差就是衡量多维数据集中,变量之间相关性的统计量。**比如说,一个人的身高与他的体重的关系,这就需要用协方差来衡量。如果两个变量之间的协方差为正值,则这两个变量之间存在正相关,若为负值,则为负相关。
- 协方差矩阵:当变量多了,超过两个变量了。那么,就用协方差矩阵来衡量这么多变量之间的相关性。假设X是以n个随机变数组成的列向量:
X=[X1X2...Xn]X=\left[{\begin{array}{l}X_1\\X_2\\...\\X_n\end{array}}\right]X=⎣⎢⎢⎡X1X2...Xn⎦⎥⎥⎤
其中,μi\mu_iμi是第i个元素的期望值,即μi=E(Xi)\mu_i=E(X_i)μi=E(Xi)。协方差矩阵Σ\SigmaΣ的第i,j项被定义为如下形式:
∑ij=cov(Xi,Xj)=E[(Xi−μi)(Xj−μj)]\sum_{ij}=cov(X_i,X_j)=E[(X_i-\mu_i)(X_j-\mu_j)]ij∑=cov(Xi,Xj)=E[(Xi−μi)(Xj−μj)]
马氏距离
DM(x)=(x−μ)TΣ−1(x−μ)D_M(x)=\sqrt{(x-\mu)^T\Sigma^{-1}(x-\mu)}DM(x)=(x−μ)TΣ−1(x−μ)
特别的,当Σ=I\Sigma=IΣ=I时,马氏距离退化为欧氏距离。
马氏距离是由马哈拉诺比斯提出的,表示数据的协方差矩阵。马氏距离是一种距离的度量,可以看作是欧式距离的一种修正,修正了欧式距离中各个维度尺度不一致且相关的问题。它是一种有效的计算两个未知样本集的相似度的方法。与欧式距离不同的是它考虑到各种特性之间的联系,并且是尺度无关的,即独立于测量尺度
马氏距离也可以定义为两个服从同一分布并且其协方差矩阵为Σ\SigmaΣ的随机变量XXX与YYY的差异程度。
马氏距离的推导
对协方差矩阵Σ\SigmaΣ进行特征分解,有:
Σ=UΛUT,UUT=I,Λ=diag(λi),U=(U1,...,Up)\Sigma=U\Lambda{U^T}, UU^T=I,\Lambda=diag(\lambda_i), U=(U_1,...,U_p)Σ=UΛUT,UUT=I,Λ=diag(λi),U=(U1,...,Up)
因此,
Σ=(U1,U2,...,Up)Λ(U1,U2,..,Up)T=∑i=1pUiλiUiT\Sigma =(U_1,U_2,...,U_p)\Lambda(U_1,U_2,..,U_p)^T\\ =\sum_{i=1}^pU_i\lambda_iU_i^TΣ=(U1,U2,...,Up)Λ(U1,U2,..,Up)T=i=1∑pUiλiUiT
得到马氏距离为:
DM(x)=(x−μ)TΣ−1(x−μ)=(X−μ)T∑i=1pUi1λiUiT(X−μ)=∑i=1p(X−μ)TUi1λiUiT(X−μ)D_M(x)=\sqrt{(x-\mu)^T\Sigma^{-1}(x-\mu)}\\ =\sqrt{(X-\mu)^T\sum_{i=1}^pU_i\frac{1}{\lambda_i}U_i^T(X-\mu)}\\ =\sqrt{\sum_{i=1}^p(X-\mu)^TU_i\frac{1}{\lambda_i}U_i^T(X-\mu)}DM(x)=(x−μ)TΣ−1(x−μ)=(X−μ)Ti=1∑pUiλi1UiT(X−μ)=i=1∑p(X−μ)TUiλi1UiT(X−μ)
设yi=(x−μ)Tuiy_i=(x-\mu)^Tu_iyi=(x−μ)Tui
上式可以化简为:
∑i=1pyi1λiyiT=∑i=1pyi2λi\sum_{i=1}^py_i\frac{1}{\lambda_i}y_i^T\\ =\sum_{i=1}^p\frac{y_i^2}{\lambda_i}i=1∑pyiλi1yiT=i=1∑pλiyi2
当p=2p=2p=2,时y12λ1+y22λ2=1\frac{y_1^2}{\lambda_1}+\frac{y_2^2}{\lambda_2}=1λ1y12+λ2y22=1,
可以得到该函数图像为一个椭圆曲线,其中y坐标轴与x坐标轴经过了一个平移及缩放变换
机器学习——马氏距离相关推荐
- 简单粗暴理解与实现机器学习之K-近邻算法(三):距离度量、欧氏距离、曼哈顿距离、切比雪夫距离、闵可夫斯基距离、标准化距离、余弦距离、汉明距离、杰卡德距离、马氏距离
K-近邻算法 文章目录 K-近邻算法 学习目标 1.3 距离度量 1 欧式距离**(Euclidean Distance):** 2 **曼哈顿距离(Manhattan Distance):** 3 ...
- 机器学习—聚类(一)(L—P范数/闽可夫斯基距离/马氏距离/相关系数/夹角余弦)
机器学习中用样本之间的距离/相似度来表示样本差异,下面介绍几种常用的距离/相似度,顺便介绍一下L-P范数. 1.闽可夫斯基距离 L-P范数与闽可夫斯基距离的定义一样: Lp=(∑1nxip)1p,x= ...
- 机器学习中的数学——距离定义(六):马氏距离(Mahalanobis Distance)
分类目录:<机器学习中的数学>总目录 相关文章: · 距离定义:基础知识 · 距离定义(一):欧几里得距离(Euclidean Distance) · 距离定义(二):曼哈顿距离(Manh ...
- 机器学习两种距离——欧式距离和马氏距离
我们熟悉的欧氏距离虽然很有用,但也有明显的缺点.它将样品的不同属性(即各指标或各变量)之间的差别等同看待,这一点有时不能满足实际要求.例如,在教育研究中,经常遇到对人的分析和判别,个体的不同属性对于区 ...
- [机器学习-概念] 什么是欧式距离、标准化欧式距离、马氏距离、余弦距离
1.欧式距离(Euclidean Distance) 欧式距离源自N维欧氏空间中两点x1,x2x_1,x_2x1,x2间的距离公式: 2.标准化欧式距离(Standardized Euclidea ...
- 概率论概念及机器学习中样本相似性度量之马氏距离
均值.标准差.方差: 样本均值描述的是集合的中间点.平均值.均值的信息是有限的,有时候甚至是完全没有参考意义的,比如各统计局最喜欢发布的平均工资.年收入等等,只有个文字游戏而已. 标准差描述的是样本集 ...
- 统计学相关概念及机器学习中样本相似性度量之马氏距离
均值.标准差.方差: 样本均值描述的是集合的中间点.平均值.均值的信息是有限的,有时候甚至是完全没有参考意义的,比如各统计局最喜欢发布的平均工资.年收入等等,只有个文字游戏而已. 标准差描述的是样本集 ...
- 高斯判别算法GDA(吴恩达机器学习c#实践,生成高斯模板显示同心圆马氏距离,一)
首先实现P(x|y)=高斯函数(正态分布),即y是正态分布,是条件,我们把它还原到图像界面I(i,j)每一个像素,是结果. 这个实际就是生成高斯模板,我们前面有3*3的高斯生成算法,但是根本没有办法显 ...
- 高斯判别算法GDA(吴恩达机器学习c#实践,生成高斯模板显示同心椭圆马氏距离,二)
先看以下是个什么? 真看不出什么,对比一下还行,还是看不出来,我们让马氏距离放大十倍等于15,高斯值放大1000倍等于4的像素加以阻挡指示出来,使用白色. 同心椭圆:(为什么协方差矩阵?0值改0.5, ...
- 马氏距离详解(数学原理、适用场景、应用示例代码)
看了很多关于马氏距离(Mahalanobis Distance)的介绍,但是总感觉有一些地方不太清晰,所以结合数学公式.机器学习中的应用案例,从头梳理一下. 马氏距离实际上是欧氏距离在多变量下的&qu ...
最新文章
- 【按住你的心】——Android开发CheckBoxRadioButton控件的简单使用
- C语言如何产生随机数
- python 报错 too many values to unpack (expected 3) 的解决方案
- Qt 项目视图的便捷类
- Spring事件机制详解
- mysql主从不同步不报错_MySQL主从不同步解决
- JavaScript学习(九)—练习:实现跳转页面
- 娱乐篇第十期:互联网的事情you意思(十)
- Pytorch实现FGSM(Fast Gradient Sign Attack)
- 组合公式计算机,(最新整理)排列与组合的概念与计算公式
- 称重管理系统方案之车牌识别摄像机的应用
- Linux 下 github 的使用
- s鼠标在计算机哪部分里,罗技g602和g700s哪个好_罗技g602鼠标怎么样【详细介绍】-太平洋IT百科...
- day2和day3随堂笔记
- java怎么销毁session_「销毁session」java中session和cookie的创建与销毁
- 风格迁移2020 —— 论文汇总——云盘分享
- 【DSP教程】第36章 FIR滤波器的Matlab设计(含低通,高通,带通和带阻)
- 2006年安全软件全球纵览(转
- 塞班模拟器异常退出 Symbian Emulator Main Killed -4
- 《网页制作与网站建设从入门到精通》版权
热门文章
- 吃货在东京 -- 记那段吃不饱的日子 之二 丰州的雪花牛肉
- 6本通往高级Android开发者必看的英文书籍,附下载地址
- SQL 考勤打卡问题
- 【matlab】Simulink 微分模块的线性化问题
- 开源多云技术平台——Choerodon猪齿鱼发布0.24版本
- SV宏定义中反斜杠(\),反引号(`),双反引号(``)的作用
- 抖音从流量上游杀入本地生活市场,美团如何“以牙还牙”?
- CS5211设计方案|替代CH7511B设计电路|EDP转LVDS转接板设计参考电路
- 经济学实证论文写作经验分享
- ABP官方文档(一)【入门介绍】