多元统计分析——欧式距离和马氏距离
在一元的情形中,定义两个点和
之间的距离:
- 两者作差的绝对值
,我们称为欧式距离。
- 经过标准化的作差绝对值
,我们称为统计距离,或者标准化过后的距离。其中,
代表样本的标准差。
在多元的情形中,假设我们有两个维向量
和
如上面的定义,和
相当于
维空间中的两个点。我们也有两种方法定义两个点之间的距离。
一、欧式距离(Euclidean distance)/
范数
欧式距离的计算公式如下:
直观的理解即为:每个分量之间的差异的平方和,再开根号。
缺陷:
1、没有考虑到不同变量(维度)变化的尺度不同。
例如,代表的是长度,用“厘米”作为度量单位和用“米”作为度量单位,算出来的两者的差别非常大。他们其实是一样的数值,只是因为单位的不同,造成欧式距离计算的结果产生极大的变化。
2、没有考虑变量之间的相关性。
如果两个变量(维度)之间的相关性非常强,欧式距离无法体现相关性。
二、马氏距离/统计距离(Statistical/Mahalanobis distance)
类似于一元情形,我们定义
和
之间的马氏距离/统计距离为:
借助于一元情形的标准化思想,我们求解距离的时候增加了一个和
他们的协方差矩阵的逆,使得方差更大的变量(维度)对应了更小的权重,而且两个高度相关的变量(维度)对统计距离的贡献小于两个相关性相对较低的变量的贡献。
三、马氏距离和欧式距离的关系
统计距离实际上是两个经过“变换”的向量和
之间的欧式距离。
,其中
为
的协方差矩阵,即
。
将代入上式,可得
,
代表一个
维的单位阵。
也就是说,随机向量通过乘上矩阵
,得到一个新的随机向量,它的方差,每个维度的方差都是1,是标准化的。它的每两个变量之间的协方差为0。从几何的意义上来讲,相当于对向量做了一个“旋转”和“伸缩变换”,通过变换之后的向量,每个分量之间的协方差为0,每个分量自身的方差标准化为1。
我们来计算标准化之后的向量之间的欧式距离。
结论:马氏距离即是我们将向量“标准化”过后的欧式距离,如何标准化,即乘上向量其自身的协防差矩阵的逆的矩阵根。
四、几何理解
左下方的图,比较中间那个绿色的和另外一个绿色的距离,以及中间绿色到蓝色的距离。如果不考虑数据的分布,就是直接计算欧式距离,那就是蓝色距离更近(左上图)。但实际上需要考虑各分量的分布的,直观上我们能看出,数据是呈椭圆形分布。蓝色的在椭圆外,绿色的在椭圆内,因此绿色的实际上更近(右上图)。求马氏距离的过程,实际上就是把左下角的图变成了右下角。