协方差矩阵在统计学和机器学习中随处可见,一般而言,可视作方差和协方差两部分组成,即方差构成了对角线上的元素,协方差构成了非对角线上的元素。本文旨在从几何角度介绍我们所熟知的协方差矩阵。
文章结构
- 方差和协方差的定义
- 从方差/协方差到协方差矩阵
- 多元正态分布与线性变换
- 协方差矩阵的特征值分解
1. 方差和协方差的定义
在统计学中,方差是用来度量单个随机变量的离散程度,而协方差则一般用来刻画两个随机变量的相似程度,其中,方差的计算公式为
![]()
其中,表示样本量,符号
表示观测样本的均值,这个定义在初中阶段就已经开始接触了。
在此基础上,协方差的计算公式被定义为
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lNUNzaWdtYSU1Q2xlZnQlMjh4JTJDeSU1Q3JpZ2h0JTI5JTNEJTVDZnJhYyU3QjElN0QlN0JuLTElN0QlNUNzdW1fJTdCaSUzRDElN0QlNUUlN0JuJTdEJTVDbGVmdCUyOHhfaS0lNUNiYXIlN0J4JTdEJTVDcmlnaHQlMjklNUNsZWZ0JTI4eV9pLSU1Q2JhciU3QnklN0QlNUNyaWdodCUyOQ==.png)
在公式中,符号
分别表示两个随机变量所对应的观测样本均值,据此,我们发现:方差
可视作随机变量
关于其自身的协方差
.
2. 从方差/协方差到协方差矩阵
根据方差的定义,给定
个随机变量
,则这些随机变量的方差为
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lNUNzaWdtYSUyOCU3QnhfayU3RCUyQyU3QnhfayU3RCUyOSUzRCU1Q2ZyYWMlN0IxJTdEJTdCbi0xJTdEJTVDc3VtXyU3QmklM0QxJTdEJTVFbiU1Q2xlZnQlMjh4XyU3QmtpJTdELSU1Q2JhciU3QnglN0RfayU1Q3JpZ2h0JTI5JTVFMiUyQ2slM0QxJTJDMiUyQy4uLiUyQ2Q=.png)
其中,为方便书写,
表示随机变量
中的第
个观测样本,
表示样本量,每个随机变量所对应的观测样本数量均为
。
对于这些随机变量,我们还可以根据协方差的定义,求出两两之间的协方差,即
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lNUNzaWdtYSU1Q2xlZnQlMjh4X20lMkN4X2slNUNyaWdodCUyOSUzRCU1Q2ZyYWMlN0IxJTdEJTdCbi0xJTdEJTVDc3VtXyU3QmklM0QxJTdEJTVFbiU1Q2xlZnQlMjh4XyU3Qm1pJTdELSU1Q2JhciU3QnglN0RfbSU1Q3JpZ2h0JTI5JTVDbGVmdCUyOHhfJTdCa2klN0QtJTVDYmFyJTdCeCU3RF9rJTVDcmlnaHQlMjk=.png)
因此,协方差矩阵为
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lNUNTaWdtYSUzRCU1Q2xlZnQlNUIrJTVDYmVnaW4lN0JhcnJheSU3RCU3QmNjYyU3RCU1Q3NpZ21hJTI4JTdCeF8xJTdEJTJDJTdCeF8xJTdEJTI5KyUyNislNUNjZG90cyslMjYrJTVDc2lnbWElNUNsZWZ0JTI4eF8xJTJDeF9kJTVDcmlnaHQlMjkrJTVDJTVDKyU1Q3Zkb3RzKyUyNislNUNkZG90cyslMjYrJTVDdmRvdHMrJTVDJTVDKyU1Q3NpZ21hJTVDbGVmdCUyOHhfZCUyQ3hfMSU1Q3JpZ2h0JTI5KyUyNislNUNjZG90cyslMjYrJTVDc2lnbWElMjglN0J4X2QlN0QlMkMlN0J4X2QlN0QlMjkrJTVDJTVDKyU1Q2VuZCU3QmFycmF5JTdEKyU1Q3JpZ2h0JTVEJTVDaW4lNUNtYXRoYmIlN0JSJTdEJTVFJTdCZCU1Q3RpbWVzK2QlN0Q=.png)
其中,对角线上的元素为各个随机变量的方差,非对角线上的元素为两两随机变量之间的协方差,根据协方差的定义,我们可以认定:矩阵
为对称矩阵(symmetric matrix),其大小为
。
3. 多元正态分布与线性变换
假设一个向量服从均值向量为
、协方差矩阵为
的多元正态分布(multi-variate Gaussian distribution),则
![]()
令该分布的均值向量为
,由于指数项外面的系数
通常作为常数,故可将多元正态分布简化为
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD1wJTVDbGVmdCUyOCU1Q2JvbGRzeW1ib2wlN0J4JTdEJTVDcmlnaHQlMjklNUNwcm9wdG8lNUNleHAlNUNsZWZ0JTI4LSU1Q2ZyYWMlN0IxJTdEJTdCMiU3RCU1Q2JvbGRzeW1ib2wlN0J4JTdEJTVFVCU1Q1NpZ21hJTVFJTdCLTElN0QlNUNib2xkc3ltYm9sJTdCeCU3RCU1Q3JpZ2h0JTI5.png)
再令
,包含两个随机变量
和
,则协方差矩阵可写成如下形式:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lNUNTaWdtYSUzRCU1Q2xlZnQlNUIrJTVDYmVnaW4lN0JhcnJheSU3RCU3QmNjJTdEJTVDc2lnbWElMjh5JTJDeSUyOSslMjYrJTVDc2lnbWElNUNsZWZ0JTI4eSUyQ3olNUNyaWdodCUyOSslNUMlNUMrJTVDc2lnbWElNUNsZWZ0JTI4eiUyQ3klNUNyaWdodCUyOSslMjYrJTVDc2lnbWElMjh6JTJDeiUyOSslNUMlNUMrJTVDZW5kJTdCYXJyYXklN0QrJTVDcmlnaHQlNUQlNUNpbiU1Q21hdGhiYiU3QlIlN0QlNUUlN0IyJTVDdGltZXMrMiU3RA==.png)
用单位矩阵(identity matrix)
作为协方差矩阵,随机变量
和
的方差均为1,则生成如干个随机数如图1所示。
图1 标准的二元正态分布
在生成的若干个随机数中,每个点的似然为
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lNUNtYXRoY2FsJTdCTCU3RCU1Q2xlZnQlMjglNUNib2xkc3ltYm9sJTdCeCU3RCU1Q3JpZ2h0JTI5JTVDcHJvcHRvJTVDZXhwJTVDbGVmdCUyOC0lNUNmcmFjJTdCMSU3RCU3QjIlN0QlNUNib2xkc3ltYm9sJTdCeCU3RCU1RVQlNUNib2xkc3ltYm9sJTdCeCU3RCU1Q3JpZ2h0JTI5.png)
对图1中的所有点考虑一个线性变换(linear transformation):
,我们能够得到图2.
图2 经过线性变换的二元正态分布,先将图1的纵坐标压缩0.5倍,再将所有点逆时针旋转30°得到。
在线性变换中,矩阵
被称为变换矩阵(transformation matrix),为了将图1中的点经过线性变换得到我们想要的图2,其实我们需要构造两个矩阵:
- 尺度矩阵(scaling matrix):
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD1TJTNEJTVDbGVmdCU1QislNUNiZWdpbiU3QmFycmF5JTdEJTdCY2MlN0Qrc195KyUyNiswKyU1QyU1QyswKyUyNitzX3orJTVDJTVDKyU1Q2VuZCU3QmFycmF5JTdEKyU1Q3JpZ2h0JTVE.png)
- 旋转矩阵(rotation matrix)
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD1SJTNEJTVDbGVmdCU1QislNUNiZWdpbiU3QmFycmF5JTdEJTdCY2MlN0QrJTVDY29zJTI4JTVDdGhldGElMjkrJTI2Ky0lNUNzaW4lMjglNUN0aGV0YSUyOSslNUMlNUMrJTVDc2luJTI4JTVDdGhldGElMjkrJTI2KyU1Q2NvcyUyOCU1Q3RoZXRhJTI5KyU1QyU1QyslNUNlbmQlN0JhcnJheSU3RCslNUNyaWdodCU1RA==.png)
其中,
为顺时针旋转的度数。
变换矩阵、尺度矩阵和旋转矩阵三者的关系式:
![]()
在这个例子中,尺度矩阵为
,旋转矩阵为 ![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD1SJTNEJTVDbGVmdCU1QislNUNiZWdpbiU3QmFycmF5JTdEJTdCY2MlN0QrJTVDY29zJTI4LSU1Q2ZyYWMlN0IlNUNwaSU3RCU3QjYlN0QlMjkrJTI2Ky0lNUNzaW4lMjgtJTVDZnJhYyU3QiU1Q3BpJTdEJTdCNiU3RCUyOSslNUMlNUMrJTVDc2luJTI4LSU1Q2ZyYWMlN0IlNUNwaSU3RCU3QjYlN0QlMjkrJTI2KyU1Q2NvcyUyOC0lNUNmcmFjJTdCJTVDcGklN0QlN0I2JTdEJTI5KyU1QyU1QyslNUNlbmQlN0JhcnJheSU3RCslNUNyaWdodCU1RA==.png)
,故变换矩阵为
.
另外,需要考虑的是,经过了线性变换,
的分布是什么样子呢?
将
带入前面给出的似然
,有
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lNUNtYXRoY2FsJTdCTCU3RCU1Q2xlZnQlMjglNUNib2xkc3ltYm9sJTdCdCU3RCU1Q3JpZ2h0JTI5JTVDcHJvcHRvJTVDZXhwJTVDbGVmdCUyOC0lNUNmcmFjJTdCMSU3RCU3QjIlN0QlNUNsZWZ0JTI4QSU1RSU3Qi0xJTdEJTVDYm9sZHN5bWJvbCU3QnQlN0QlNUNyaWdodCUyOSU1RVQlNUNsZWZ0JTI4QSU1RSU3Qi0xJTdEJTVDYm9sZHN5bWJvbCU3QnQlN0QlNUNyaWdodCUyOSU1Q3JpZ2h0JTI5.png)
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lM0QlNUNleHAlNUNsZWZ0JTI4LSU1Q2ZyYWMlN0IxJTdEJTdCMiU3RCU1Q2JvbGRzeW1ib2wlN0J0JTdEJTVFVCU1Q2xlZnQlMjhBQSU1RSU3QlQlN0QlNUNyaWdodCUyOSU1RSU3Qi0xJTdEJTVDYm9sZHN5bWJvbCU3QnQlN0QlNUNyaWdodCUyOQ==.png)
由此可以得到,多元正态分布的协方差矩阵为
.
4. 协方差矩阵的特征值分解
回到我们已经学过的线性代数内容,对于任意对称矩阵,存在一个特征值分解(eigenvalue decomposition, EVD):
![]()
其中,的每一列都是相互正交的特征向量,且是单位向量,满足
,
对角线上的元素是从大到小排列的特征值,非对角线上的元素均为0。
当然,这条公式在这里也可以很容易地写成如下形式:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lNUNTaWdtYSUzRCU1Q2xlZnQlMjhVJTVDTGFtYmRhJTVFJTdCMSUyRjIlN0QlNUNyaWdodCUyOSU1Q2xlZnQlMjhVJTVDTGFtYmRhJTVFJTdCMSUyRjIlN0QlNUNyaWdodCUyOSU1RVQlM0RBQSU1RVQ=.png)
其中,
,因此,通俗地说,任意一个协方差矩阵都可以视为线性变换的结果。
在上面的例子中,特征向量构成的矩阵为
.
特征值构成的矩阵为
.
到这里,我们发现:多元正态分布的概率密度是由协方差矩阵的特征向量控制旋转(rotation),特征值控制尺度(scale),除了协方差矩阵,均值向量会控制概率密度的位置,在图1和图2中,均值向量为
,因此,概率密度的中心位于坐标原点。

表示观测样本的均值,这个定义在初中阶段就已经开始接触了。
服从均值向量为
、协方差矩阵为
的每一列都是相互正交的特征向量,且是单位向量,满足
,
对角线上的元素是从大到小排列的特征值,非对角线上的元素均为0。