马氏距离的求解
马氏距离的求解
马氏距离的求解
马氏距离是一种可以消除单位影响的距离评价方法,可以忽略量纲对距离两点之间距离的影响。
在此将列举简单一个例子对文字性描述进行一个运算。
| x | y |
|---|---|
| 5 | 10 |
| 4 | 6 |
| 3 | 11 |
1、计算x与y的均值
设x=(x1,x2,...,xn)、y=(y1,y2,...,yn)x=(x_1,x_2,...,x_n)、y=(y_1,y_2,...,y_n)x=(x1,x2,...,xn)、y=(y1,y2,...,yn),求解xˉ=x1+x2+,...,xnn、yˉ=y1+y2,...,y+nn\bar x=\frac{x_1+x_2+,...,x_n}{n}、\bar y=\frac{y_1+y_2,...,y+n}{n}xˉ=nx1+x2+,...,xn、yˉ=ny1+y2,...,y+n。计算出x,yx,yx,y的均值。
x=(5,4,3)、y=(10,6,11)n=3x=(5,4,3)、y=(10,6,11)\quad n=3x=(5,4,3)、y=(10,6,11)n=3
xˉ=4,yˉ=9\bar x=4,\bar y=9xˉ=4,yˉ=9
2、计算样本与均值的差
样本减去均值可以得到一个去中心化的矩阵XXX
X=(110−3−12) X=\begin{pmatrix} 1 & 1\\ 0 & -3\\ -1 &2 \end{pmatrix} X=⎝⎛10−11−32⎠⎞
3、计算XXX协方差矩阵
cov(X)=S=1m−1sTscov(X)=S=\frac{1}{m-1}s^Tscov(X)=S=m−11sTs这里参照基本协方差矩阵的求解方法。
3.1、协方差矩阵的求法:
- 根据前期假设得知XXX是一个n∗2n*2n∗2的矩阵,取每一列为单独的变量,因此得到c1c_1c1为去中心化后的x,c2c_2c2为去中心化后的y。
c1=(1,0,−1)c2=(1,−3,2) c_1=(1,0,-1)\quad c_2=(1,-3,2) c1=(1,0,−1)c2=(1,−3,2)
- 对每一列的变量求和取均值得cˉ1、cˉ2\bar c_1、\bar c_2cˉ1、cˉ2,再将每一列减去对应的均值得到sss矩阵,因为这里是按照每列为一个单独的变量,所以m为矩阵的行数m=n。
cˉ1=0cˉ2=0m=3s=(110−3−12) \bar c_1=0 \quad \bar c_2=0 \quad m=3\\ s=\begin{pmatrix} 1 & 1\\ 0 & -3\\ -1 &2 \end{pmatrix} cˉ1=0cˉ2=0m=3s=⎝⎛10−11−32⎠⎞
在本例子中s与原来的XXX没有发生改变。
- 根据公式计算协方差矩阵S
S=13−1(10−11−32)(110−3−12)=(1−0.5−0.57) S=\frac{1}{3-1}\begin{pmatrix} 1 & 0 & -1\\ 1 & -3 & 2 \end{pmatrix}\begin{pmatrix} 1 & 1\\ 0 & -3\\ -1 &2 \end{pmatrix}=\begin{pmatrix} 1 & -0.5\\ -0.5 & 7\\ \end{pmatrix} S=3−11(110−3−12)⎝⎛10−11−32⎠⎞=(1−0.5−0.57)
4、求解马氏距离
求解具体两个点之间的马氏距离,直接带入以下两个点即可。
基本计算公式如下:
d(x,y)=(x−y)TS−1(x−y) d(x, y)=\sqrt{(x-y)^{T} S^{-1}(x-y)} d(x,y)=(x−y)TS−1(x−y)
S−1S^{-1}S−1表示协方差矩阵的逆矩阵。逆矩阵的基本求解在此不再过多描述。
更多推荐



所有评论(0)