高斯混合模型(Gaussian Mixture Model)與EM演算法原理(一)
高斯混合模型(Gaussian Mixture Model)是機器學習中一種常用的聚類演算法,本文介紹了其原理,並推導了其參數估計的過程。主要參考Christopher M. Bishop的《Pattern Recognition and Machine Learning》。
以粗體小寫字母表示向量,粗體大寫字母表示矩陣;標量不加粗,大寫表示常數。
1. 高斯分布
高斯分布(Gaussian distribution),也稱為正態分布(normal distribution),是一種常用的連續變數分布的模型。若單個隨機變數 服從均值為 ,方差為 的高斯分布,記為 ,則其概率密度函數為:
對於一個 維的向量 ,若其各元素服從均值為向量 ,協方差矩陣為 的多元高斯分布,記為 ,則概率密度為:
其中 為 維均值向量, 為 的協方差矩陣, 表示 的行列式。
(1)式中,指數部分的二次型 稱為 到 的馬哈拉諾比斯距離(馬氏距離,Mahalanobis distance);當 為單位矩陣時退化為歐幾里得距離(Euclidean distance)。多元高斯分布密度函數的等高線即 為常數時 的方程,是橢球方程(Ellipsoid - Wikipedia)。
2. 高斯混合模型(Gaussian Mixture Model)
多個高斯分布的線性疊加能擬合非常複雜的密度函數;通過足夠多的高斯分布疊加,並調節它們的均值,協方差矩陣,以及線性組合的係數,可以精確地逼近任意連續密度([1], Section 2.3.9, p111)。
我們考慮 個高斯分布的線性疊加,這個高斯混合分布(Gaussian mixture distiburion)的概率密度函數為:
其中, 表示參數為 的高斯分布的概率密度。
我們稱(2)式為一個高斯混合(Mixture of Gaussians, Gaussian Mixture)。其中每個高斯密度函數稱為混合的一個分模型(component),有自己的均值 和協方差矩陣 。
(2)式中的參數 是模型的混合係數(mixing coefficients)。將(2)式左右兩側對 積分,得到
此外,由於 , ,所以 。即混合係數應滿足 。
(更一般地,混合模型也可以是其他任意分布的疊加。)
由全概率公式, 的邊緣分布(marginal distribution)的概率密度為:
上式與(2)式等價,其中 可以看作選擇第 個分模型的先驗概率(prior probability), 是 對 的條件概率密度。
在觀測到 後,其來自第 個分模型的後驗概率(posterior probability) 稱為第 個分模型的響應度(responsibility)。
下圖所示為包含兩個一維分模型的高斯混合: