混合高斯模型

2021-07-29 08:17:13 字數 3094 閱讀 9256

多維高斯分布的概率密度函式如下式所示:

對於單高斯模型,由於可以明確訓練樣本是否屬於該高斯模型,因此

μ 通常由訓練樣本均值代替,

σ 通常由樣本方差代替。單高斯模型可用於進行二分類問題,例如,對於任意輸入

x ,n(

x;μ,

σ)表示該樣本為正樣本(負樣本) 的概率。然後根據提前設定的閾值來進行分類。在幾何圖形上,單高斯分布在二維平面上近似於橢圓,在三維平面上近似於橢球狀,下圖為二維空間的例子:

雖然單⾼斯分布有⼀些重要的分析性質,但是當它遇到實際資料集時,也會有巨⼤的侷限性。考慮下圖給出的例⼦。這個資料集被稱為「⽼忠實間歇噴泉」資料集,由美國黃⽯國家公園的⽼忠實間歇噴泉的272次噴發的測量資料組成。每條測量記錄包括噴發持續了⼏分鐘(橫軸)和距離下次噴發間隔了⼏分鐘(縱軸)。我們看到資料集主要聚集在兩⼤堆中,⼀個簡單的⾼斯分布不能描述這種結構,⽽兩個⾼斯分布的線性疊加可以更好地描述這個資料集的特徵。

混合高斯模型假設資料服從混合高斯分布,通過將單個⾼斯分布進⾏線性組合而得到的模型,被稱為混合高斯模型(gaussian mixture model)。下圖是⼀維混合⾼斯分布的例⼦,藍⾊曲線給出了三個⾼斯分布,紅⾊曲線表⽰它們的和。通過使⽤⾜夠多的⾼斯分布,並且調節它們的均值和⽅差以及線性組合的係數,⼏乎所有的連續概率密度都能夠以任意的精度近似。

混合高斯模型通常用於聚類,假設模型由 k 個 高斯分布組成(即資料報含k個類),每個高斯分布稱為乙個「component」,這些 component 線性加成在一起就組成了 gmm 的概率密度函式:

其中,引數πk

被稱為混合係數(mixing coefficients),∑k

k=1π

k=1 且 0⩽

πk⩽1

。我們把πk

=p(k

) 看成選擇第k個分布的先驗概率, 把密度n(

x|μk

,σk)

=p(x

|k) 看成給定第k個分布時x的概率。

下圖給出了⼆維空間中3個⾼斯分布混合的例⼦。(a)每個混合分量的常數概率密度輪廓線,其中三個分量分別被標記為紅⾊、藍⾊和綠⾊,且混合係數的值在每個分量的下⽅給出。(b)混合分布的邊緣概率密度p(x)的輪廓線。(c)概率分布p(x)的⼀個曲⾯圖。

為了便於引入em演算法,我們通過隱變數來描述gmm。我們引⼊⼀個k維⼆值隨機變數z(稱為隱變數),這個變數採⽤了「1-of-k」表⽰⽅法,其中⼀個特定的元素zk

等於1,其餘所有的元素等於0。z的邊緣概率分布根據混合係數k進⾏賦值,即:

類似地,給定z的⼀個特定的值,x的條件概率分布是⼀個⾼斯分布

聯合概率分布為p(

z)p(

x|z)

,從⽽x的邊緣概率分布可以通過將聯合概率分布對所有可能的z求和的⽅式得到,求和式的各項的結果就分別代表樣本x 屬於各個類的概率,如下所示:

現在假設我們有 n 個資料點,並假設它們服從某個分布(記作 p(

x)),現在要確定裡面的一些引數的值,.在 gmm 中,我們就需要確定 πk

、μk 和σk

這些引數。 我們的想法是,找到這樣一組引數,它所確定的概率分布生成這些給定的資料點的概率最大,而這個概率實際上就等於∏n

i=1p

(xi)

,這個乘積就是似然函式。通常單個點的概率都很小,許多很小的數字相乘起來在計算機裡很容易造成浮點數下溢,因此我們通常會對其取對數,把乘積變成加和 ∑n

i=1ln

p(xi

) ,得到 log-likelihood function :

本文不涉及em演算法的詳細介紹,簡單來講,em的意思是「expectation maximization」:該過程分為兩步:第一步,假設知道各個高斯分布的引數(可以初始化乙個,或者基於上一步迭代結果),去估計每個高斯模型的隱變數;第二步,基於估計的隱變數,回過頭再去確定高斯分布的引數。重複這兩個步驟,直到收斂。

接下來我們需要最大化如下似然函式(通常的做法是求導並令導數等於零,然後解方程),亦即找到這樣一組引數值,它讓似然函式取得最大值,我們就認為這是最合適的引數,這樣就完成了引數估計的過程。

由於在對數函式裡面又有加和,我們沒法直接用求導解方程的辦法直接求得最大值。採用em演算法的思想,混合高斯模型的引數確定可分為以下兩步:

(1)e-step

估計資料由每個 component 生成的概率(並不是每個 component 被選中的概率):對於每個資料 xi

來說,它由第 k 個 component 生成的概率為

由於式子裡的 μk

和 σk

也是需要我們估計的值,我們採用迭代法,在計算 γ(

i,k)

的時候我們假定 μk

和 σk

均已知,我們將取上一次迭代所得的值(或者初始值)。

(2)m-stepγ(i

,k) 就是正確的「資料 xi

由 component k 生成的概率」,亦可以當做該 component 在生成這個資料 xi

上所做的貢獻,或者說,我們可以看作 xi

這個值其中有 γ(

i,k)

xi這部分是由 component k 所生成的。集中考慮所有的資料點,現在實際上可以看作 component 生成了 γ(

1,k)

x1,…

,γ(n

,k)x

n 這些點。由於每個 component 都是乙個標準的 gaussian 分布,可以很容易分布求出最大似然所對應的引數值:

重複迭代前面兩步,直到似然函式的值收斂為止。

高斯混合模型

本文就高斯混合模型 gmm,gaussian mixture model 引數如何確立這個問題,詳細講解期望最大化 em,expectation maximization 演算法的實施過程。多維變數x服從高斯分布時,它的概率密度函式pdf為 x是維度為d的列向量,u是模型期望,是模型方差。在實際應用...

高斯混合模型

高斯混合模型 本文就高斯混合模型 gmm,gaussian mixture model 引數如何確立這個問題,詳細講解期望最大化 em,expectation maximization 演算法的實施過程。多維變數x服從高斯分布時,它的概率密度函式pdf為 x是維度為d的列向量,u是模型期望,是模型方...

高斯混合模型

本文就高斯混合模型 gmm,gaussian mixture model 引數如何確立這個問題,詳細講解期望最大化 em,expectation maximization 演算法的實施過程。多維變數x服從高斯分布時,它的概率密度函式pdf為 x是維度為d的列向量,u是模型期望,是模型方差。在實際應用...