概率论基础2-多元高斯分布的边际分布和条件分布

本文主要是PRML一书2.3.1与2.3.2节的笔记。
多元高斯分布一个重要的性质就是:如果两组变量的联合分布是高斯分布,那么一组变量在观察另外一组变量后的条件分布也是高斯分布。同时,任何一组变量的边际分布也是高斯分布。

1. 条件分布

先来考虑条件分布,假设 $\mathbf{x}$ 是一个服从分布 $\mathcal{N}(\mathbf{x}|\boldsymbol{\mu},\boldsymbol{\Sigma})$ 的 $D$ 维变量,我们将 $\mathbf{x}$ 分为两个子集 $\mathbf{x}_a$ 和 $\mathbf{x}_b$。不失一般性地,令 $\mathbf{x}_a$ 取 $\mathbf{x}$ 的前 $M$ 个分量,$\mathbf{x}_b$ 取后 $D-M$ 个分量,即$$\mathbf{x}=\begin{pmatrix}\mathbf{x}_a \\ \mathbf{x}_b\end{pmatrix}\tag{1}$$同时将期望和协方差也相应地分割开(partition) $$\boldsymbol{\mu}=\begin{pmatrix} \boldsymbol{\mu}_a \\ \boldsymbol{\mu}_b\end{pmatrix}\tag{2}$$ $$\boldsymbol{\Sigma}=\begin{pmatrix}\boldsymbol{\Sigma}_{aa}&\boldsymbol{\Sigma}_{ab} \\ \boldsymbol{\Sigma}_{ba}&\boldsymbol{\Sigma}_{bb}\end{pmatrix}\tag{3}$$由于协方差矩阵 $\boldsymbol{\Sigma}$ 是对称矩阵,所以 $\boldsymbol{\Sigma}_{aa}$ 和 $\boldsymbol{\Sigma}_{bb}$ 也是对称矩阵,另外有 $\boldsymbol{\Sigma}_{ab}=\boldsymbol{\Sigma}_{ba}^{\mathrm{T}}$

多元高斯分布的形式如下$$\mathcal{N}(\mathbf{x}|\boldsymbol{\mu},\boldsymbol{\Sigma})=\cfrac{1}{(2\pi)^{D/2}}\cfrac{1}{|\boldsymbol{\Sigma}|^{1/2}}\exp\left\{-\cfrac{1}{2}(\mathbf{x}-\boldsymbol{\mu})^{\mathrm{T}}\boldsymbol{\Sigma}^{-1}(\mathbf{x}-\boldsymbol{\mu})\right\}\tag{4}$$令协方差矩阵为对称矩阵不会失去一般性,因为任何不对称的成分都会在指数运算后消失。

在很多时候,使用协方差矩阵的逆矩阵可以使式子表达得更清晰简单$$\boldsymbol{\Lambda}\equiv\boldsymbol{\Sigma}^{-1}\tag{5}$$这个矩阵称为精度矩阵(precision matrix)。同样地,将精度矩阵也分割开$$\boldsymbol{\Lambda}=\begin{pmatrix}\boldsymbol{\Lambda}_{aa} &\boldsymbol{\Lambda}_{ab} \\ \boldsymbol{\Lambda}_{ba} & \boldsymbol{\Lambda}_{bb}\end{pmatrix}\tag{6}$$因为一个对称矩阵得逆也是对称矩阵,所以 $\boldsymbol{\Lambda}_{aa}$ 和 $\boldsymbol{\Lambda}_{bb}$ 也是对称的,同时也有 $\boldsymbol{\Lambda}_{ab}^\mathrm{T}=\boldsymbol{\Lambda}_{ba}$。需要注意的是:$\boldsymbol{\Lambda}_{aa}$ 并不简单地是 $\boldsymbol{\Sigma}_{aa}$ 的逆,其它部分也如此。

下面我们来考虑条件分布 $p(\mathbf{x}_a|\mathbf{x}_b)$,先不考虑归一化系数,只考虑指数部分。将(4)式指数部分展开可以得到$$\begin{array}{l}-\cfrac{1}{2}(\mathbf{x}-\boldsymbol{\mu})^{\mathrm{T}}\boldsymbol{\Sigma}^{-1}(\mathbf{x}-\boldsymbol{\mu})= \\ \qquad -\cfrac{1}{2}(\mathbf{x}_a-\boldsymbol{\mu}_a)^{\mathrm{T}}\boldsymbol{\Lambda}_{aa}(\mathbf{x}_a-\boldsymbol{\mu}_a)-\cfrac{1}{2}(\mathbf{x}_a-\boldsymbol{\mu}_a)^{\mathrm{T}}\boldsymbol{\Lambda}_{ab}(\mathbf{x}_b-\boldsymbol{\mu}_b) \\ \qquad -\cfrac{1}{2}(\mathbf{x}_b-\boldsymbol{\mu}_b)^{\mathrm{T}}\boldsymbol{\Lambda}_{ba}(\mathbf{x}_a-\boldsymbol{\mu}_a)-\cfrac{1}{2}(\mathbf{x}_b-\boldsymbol{\mu}_b)^{\mathrm{T}}\boldsymbol{\Lambda}_{bb}(\mathbf{x}_b-\boldsymbol{\mu}_b)\end{array}\tag{7}$$由于 $\mathbf{x}_b$ 固定,我们可以将上式视为关于 $\mathbf{x}_a$ 的函数,可以看出,这是一个二次函数。因此,条件分布 $p(\mathbf{x}_a|\mathbf{x}_b)$ 依然是高斯分布,我们的目标变成了找出它的期望和协方差。
注意到一个一般化多元高斯分布的指数项可以写成$$-\cfrac{1}{2}(\mathbf{x}-\boldsymbol{\mu})^{\mathrm{T}}\boldsymbol{\Sigma}^{-1}(\mathbf{x}-\boldsymbol{\mu})=-\cfrac{1}{2}\mathbf{x}^{\mathrm{T}}\boldsymbol{\Sigma}^{-1}\mathbf{x}+\mathbf{x}^{\mathrm{T}}\boldsymbol{\Sigma}^{-1}\boldsymbol{\mu}+\text{const}\tag{8}$$包含了关于 $\mathbf{x}$ 的一个二次项,一个一次项和一个常数项。我们只需要将(7)式中关于 $\mathrm{x}_a$ 的项整理出来,然后根据对应项系数相等计算出协方差和期望。(7)式中关于 $\mathrm{x}_a$ 的二次项为$$-\cfrac{1}{2}\mathbf{x}_a^{\mathrm{T}}\boldsymbol{\Lambda}_{aa}\mathbf{x}_a\tag{9}$$则根据对应项系数相等有$$\boldsymbol{\Sigma}_{a|b}=\boldsymbol{\Lambda}_{aa}^{-1}\tag{10}$$接着考虑(7)式中关于 $\mathbf{x}_a$ 的一次项$$\mathbf{x}_a^{\mathrm{T}}\{\boldsymbol{\Lambda}_{aa}\boldsymbol{\mu}_a-\boldsymbol{\Lambda}_{ab}(\mathbf{x}_b-\boldsymbol{\mu}_b)\}\tag{11}$$系数对应与(8)式中的一次项系数 $\boldsymbol{\Sigma}^{-1}\boldsymbol{\mu}$ 相等,则有$$\begin{array}{r,l}\boldsymbol{\mu}_{a|b}&=&\boldsymbol{\Sigma}_{a|b}\{\boldsymbol{\Lambda}_{aa}\boldsymbol{\mu}_a-\boldsymbol{\Lambda}_{ab}(\mathbf{x}_b-\boldsymbol{\mu}_b)\} \\ &=&\boldsymbol{\mu}_a-\boldsymbol{\Lambda}_{aa}^{-1}\boldsymbol{\Lambda}_{ab}(\mathbf{x}_b-\boldsymbol{\mu}_b)\end{array}\tag{12}$$
至此,我们得到了条件分布的期望和协方差。上述推导过程称为completing the square,即通过二次形式的高斯分布指数项推导出对应分布的期望和方差,在后面推导边际分布时也会用到。

我们也可以用分块协方差矩阵来表示条件分布的期望和协方差,利用分块矩阵逆的性质

分块矩阵逆的性质
$$\begin{pmatrix}\mathbf{A}&\mathbf{B} \\ \mathbf{C}&\mathbf{D}\end{pmatrix}=\begin{pmatrix}\mathbf{M}&-\mathbf{MBD}^{-1}\\ -\mathbf{D}^{-1}\mathbf{CM}&\mathbf{D}^{-1}+\mathbf{D}^{-1}\mathbf{CMBD}^{-1}\end{pmatrix}\tag{13}$$其中 $\mathbf{M}=(\mathbf{A}-\mathbf{BD}^{-1}\mathbf{C})^{-1}$

由$$\begin{pmatrix}\boldsymbol{\Sigma}_{aa}&\boldsymbol{\Sigma}_{ab} \\ \boldsymbol{\Sigma}_{ba}&\boldsymbol{\Sigma}_{bb}\end{pmatrix}^{-1}=\begin{pmatrix}\boldsymbol{\Lambda}_{aa} &\boldsymbol{\Lambda}_{ab} \\ \boldsymbol{\Lambda}_{ba} & \boldsymbol{\Lambda}_{bb}\end{pmatrix}\tag{14}$$ 可以得到$$\boldsymbol{\Lambda}_{aa}=(\boldsymbol{\Sigma}_{aa}-\boldsymbol{\Sigma}_{ab}\boldsymbol{\Sigma}_{bb}^{-1}\boldsymbol{\Sigma}_{ba})^{-1}\tag{15}$$ $$\boldsymbol{\Lambda}_{ab}=-(\boldsymbol{\Sigma}_{aa}-\boldsymbol{\Sigma}_{ab}\boldsymbol{\Sigma}_{bb}^{-1}\boldsymbol{\Sigma}_{ba})^{-1}\boldsymbol{\Sigma}_{ab}\boldsymbol{\Sigma}_{bb}^{-1}\tag{16}$$将上述结果代入期望和协方差的表达式中,则有$$\boldsymbol{\mu}_{a|b}=\boldsymbol{\mu}_a+\boldsymbol{\Sigma}_{ab}\boldsymbol{\Sigma}_{bb}^{-1}(\mathbf{x}_b-\boldsymbol{\mu}_b)\tag{17}$$ $$\boldsymbol{\Sigma}_{a|b}=\boldsymbol{\Sigma}_{aa}-\boldsymbol{\Sigma}_{ab}\boldsymbol{\Sigma}_{bb}^{-1}\boldsymbol{\Sigma}_{ba}\tag{18}$$可以看出,使用分块精度矩阵表示可以使结果更简洁清晰。

2. 边际分布

下面我们来看边际分布 $$p(\mathbf{x}_a)=\int p(\mathbf{x}_a,\mathbf{x}_b)\mathrm{d}\mathbf{x}_b\tag{19}$$积分内部的联合分布项 $p(\mathbf{x}_a,\mathbf{x}_b)$ 的指数部分可以按(7)式那样展开,取其中含有 $\mathbf{x}_b$ 的项,整理后可以得到$$-\cfrac{1}{2}\mathbf{x}_b^{\mathrm{T}}\boldsymbol{\Lambda}_{bb}\mathbf{x}_b+\mathbf{x}_b^{\mathrm{T}}\mathbf{m}=-\cfrac{1}{2}(\mathbf{x}_b-\boldsymbol{\Lambda}_{bb}^{-1}\mathbf{m})^{\mathrm{T}}\boldsymbol{\Lambda}_{bb}(\mathbf{x}_b-\boldsymbol{\Lambda}_{bb}^{-1}\mathbf{m})+\cfrac{1}{2}\mathbf{m}^{\mathrm{T}}\boldsymbol{\Lambda}_{bb}^{-1}\mathbf{m}\tag{20}$$其中$$\mathbf{m}=\boldsymbol{\Lambda}_{bb}\boldsymbol{\mu}_b-\boldsymbol{\Lambda}_{ba}(\mathbf{x}_a-\boldsymbol{\mu}_a)\tag{21}$$可以看出,(20)式右端第一项是 $\mathbf{x}_b$ 的二次项,而第二项并不依赖于 $\mathbf{x}_b$,所以关于 $\mathbf{x}_b$ 积分时,积分号里面就只剩下$$\int\exp\left\{-\cfrac{1}{2}(\mathbf{x}_b-\boldsymbol{\Lambda}_{bb}^{-1}\mathbf{m})^{\mathrm{T}}\boldsymbol{\Lambda}_{bb}(\mathbf{x}_b-\boldsymbol{\Lambda}_{bb}^{-1}\mathbf{m})\right\}\mathrm{d}\mathbf{x}_b\tag{22}$$注意到这其实是对一个未归一化的高斯分布进行积分,所以积分结果是归一化系数的倒数。而由(4)式可知,归一化系数只依赖于协方差矩阵的行列式,与变量、期望都是独立的。所以,(20)式积分后关于 $\mathbf{x}_a$ 的就只有最后一项,再加上(7)式中与 $\mathbf{x}_b$ 无关的项,总共的指数项为$$\begin{array}{c,l}&\cfrac{1}{2}[\boldsymbol{\Lambda}_{bb}\boldsymbol{\mu}_b-\boldsymbol{\Lambda}_{ba}(\mathbf{x}_a-\boldsymbol{\mu}_a)]^{\mathrm{T}}\boldsymbol{\Lambda}_{bb}^{-1}[\boldsymbol{\Lambda}_{bb}\boldsymbol{\mu}_b-\boldsymbol{\Lambda}_{ba}(\mathbf{x}_a-\boldsymbol{\mu}_a)] \\ &\qquad\qquad -\cfrac{1}{2}\mathbf{x}_a^{\mathrm{T}}\boldsymbol{\Lambda}_{aa}\mathbf{x}_a+\mathbf{x}_a^{\mathrm{T}}(\boldsymbol{\Lambda}_{aa}\boldsymbol{\mu}_a+\boldsymbol{\Lambda}_{ab}\boldsymbol{\mu}_b)+\text{const} \\ &=-\cfrac{1}{2}\mathbf{x}_a^{\mathrm{T}}(\boldsymbol{\Lambda}_{aa}-\boldsymbol{\Lambda}_{ab}\boldsymbol{\Lambda}_{bb}^{-1}\boldsymbol{\Lambda}_{ba})\mathbf{x}_a +\mathbf{x}_a^{\mathrm{T}}(\boldsymbol{\Lambda}_{aa}-\boldsymbol{\Lambda}_{ab}\boldsymbol{\Lambda}_{bb}^{-1}\boldsymbol{\Lambda}_{ba})^{-1}\boldsymbol{\mu}_a+\text{const}\end{array}\tag{23}$$同样地,通过比较对应项系数,可以得到$$\boldsymbol{\Sigma}_a=(\boldsymbol{\Lambda}_{aa}-\boldsymbol{\Lambda}_{ab}\boldsymbol{\Lambda}_{bb}^{-1}\boldsymbol{\Lambda}_{ba})^{-1}\tag{24}$$ $$\boldsymbol{\Sigma}_a(\boldsymbol{\Lambda}_{aa}-\boldsymbol{\Lambda}_{ab}\boldsymbol{\Lambda}_{bb}^{-1}\boldsymbol{\Lambda}_{ba})^{-1}\boldsymbol{\mu}_a=\boldsymbol{\mu}_a\tag{25}$$利用分块矩阵逆的性质,将结果用分块协方差矩阵表示即为$$\text{cov}[\mathbf{x}_a]=\boldsymbol{\Sigma}_{aa}\tag{26}$$可以看出,对于边际分布,用分块协方差矩阵表示更为简单。

3. 总结:分块高斯分布

给定一个联合高斯分布 $\mathcal{N}(\mathbf{X}|\boldsymbol{\mu},\boldsymbol{\Sigma})$,令 $\boldsymbol{\Lambda}\equiv\boldsymbol{\Sigma}^{-1}$,并且有 $$\mathbf{x}=\begin{pmatrix}\mathbf{x}_a \\ \mathbf{x}_b\end{pmatrix},\boldsymbol{\mu}=\begin{pmatrix} \boldsymbol{\mu}_a \\ \boldsymbol{\mu}_b\end{pmatrix},\boldsymbol{\Sigma}=\begin{pmatrix}\boldsymbol{\Sigma}_{aa}&\boldsymbol{\Sigma}_{ab} \\ \boldsymbol{\Sigma}_{ba}&\boldsymbol{\Sigma}_{bb}\end{pmatrix},\boldsymbol{\Lambda}=\begin{pmatrix}\boldsymbol{\Lambda}_{aa} &\boldsymbol{\Lambda}_{ab} \\ \boldsymbol{\Lambda}_{ba} & \boldsymbol{\Lambda}_{bb}\end{pmatrix}$$则条件分布为$$p(\mathbf{x}_a|\mathbf{x}_b)=\mathcal{N}(\mathbf{x}|\boldsymbol{\mu}_{a|b},\boldsymbol{\Lambda}_{aa}^{-1})$$ $$\boldsymbol{\mu}_{a|b}=\boldsymbol{\mu}_a-\boldsymbol{\Lambda}_{aa}^{-1}\boldsymbol{\Lambda}_{ab}(\mathbf{x}_b-\boldsymbol{\mu}_b)$$边际分布为$$p(\mathbf{x}_a)=\mathcal{N}(\mathbf{x}_a|\boldsymbol{\mu}_a,\boldsymbol{\Sigma}_{aa})$$

参考资料

  1. Pattern Recognition and Machine Learning (PRML)