超全面的协方差矩阵介绍

阅读本文需要具备一定的线性代数基础,通过本文,你将对协方差矩阵有全面的理解。

超全面的协方差矩阵介绍

定义

n个随机向量:
X=(X1,X2,...,Xn)T\mathbf{X}=(X_1,X_2,...,X_n)^T

两个随机向量的协方差:
cov[Xi,Xj]=E[(XiE[Xi])(XjE[Xj])]cov[X_i,X_j]=E[(X_i-E[X_i])(X_j-E[X_j])]

由n*n个协方差组成的协方差矩阵
cov[X,X]=[cov[X1,X1]cov[X1,X2]cov[X1,Xn]cov[X2,X1]cov[X2,X2]cov[X2,Xn]cov[Xn,X1]cov[Xn,X2]cov[Xn,Xn]]cov[\mathbf{X,X}]={\begin{bmatrix} cov[X_1,X_1]& cov[X_1,X_2] & \cdots & cov[X_1,X_n]\\ cov[X_2,X_1] & cov[X_2,X_2] & \cdots & cov[X_2,X_n]\\ \vdots & \vdots & \ddots & \vdots\\ cov[X_n,X_1] & cov[X_n,X_2] & \cdots & cov[X_n,X_n] \end{bmatrix}}

直观理解

  1. 协方差表示两个随机变量之间的线性相关性
  2. 协方差矩阵中的每个元素代表了两个随机变量之间的协方差
  3. 协方差矩阵表示一组随机变量之间的两两线性相关性

例子

图片和示例来源(点击进入图片来源

有二维随机变量x和y,简便期间,我们对x和y做了去均值处理(xˉ=yˉ=0\bar x=\bar y = 0),所以x和y之间的协方差:cov[x,y]=E[(xxˉ)(yyˉ)]=E[xy]cov[x,y] = E[(x-\bar x)(y-\bar y)]=E[x\cdot y]

如果x和y的联合分布多分布在一三象限,xyx\cdot y多为正数,则协方差为正,x和y正相关。

超全面的协方差矩阵介绍

如果x和y的联合分布多分布在二四象限,xyx\cdot y多为负数,则协方差为负,x和y负相关。

超全面的协方差矩阵介绍

如果x和y的几乎均匀地分散在所有象限中,则xyx\cdot y有正有负,均值接近于0,说明x和y之间没有相关性(只是说没有线性相关)。

超全面的协方差矩阵介绍

线性相关与非线性相关

若两个向量的协方差为0,则两个向量不具备线性相关性,但它们仍然可能不独立,因为可能存在非线性的相关性。

具体的,协方差为0但不独立的原因在于:随机向量x和随机向量y之间的关系没有一阶分量,只有二阶或高阶分量(关于一阶分量、二级分量等详见泰勒公式)。

举个例子(来自知乎匿名用户):对于随机变量x和随机变量y,有x2+y2=1x^2+y^2=1,其几何关系如下图:

超全面的协方差矩阵介绍

性质

协方差矩阵是半正定矩阵

半正定矩阵的定义:
设A是实对称矩阵。如果对任意的实非零列向量x有xTAx0x^TAx≥0,就称A为半正定矩阵。
半正定矩阵的性质:

  1. 半正定矩阵的行列式是非负的
  2. 半正定矩阵的特征值都是非负的

延伸:
实对称矩阵一定是半正定矩阵
证明:协方差矩阵是半正定的
对任意向量y:
yTΣy=yTE[(Xμ)(Xμ)T]y           =E[yT(Xμ)(Xμ)Ty]                  =E[((Xμ)Ty)T((xμ)Ty)]     =E[(Xμ)Ty2]0y^T\Sigma y = y^TE[(X-\mu)(X-\mu)^T]y \\ \ \ \ \ \ \ \ \ \ \ \ =E[y^T(X-\mu)(X-\mu)^Ty] \\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ =E[((X-\mu)^Ty)^T((x-\mu)^Ty)] \\ \ \ \ \ \ =E[||(X-\mu)^Ty||^2] \geq 0

正定矩阵的定义:
A是n阶方阵,如果对任何非零向量x,都有xTAx>0x^TAx>0,其中xTx^T 表示x的转置,就称A正定矩阵
正定矩阵的性质:

  1. 正定矩阵的行列式恒为正
  2. 正定矩阵的特征值均为正

协方差矩阵是实对称矩阵

实对称矩阵的性质:

  1. 实对称矩阵的不同特征值对应的特征向量时正交的
  2. 实对称矩阵的特征值是实数,特征向量是实向量
  3. 实对称矩阵必可对角化,且其相似对角矩阵的对角线元素为n个特征值

实对称矩阵的对角化:
P1AP=P1P=P^{-1}AP = P^{-1}P \wedge=\wedge

其中对角矩阵\wedge的对角元素为矩阵A的n个特征值(n个特征值中可能重复的),P由矩阵A的特征向量组成。

与其他统计量的关系

与协方差的关系:

  • 协方差矩阵的第i行第j列的元素是第i个随机向量和第j个随机向量之间的协方差
  • 从协方差到协方差矩阵是从标量随机变量到高维随机向量的推广

与相关系数矩阵的关系:
相关系数矩阵为corr(X)corr(\mathbf{X})
corr(X)=(diag(cov(XX)))12 cov(XX) (diag(cov(XX)))12{\displaystyle \operatorname {corr} (\mathbf {X} )={\big (}\operatorname {diag} (cov({\mathbf {X} \mathbf {X} })){\big )}^{-{\frac {1}{2}}}\,cov({\mathbf {X} \mathbf {X}) }\,{\big (}\operatorname {diag} (cov({\mathbf {X} \mathbf {X}) }){\big )}^{-{\frac {1}{2}}}}

延伸:PCA中对协方差矩阵的应用

详见《图文并茂的PCA教程》

Python实战

import numpy as np
x = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])
y = np.array([9, 8, 7, 6, 5, 4, 3, 2, 1])
Sigma = np.cov(x, y)
print(Sigma)
'''输出:
[[ 7.5 -7.5]
 [-7.5  7.5]]
'''