如何求协方差矩阵

一. 协方差定义

X、Y 是两个随机变量,X、Y 的协方差 cov(X, Y) 定义为:

求解协方差矩阵 人工智能 第1张

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

其中:

求解协方差矩阵 人工智能 第2张 、求解协方差矩阵 人工智能 第3张

 

. 协方差矩阵定义

矩阵中的数据按行排列与按列排列求出的协方差矩阵是不同的,这里默认数据是按行排列。即每一行是一个observation(or sample),那么每一列就是一个随机变量。协方差对角线处的元素表示的是方差,这个关系我们记住就行了。比如目前我们从之前的两个变量过渡成了三个变量,则我们的协方差矩阵可以写为:

求解协方差矩阵 人工智能 第4张

从上面我们可以清楚的看到对角线上的数值是cov(x,x)=var(x),cov(y,y)=var(y),cov(y,y)=var(z),因此对角线处是我们的方差,有一个函数trace()专门则用于表示提取我们矩阵当中的对角线处的元素。下面我们把用cov函数表示的形式变化为更加普世的形式也就是用aij来表示我们的每一个协方差的数值。

 

求解协方差矩阵 人工智能 第5张

协方差矩阵:

求解协方差矩阵 人工智能 第6张

协方差矩阵的维度等于随机变量的个数,即每一个 observation 的维度。在某些场合前边也会出现 1 / m,而不是 1 / (m - 1).

. 求解协方差矩阵的步骤

举个例子,矩阵 X 按行排列:

  求解协方差矩阵 人工智能 第7张  

1. 求每个维度的平均值

  求解协方差矩阵 人工智能 第8张  

2. 将 X 的每一列减去平均值

  求解协方差矩阵 人工智能 第9张   其中: 求解协方差矩阵 人工智能 第10张  

3. 计算协方差矩阵

  求解协方差矩阵 人工智能 第11张       注意: 有时候在书上或者网上会看到这样的公式,协方差矩阵 Σ: 求解协方差矩阵 人工智能 第12张   这里之所以会是 X * X’ 是因为原始数据集 X 是按列排列的,即:   求解协方差矩阵 人工智能 第13张     备注:为什么协方差矩阵的最大特征向量能使得误差较小? 回答:因为协方差矩阵表示向量两两之间的相似度,可以理解为向量之间的关系信息。协方差矩阵保存的信息越多,误差越小。怎么保存更多信息呢?需要说明的是特征值代表特征向量的权重,所以挑最大的几个特征向量就能保存更多的信息
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄