高斯作為機器學習中的常客也是無法避免的,而線性模型作為比較簡單的模型,兩者結合出的線性高斯模型,在今后的機器學習中大量涉及到這方面的知識。例如在各種濾波中,高斯濾波,卡曼濾波,粒子濾波。
一維情況 MLE: Maximum Likelihood Estimation
高斯分布在機器學習中占有舉足輕重的作用。在 MLE 方法中:
一般地,高斯分布的概率密度函數 PDF(Probability Density Function)寫為:
帶入 MLE 中我們考慮一維的情況
首先對 \(\mu\) 的極值可以得到 :
於是:
其次對 \(\theta\) 中的另一個參數 \(\sigma\) ,有:
於是:
值得注意的是,上面的推導中,首先對 \(\mu\) 求 MLE, 然后利用這個結果求 \(\sigma_{MLE}\) ,因此可以預期的是對數據集\(\mathcal{D}\)求期望時 \(\mathbb{E}_{\mathcal{D}}[\mu_{MLE}]\) 是無偏差的:
但是當對 \(\sigma_{MLE}\) 求 期望的時候由於使用了單個數據集的 \(\mu_{MLE}\),因此對所有數據集求期望的時候我們會發現 \(\sigma_{MLE}\) 是 有偏的:
所以:
多維情況MLE
多維高斯分布表達式為:
其中 \(x,\mu\in\mathbb{R}^{p},\Sigma\in\mathbb{R}^{p\times p}\) ,$\mu \(是期望,\)\Sigma$ 為協方差矩陣,一般而言也是半正定矩陣。這里我們只考慮正定矩陣,以方便計算。
什么是正定?
當\(A\in \mathbb{R}^{n\times n}, A^T=A\)時,對任意\(x\neq0,x \in R^n\),都有\(x^TAx\gt0\)什么是半正定?
當\(A\in \mathbb{R}^{n\times n}, A^T=A\)時,對任意\(x\neq0,x \in R^n\),都有\(x^TAx\ge0\)
常用的正定判定有
1. $\lambda(A)\gt0$ 2. 各階主子式均大於0
首先我們處理指數上的數字,指數上的數字可以記為 \(x\) 和 \(\mu\) 之間的馬氏距離。對於對稱的協方差矩陣可進行特征值分解,
,於是:
我們注意到 \(y_{i}\) 是 \(x-\mu\) 在特征向量 \(u_{i}\) 上的投影長度,相當於是坐標軸的平移與旋轉。因此上式子就是 \(\Delta\) 取不同值時的同心橢圓。
下面我們看多維高斯模型在實際應用時的兩個問題
-
參數 \(\Sigma,\mu\) 的自由度為 \(O(p^{2})\) 對於維度很高的數據其自由度太高。解決方案:高自由度的來源是 \(\Sigma\) 有 \(\frac{p(p+1)}{2}\) 個自由參數,可以假設其是對角矩陣,甚至在各向同性假設中假設其對角線上的元素都相同。前一種的算法有 Factor Analysis,后一種有概率 PCA: Principal Component Analysis(p-PCA) 。
\(\forall i,j \in 1 \cdots p,i\neq j,\lambda_{i}=\lambda_{j},\Sigma\)為對角矩陣,可判定各特征各自同性。
-
第二個問題是單個高斯分布是單峰的,對有多個峰的數據分布不能得到好的結果。解決方案:高斯混合模型 GMM。
下面對多維高斯分布的常用定理進行介紹。
我們記 \(x=(x_1, x_2,\cdots,x_p)^T=(x_{a,m\times 1}, x_{b,n\times1})^T,\mu=(\mu_{a,m\times1}, \mu_{b,n\times1})^{T},\Sigma=\begin{pmatrix}\Sigma_{aa}&\Sigma_{ab}\\\Sigma_{ba}&\Sigma_{bb}\end{pmatrix}\),已知 \(x\sim\mathcal{N}(\mu,\Sigma)\)。
首先是一個高斯分布的定理:`
定理:已知 \(x\sim\mathcal{N}(\mu,\Sigma), y\sim Ax+b\),那么 \(y\sim\mathcal{N}(A\mu+b, A\Sigma A^T)\)。
證明:\(\mathbb{E}[y]=\mathbb{E}[Ax+b]=A\mathbb{E}[x]+b=A\mu+b\),\(Var[y]=Var[Ax+b]=Var[Ax]=A\cdot Var[x]\cdot A^T\)。
下面利用這個定理得到 \(p(x_a),p(x_b),p(x_a|x_b),p(x_b|x_a)\) 這四個量。
-
\(x_a=\begin{pmatrix}\mathbb{I}_{m\times m}&\mathbb{O}_{m\times n})\end{pmatrix}\begin{pmatrix}x_a\\x_b\end{pmatrix}\),代入定理中得到:
\[\mathbb{E}[x_a]=\begin{pmatrix}\mathbb{I}&\mathbb{O}\end{pmatrix}\begin{pmatrix}\mu_a\\\mu_b\end{pmatrix}=\mu_a\\ Var[x_a]=\begin{pmatrix}\mathbb{I}&\mathbb{O}\end{pmatrix}\begin{pmatrix}\Sigma_{aa}&\Sigma_{ab}\\\Sigma_{ba}&\Sigma_{bb}\end{pmatrix}\begin{pmatrix}\mathbb{I}\\\mathbb{O}\end{pmatrix}=\Sigma_{aa} \]所以 \(x_a\sim\mathcal{N}(\mu_a,\Sigma_{aa})\)。
-
同樣的,\(x_b\sim\mathcal{N}(\mu_b,\Sigma_{bb})\)。
-
對於兩個條件概率,我們引入三個量:
\[x_{b\cdot a}=x_b-\Sigma_{ba}\Sigma_{aa}^{-1}x_a\\ \mu_{b\cdot a}=\mu_b-\Sigma_{ba}\Sigma_{aa}^{-1}\mu_a\\ \Sigma_{bb\cdot a}=\Sigma_{bb}-\Sigma_{ba}\Sigma_{aa}^{-1}\Sigma_{ab} \]特別的,最后一個式子叫做 \(\Sigma_{bb}\) 的 Schur Complementary。可以看到:
\[x_{b\cdot a}=\begin{pmatrix}-\Sigma_{ba}\Sigma_{aa}^{-1}&\mathbb{I}_{n\times n}\end{pmatrix}\begin{pmatrix}x_a\\x_b\end{pmatrix} \]所以:
\[\mathbb{E}[x_{b\cdot a}]=\begin{pmatrix}-\Sigma_{ba}\Sigma_{aa}^{-1}&\mathbb{I}_{n\times n}\end{pmatrix}\begin{pmatrix}\mu_a\\\mu_b\end{pmatrix}=\mu_{b\cdot a}\\Var[x_{b\cdot a}]=\begin{pmatrix}-\Sigma_{ba}\Sigma_{aa}^{-1}&\mathbb{I}_{n\times n}\end{pmatrix}\begin{pmatrix}\Sigma_{aa}&\Sigma_{ab}\\\Sigma_{ba}&\Sigma_{bb}\end{pmatrix}\begin{pmatrix}-\Sigma_{aa}^{-1}\Sigma_{ba}^T\\\mathbb{I}_{n\times n}\end{pmatrix}=\Sigma_{bb\cdot a} \]利用這三個量可以得到 \(x_b=x_{b\cdot a}+\Sigma_{ba}\Sigma_{aa}^{-1}x_a\)。因此:
\[\mathbb{E}[x_b|x_a]=\mu_{b\cdot a}+\Sigma_{ba}\Sigma_{aa}^{-1}x_a \]\[Var[x_b|x_a]=\Sigma_{bb\cdot a} \]這里同樣用到了定理。
-
同樣:
\[x_{a\cdot b}=x_a-\Sigma_{ab}\Sigma_{bb}^{-1}x_b\\ \mu_{a\cdot b}=\mu_a-\Sigma_{ab}\Sigma_{bb}^{-1}\mu_b\\ \Sigma_{aa\cdot b}=\Sigma_{aa}-\Sigma_{ab}\Sigma_{bb}^{-1}\Sigma_{ba} \]所以:
\[\mathbb{E}[x_a|x_b]=\mu_{a\cdot b}+\Sigma_{ab}\Sigma_{bb}^{-1}x_b \]\[Var[x_a|x_b]=\Sigma_{aa\cdot b} \]
下面利用上邊四個量,求解線性模型:
已知:\(p(x)=\mathcal{N}(\mu,\Lambda^{-1}),p(y|x)=\mathcal{N}(Ax+b,L^{-1})\),求解:\(p(y),p(x|y)\)。
解:令 \(y=Ax+b+\epsilon,\epsilon\sim\mathcal{N}(0,L^{-1})\),所以 \(\mathbb{E}[y]=\mathbb{E}[Ax+b+\epsilon]=A\mu+b\),\(Var[y]=A \Lambda^{-1}A^T+L^{-1}\),因此:
\[p(y)=\mathcal{N}(A\mu+b,L^{-1}+A\Lambda^{-1}A^T) \]引入 \(z=\begin{pmatrix}x\\y\end{pmatrix}\),我們可以得到 \(Cov[x,y]=\mathbb{E}[(x-\mathbb{E}[x])(y-\mathbb{E}[y])^T]\)。對於這個協方差可以直接計算:
\[\begin{align} Cov(x,y)&=\mathbb{E}[(x-\mu)(Ax-A\mu+\epsilon)^T]\\ &=\mathbb{E}[(x-\mu)(x-\mu)^TA^T]\\ &=Var[x]A^T=\Lambda^{-1}A^T \end{align} \]注意到協方差矩陣的對稱性,所以 \(p(z)=\mathcal{N}\begin{pmatrix}\mu\\A\mu+b\end{pmatrix},\begin{pmatrix}\Lambda^{-1}&\Lambda^{-1}A^T\\A\Lambda^{-1}&L^{-1}+A\Lambda^{-1}A^T\end {pmatrix}\)。根據之前的公式,我們可以得到:
\[\mathbb{E}[x|y]=\mu+\Lambda^{-1}A^T(L^{-1}+A\Lambda^{-1}A^T)^{-1}(y-A\mu-b) \]\[Var[x|y]=\Lambda^{-1}-\Lambda^{-1}A^T(L^{-1}+A\Lambda^{-1}A^T)^{-1}A\Lambda^{-1} \]
這里的\(\Lambda^{-1}\)是精度矩陣,\(\mathit{L}^{-1}\)是協方差矩陣。
這里補充一些小知識
- 一般情況下,兩個隨機變量\(x ,y\)獨立不相關,不相關不一定獨立
- 若\(x,y\sim N(\mu,\Sigma)\),不相關等價於獨立