马氏距离 (Mahalanobis Distance)
字数 1914 2025-12-15 17:02:07
马氏距离 (Mahalanobis Distance)
-
基本概念与欧氏距离的局限
- 核心定义:马氏距离是由印度统计学家P. C. Mahalanobis提出的,用于度量一个点与一个概率分布(通常是一个多变量数据集)之间的距离。与简单的欧氏距离不同,它考虑了数据集中各个特征之间的相关性以及各特征自身方差的不同。
- 欧氏距离的缺点:在数据分析中,直接使用欧氏距离会遇到问题。假设一个数据集有两个特征:特征A的单位是“米”,方差为100;特征B的单位是“秒”,方差为0.01。欧氏距离会平等看待这两个方向上的单位差异,导致特征A的微小波动(如10米)在距离计算中占据绝对主导,而特征B的巨大波动(如1秒,即其标准差的10倍)几乎被忽略。此外,如果两个特征高度相关(如身高和体重),欧氏距离无法刻画这种内在关联。
-
公式与计算步骤
- 对于一个p维空间中的点 \(\mathbf{x} = (x_1, x_2, ..., x_p)^T\) 和一个具有均值向量 \(\mathbf{\mu} = (\mu_1, \mu_2, ..., \mu_p)^T\) 和协方差矩阵 \(\mathbf{\Sigma}\) 的多元分布,点 \(\mathbf{x}\) 到该分布的马氏距离 \(D_M\) 定义为:
\[ D_M(\mathbf{x}) = \sqrt{ (\mathbf{x} - \mathbf{\mu})^T \mathbf{\Sigma}^{-1} (\mathbf{x} - \mathbf{\mu}) } \]
* **计算步骤分解**:
1. **中心化**:计算向量 $ (\mathbf{x} - \mathbf{\mu}) $,即点相对于分布中心的偏移。
2. **“白化”或解相关**:这是核心步骤。用协方差矩阵的逆 $ \mathbf{\Sigma}^{-1} $ 左乘中心化后的向量。协方差矩阵的逆起到了“尺度标准化”和“解相关”的作用。它将原始的相关数据空间,变换到一个新的空间(称为马氏空间),在这个新空间中,各个维度是标准化的(方差为1)且彼此不相关。
3. **内积与开方**:将上一步的结果与中心化向量自身的转置做内积,然后开方。这本质上是在计算变换后空间中的标准欧氏距离。
-
几何与统计意义
- 几何解释:对于一个多元正态分布,其等概率密度面是一个p维的椭球。马氏距离实际上计算的是点 \(\mathbf{x}\) 到分布中心(均值)的“标准差”的个数,同时考虑了椭球的形状和方向。距离为1的点落在分布的“1-sigma”椭球面上,距离为2的点落在“2-sigma”椭球面上,以此类推。
- 与欧氏距离的关系:当协方差矩阵 \(\mathbf{\Sigma}\) 是单位矩阵(即各维度方差为1且彼此独立)时,马氏距离退化为欧氏距离。因此,马氏距离是欧氏距离在考虑了数据尺度与相关性后的推广。
-
关键性质与应用场景
- 尺度不变性:马氏距离与各特征的测量单位无关。如果你将特征从“米”换成“厘米”,距离值保持不变。
- 考虑相关性:它能自动处理特征之间的相关性。如果两个特征高度正相关,那么一个点在两个特征上同向的偏离不会导致距离被过度放大。
- 主要应用:
- 异常值检测:计算数据集中每个样本点到整体数据分布的马氏距离。距离过大的点很可能是异常点,因为它远离了数据的主体聚集区域(考虑了数据的形状)。
- 分类:在多元统计分类(如线性判别分析)中,计算样本点到不同类别中心的马氏距离,并将其归类到距离最近的类别。
- 聚类分析:作为距离度量用于聚类算法(如层次聚类),能更好地反映数据内在结构。
-
实际计算中的注意事项
- 协方差矩阵的估计:在实际中,总体的均值 \(\mathbf{\mu}\) 和协方差矩阵 \(\mathbf{\Sigma}\) 通常是未知的,需要用样本数据来估计。用样本均值 \(\mathbf{\bar{x}}\) 和样本协方差矩阵 \(\mathbf{S}\) 代入公式计算。
- 小样本与奇异性问题:当样本数量少于特征维度时,样本协方差矩阵 \(\mathbf{S}\) 是奇异的(不可逆),无法计算其逆矩阵。此时需要采用正则化方法(如在协方差矩阵上添加一个小的正则化项使其可逆)或使用降维技术(如PCA)先处理数据。
- 对异常值敏感:由于样本均值和样本协方差本身都容易被异常值影响,直接用全部数据估算的协方差矩阵来计算马氏距离,在检测异常值时可能效果不佳(异常值会“拉偏”均值和协方差的估计)。一种改进方法是使用稳健的协方差矩阵估计方法(如最小协方差行列式估计)。