高斯混合模型GMM的細致推導(dǎo)

最近在學(xué)習(xí)語音識別吓笙,由于傳統(tǒng)的基于HMM-GMM架構(gòu)的語音識別具有成熟的理論映屋、工具鏈,且其一直以來神秘感讓人十分好奇膊升;所以我打算從傳統(tǒng)框架入手學(xué)習(xí)怎炊,并嘗試認真地弄懂相關(guān)技術(shù);在看了一些語音識別相關(guān)簡介后廓译,知道雖然GMM模型在很多年前评肆,在”混合模型“(hybrid model)中就被DNN所取代了;甚至在當今深度學(xué)習(xí)背景下非区,HMM也有被完全取代的趨勢瓜挽;但是從學(xué)習(xí)的角度,我覺得GMM仍然是很好的學(xué)習(xí)材料征绸。

注:由于包含大量LaTeX公式久橙,可能需要多次刷新才能渲染成功


密度函數(shù)

\begin{aligned}p(\boldsymbol x) &= \sum_{i=1}^{K}\pi_i N(\boldsymbol x; \boldsymbol \mu_i,\boldsymbol \Sigma_i)\\&=  \sum_{i=1}^{K}\pi_i \frac{1}{\sqrt{{(2\pi)}^Ddet(\boldsymbol\Sigma_i)}}e^{-\frac{1}{2}\boldsymbol {{(x-\mu_i)}^T\Sigma_i^{-1}(x-\mu_i)}}\end{aligned} \ \ \ \cdots (0)

其中:D為數(shù)據(jù)空間的維數(shù),K為混合分支個數(shù)

多元正態(tài)分布文中管怠,中我們證實了\int_{R^D}N(\boldsymbol{x;\mu,\Sigma}) {\rm d} \boldsymbol x的積分為1朽色,在這里由積分的線性性質(zhì)有:\int_{R^D}\sum_{I=1}^K \pi_i N(\boldsymbol{x;\mu_i,\Sigma_i}) {\rm d}\boldsymbol x= \sum_{i=1}^K\pi_i \int_{R^D}N(\boldsymbol{x;\mu_i,\Sigma_i}){\rm d}\boldsymbol x = \sum_{i=1}^K\pi_i

所以需要\sum_{i=1}^K\pi_i =1谭期,且為了保證概率都為正數(shù),這里還要求\pi_i都大于0,這時p(\boldsymbol x) 成為合法的密度函數(shù)耿眉。


下面關(guān)于參數(shù)的極大似然估計主要學(xué)習(xí)PRML書中的相關(guān)討論悲关,這里我補充了一些推導(dǎo)過程中的數(shù)學(xué)細節(jié),這些數(shù)學(xué)細節(jié)書上不會寫出來,所以這里我決定自己推推看鹰贵,心里更加踏實。

導(dǎo)數(shù)的計算

為了不至于使得下面ML估計的公式推導(dǎo)太亂康嘉,我們在這里提前把部分相關(guān)的導(dǎo)數(shù)計算好碉输。

1. 設(shè)二次型為f(\boldsymbol x) = \boldsymbol x^T\boldsymbol {Ax} ,其中\boldsymbol x為D維列向量亭珍,而\boldsymbol A為D階方陣敷钾,而\boldsymbol h為點\boldsymbol x處的切空間(tangent space)中的向量,根據(jù)下式:

\begin{aligned}f(\boldsymbol {x+h}) &= (\boldsymbol {x+h})^T\boldsymbol{A} (\boldsymbol{x+h})\\&=  \boldsymbol {x}^T\boldsymbol{A} \boldsymbol{x}        + \boldsymbol {x}^T\boldsymbol{A} \boldsymbol{h}        + \boldsymbol {h}^T\boldsymbol{A} \boldsymbol{x}        + \boldsymbol {h}^T\boldsymbol{A} \boldsymbol{h} \\&= f(\boldsymbol x)      + \boldsymbol {x}^T(\boldsymbol{A} + \boldsymbol A^T)\boldsymbol{h}       + \boldsymbol {h}^T\boldsymbol{A} \boldsymbol{h} \end{aligned}

顯然L_{\boldsymbol x}(\boldsymbol h) = \boldsymbol {x}^T(\boldsymbol{A} + \boldsymbol A^T)\boldsymbol{h} 是關(guān)于切空間中向量\boldsymbol h的線性函數(shù)块蚌;且 \boldsymbol {h}^T\boldsymbol{A} \boldsymbol{h} 顯然是關(guān)于\boldsymbol h的高階部分闰非,即當\lVert \boldsymbol h \lVert \to 0時,\lVert \boldsymbol {h}^T\boldsymbol{A} \boldsymbol{h} \lVert  = \boldsymbol o(\lVert \boldsymbol h \lVert)峭范。

即:\begin{aligned}f(\boldsymbol {x+h}) - f(\boldsymbol x) =       \boldsymbol {x}^T(\boldsymbol{A} + \boldsymbol A^T)\boldsymbol{h}       + \boldsymbol o(\lVert \boldsymbol h \lVert), \ \ \ \ as \ \ \lVert \boldsymbol h \lVert \to 0\end{aligned}?

以上便是函數(shù)的可微性定義财松,因而導(dǎo)數(shù)(雅可比矩陣)為:\frac{\partial f}{\partial \boldsymbol x}(\boldsymbol x) =  \boldsymbol{x} ^T(\boldsymbol{A} + \boldsymbol A^T)

進而纱控,若 \boldsymbol A是對稱矩陣辆毡,則\frac{\partial f}{\partial \boldsymbol x}(\boldsymbol x) =  2 \boldsymbol{x} ^T\boldsymbol{A} \  \  \ \cdots (1)? ? ?

2. 同樣是上面的二次型,這次我們把參數(shù)矩陣看作變量甜害,即f(\boldsymbol A) = \boldsymbol x^T\boldsymbol {Ax} =\sum_{i=1}^D\sum_{j=1}^Da_{ij}x_ix_j舶掖,有:\frac{\partial f}{\partial a_{ij}} = x_ix_j,寫成矩陣形式就有:\frac{\partial f}{\partial A} = \boldsymbol {xx}^T \  \  \ \cdots (2)

3. 行列式的求導(dǎo)尔店,行列式函數(shù):\boldsymbol {\vert \cdot \vert} :\  \mathcal{M}_{n}(\mathbb{R})\to \mathbb{R}眨攘,是n階實方陣空間上的實值函數(shù);事實上我們直接將行列式看作原型是\boldsymbol {\vert \cdot \vert} : \ \mathbb{R^{n\times n}} \to \mathbb{R}的函數(shù)即可嚣州,因為這里我們關(guān)心的求導(dǎo)運算跟矩陣的代數(shù)運算沒有關(guān)系鲫售,因此可以忽略其結(jié)構(gòu);從線代課本可知有兩種方式定義行列式:

1)組合式定義:\boldsymbol{\vert A \vert} = \Sigma_{\pi \in S_n}\  \sigma_\pi\  a_{1\pi_1}a_{2\pi_2}\cdots a_{n\pi_n}该肴,其中A是n階方陣情竹,S_n是n元對稱群,\pi是其中任取的置換匀哄,也可以將\pi看作(1,2,\cdots,n)的一個全排列秦效,而\sigma_\pi是全排列\pi的符號。

2)遞歸定義涎嚼,按第k行展開:

\begin{aligned}\boldsymbol{\vert A \vert}  &= \sum_{j=1}^n a_{kj}(-1)^{(k+j)}{\vert \boldsymbol A_{kj} \vert} \\&=a_{k1}(-1)^{(k+1)}{\vert \boldsymbol A_{k1} \vert} +  a_{k2}(-1)^{(k+2)}{\vert \boldsymbol A_{k2} \vert} + \cdots+  a_{kn}(-1)^{(k+n)}{\vert \boldsymbol A_{kn} \vert} \\&=a_{k1}{\boldsymbol A_{k1}} +  a_{k2}{\boldsymbol A_{k2}} + \cdots+  a_{kn}{\boldsymbol A_{kn}} \end{aligned}??\ \ \ \cdots \big(3\big)

其中:a_{kj}是矩陣的第k行第j列元素阱州,{\vert \boldsymbol A_{kj} \vert} 是元素a_{kj}對應(yīng)的余子式,而記\boldsymbol A_{kj}  = (-1)^{(k+j)}{\vert \boldsymbol A_{kj} \vert} 為元素a_{kj}的代數(shù)余子式法梯。

在這里應(yīng)該用遞歸定義比較方便苔货,比如要對元素a_{kj}求導(dǎo):a_{kj}來自第k行、第j列,又因為按照行列式的遞歸定義(3)式蒲赂,同樣的第k行,但是不同的列i\neq j上的元素a_{ki}的余子式{\vert \boldsymbol A_{ki} \vert} 顯然不會包括當前被求導(dǎo)元素a_{kj}刁憋,因為它不會包含第k行除了a_{ki}以外的任何元素滥嘴。因此,我們有:

\frac{\partial \boldsymbol{\vert A \vert} }{\partial a_{kj}}= (-1)^{(k+j)} {\vert \boldsymbol A_{kj} \vert} = \boldsymbol A_{kj}

即行列式關(guān)于第a_{kj}元素的偏導(dǎo)數(shù)至耻,就是該元素對應(yīng)的代數(shù)余子式若皱。因此把所有的偏導(dǎo)數(shù)整理到矩陣里面,就有:

\frac{\partial \boldsymbol{\vert A \vert} }{\partial \boldsymbol A}= \boldsymbol { \begin{pmatrix}A_{11}  &\cdots &A_{1n}\\\vdots  &\ddots &\vdots\\A_{n1} &\cdots &A_{nn}\end{pmatrix}} = {A^\ast}^T \ \ \ \cdots (4)?其中 {A^\ast}^TA的伴隨矩陣的轉(zhuǎn)置尘颓。

再次走触,若\boldsymbol A為對稱矩陣,且可逆疤苹,則根據(jù)公式\boldsymbol A^\ast = \vert \boldsymbol A \vert^{-1} \boldsymbol A有:(\boldsymbol A^\ast)^T = (\vert \boldsymbol A \vert \boldsymbol A^{-1})^T = \vert \boldsymbol A \vert (\boldsymbol A^{-1})^T =  \vert \boldsymbol A^T \vert (\boldsymbol A^T)^{-1} = (\boldsymbol A^T)^\ast= \boldsymbol A^\ast \ \ \cdots (5)互广,即A的伴隨矩陣也是對稱的。


最大似然估計

現(xiàn)在我們用一組數(shù)據(jù)\left\{ \boldsymbol x_i \right\}_{i=1}^N來擬合GMM模型卧土,假設(shè)數(shù)據(jù)之間是獨立的惫皱,則該組數(shù)據(jù)在模型上的對數(shù)似然為:

\begin{aligned}&\ln p(X; \boldsymbol {\pi,\mu,\Sigma}) \\ &\equiv \ln p(x_1,\cdots,x_N; \boldsymbol {\pi,\mu,\Sigma}) \\ &= \sum_{i=1}^N \ln p(x_i; \boldsymbol {\pi,\mu,\Sigma}) \\&=\sum_{i=1}^N \ln \Sigma_{k=1}^K \pi_k N(x_i; \boldsymbol {\mu_k,\Sigma_k})\end{aligned}

下面根據(jù)微分學(xué)計算該似然函數(shù)取得極大值的必要條件,由于需要滿足約束\Sigma_{i=1}^K\pi_i =1尤莺,根據(jù)Lagrange乘子法旅敷,求下面關(guān)于參數(shù)\pi_k,\boldsymbol{\mu_k},\boldsymbol{\Sigma_k};k=1,\cdots,K的函數(shù)L(\boldsymbol {\pi,\mu,\Sigma})的極大值點:

\begin{aligned}&L(\boldsymbol {\pi,\mu,\Sigma}) \\ &=\sum_{i=1}^N \ln \left\{ \sum_{k=1}^K \pi_k N(x_i; \boldsymbol \mu_k,\boldsymbol \Sigma_k) \right\} + \lambda(\sum_{k=1}^K\pi_k - 1)\end{aligned}


先對\boldsymbol \mu_k求導(dǎo):根據(jù)多元復(fù)合函數(shù)的鏈式求導(dǎo)法則,有:

\frac{\partial \boldsymbol{L}}{\partial \boldsymbol{\mu_k}} = \sum_{n=1}^N \frac {\pi_kN(\boldsymbol x_n; \boldsymbol \mu_k, \boldsymbol \Sigma_k)} {\sum_{k=1}^K \pi_j N(\boldsymbol x_n; \boldsymbol \mu_j, \boldsymbol \Sigma_j)} \  \frac{\partial q(\boldsymbol \mu_k)}{\partial \boldsymbol \mu_k}\ \ \ \dots (6)颤霎,其中q(\boldsymbol \mu_k)為密度函數(shù)指數(shù)部分的二次型媳谁,即:q(\boldsymbol \mu_k) = -\frac{1}{2}{(\boldsymbol x_n - \boldsymbol \mu_k)}^T\boldsymbol \Sigma_k^{-1}(\boldsymbol x_n - \boldsymbol \mu_k)

\boldsymbol \nu_k =  \boldsymbol x_n - \boldsymbol \mu_k,則:\frac{\partial q}{\partial \boldsymbol \mu_k} = \frac{\partial q}{\partial \boldsymbol \nu_k} \frac{\partial \boldsymbol \nu_k}{\partial \boldsymbol \mu_k} 友酱,其中:根據(jù)之前的推導(dǎo)晴音,雅可比矩陣 \frac{\partial q}{\partial \boldsymbol \nu_k} = - \boldsymbol {\nu_k}^T\boldsymbol \Sigma_k^{-1},而雅可比矩陣\frac{\partial \boldsymbol \nu_k}{\partial \boldsymbol \mu_k} = -I_{n\times n}粹污,所以:????\frac{\partial q}{\partial \boldsymbol \mu_k} = - \boldsymbol \nu_k^T\boldsymbol \Sigma_k^{-1} (-I_{n\times n})= ( \boldsymbol x_n - \boldsymbol \mu_k )^T\boldsymbol \Sigma_k^{-1}段多。

按照書中所說將 \frac {\pi_kN(\boldsymbol x_n; \boldsymbol \mu_k, \boldsymbol \Sigma_k)} {\sum_{k=1}^K \pi_j N(\boldsymbol x_n; \boldsymbol \mu_j, \boldsymbol \Sigma_j)} 定義為\gamma(z_{nk})=p(z_{nk}=1 \ |\ \boldsymbol x_n)關(guān)于隱變量的后驗概率,則(6)式變?yōu)椋?img class="math-inline" src="https://math.jianshu.com/math?formula=%5Cfrac%7B%5Cpartial%20%5Cboldsymbol%7BL%7D%7D%7B%5Cpartial%20%5Cboldsymbol%7B%5Cmu_k%7D%7D%20%3D%5Csum_%7Bn%3D1%7D%5EN%5Cgamma(z_%7Bnk%7D)(%5Cboldsymbol%20x_n%20-%20%5Cboldsymbol%20%5Cmu_k%20%20)%5ET%20%20%5Cboldsymbol%20%5CSigma_k%5E%7B-1%7D" alt="\frac{\partial \boldsymbol{L}}{\partial \boldsymbol{\mu_k}} =\sum_{n=1}^N\gamma(z_{nk})(\boldsymbol x_n - \boldsymbol \mu_k )^T \boldsymbol \Sigma_k^{-1}" mathimg="1">壮吩,寫成梯度形式进苍,就有:\frac{\partial \boldsymbol{L}}{\partial \boldsymbol{\mu_k}} =\Sigma_{n=1}^N\gamma(z_{nk}) \boldsymbol \Sigma_k^{-1}(\boldsymbol x_n - \boldsymbol \mu_k  ),令其等于\boldsymbol 0_{n\times 1}鸭叙,并利用\boldsymbol \Sigma_k的非奇異性觉啊,兩邊同時左乘\boldsymbol \Sigma_k,將其解出來得:

\boldsymbol \mu_k = \frac{\sum_{n=1}^N\gamma(z_{nk})  \boldsymbol x_n}{\sum_{n=1}^{N}\gamma(z_{nk})}


下面對協(xié)方差矩陣求導(dǎo):為了保持一致沈贝,我們還是用\vert \cdot\vert代替{\rm det}(\cdot)作為行列式函數(shù)杠人;但是這里為了方便,我們不直接對協(xié)方差矩陣求導(dǎo),而是對其逆矩陣求導(dǎo)嗡善,我們令\boldsymbol A_i = \boldsymbol \Sigma_i^{-1}辑莫,重寫一遍(0)式:

\begin{aligned}p(x) &= \sum_{i=1}^{K}\pi_i N(\boldsymbol{x;\mu_i,A_i}) \\&=  \sum_{i=1}^{K}\pi_i \frac{\vert \boldsymbol A_i \vert^{\frac{1}{2}}} {\sqrt{{(2\pi)}^D}} e^{-\frac{1}{2}\boldsymbol {{(x-\mu_i)}^T A_i (x-\mu_i)}}\end{aligned}     \ \ \  \cdots (7)

在上式中,令U(\boldsymbol A_k)= \frac{\vert\boldsymbol A_k \vert^{\frac{1}{2}}}{\sqrt{{(2\pi)}^D }},V(\boldsymbol A_k)=e^{-\frac{1}{2} \boldsymbol {{(x-\mu_k)}^T A_k (x-\mu_k)}}罩引,則根據(jù)乘法求導(dǎo)法則有:

\begin{aligned}\frac{\partial \boldsymbol{L}} {\partial \boldsymbol{A_k}} &= \sum_{n=1}^N \frac {\pi_k} {\sum_{k=1}^K \pi_j N(\boldsymbol x_n; \boldsymbol \mu_j, \boldsymbol A_j)} \  \frac{\partial N(\boldsymbol x_n; \boldsymbol \mu_k, \boldsymbol A_k)}{\partial \boldsymbol A_k}\\ &= \sum_{n=1}^N \frac {\pi_k} {\sum_{k=1}^K \pi_j N(\boldsymbol x_n; \boldsymbol \mu_j, \boldsymbol A_j)} \ ( \frac{\partial U(\boldsymbol A_k)}{\partial \boldsymbol A_k} V(\boldsymbol A_k) +  U(\boldsymbol A_k)\frac{\partial V(\boldsymbol A_k)}{\partial \boldsymbol A_k} )\end{aligned} \cdots (8)

其中各吨,根據(jù)上面的(4)式有:

\begin{aligned} \frac{\partial U(\boldsymbol A_k)}{\partial \boldsymbol A_k} &=\frac{1}{\sqrt{(2\pi)^D}}\ \frac{1}{2}\ \vert \boldsymbol A_k\vert ^{\frac{1}{2}-1}   \frac{\partial \vert \boldsymbol A_k \vert}{\partial \boldsymbol A_k} \\&=\frac{1}{2}\frac{\vert \boldsymbol A_k \vert^{\frac{1}{2}}}{\sqrt{(2\pi)^D}}\vert \boldsymbol A_k \vert ^{-1} (\boldsymbol A_k^\ast)^T\\&=\frac{1}{2}\frac{\vert \boldsymbol A_k \vert^{\frac{1}{2}}}{\sqrt{(2\pi)^D}} \boldsymbol A_k ^{-1} \\\end{aligned}

因為\boldsymbol \Sigma_k是對稱矩陣,故而\boldsymbol A_k也是對稱矩陣(由\boldsymbol A_k^T = (\boldsymbol  \Sigma_k^{-1})^T =  (\boldsymbol  \Sigma_k^T)^{-1} =  \boldsymbol  \Sigma_k^{-1} = \boldsymbol  A_k易知)袁铐,再利用上面證過的(5)式就得到了上式揭蜒。

令其乘以V(\boldsymbol A_k),有:

\begin{aligned} \frac{\partial U(\boldsymbol A_k)}{\partial \boldsymbol A_k} V(\boldsymbol A_k)&=\frac{1}{2}\frac{\vert \boldsymbol A_k \vert^{\frac{1}{2}}}{\sqrt{(2\pi)^D}}\boldsymbol A_k^{-1} e^{-\frac{1}{2}\boldsymbol {{(x-\mu_k)}^T A_k(x-\mu_k)}}\\&=\frac{1}{2}N(\boldsymbol x_n;\boldsymbol \mu_k, \boldsymbol A_k)\boldsymbol A_k^{-1} \\\end{aligned} \dots(9)

再利用上面證好的(2)式剔桨,有:

\begin{aligned}\frac{\partial V(\boldsymbol A_k)}{\partial \boldsymbol A_k} &=e^{-\frac{1}{2}\boldsymbol {{(x_n-\mu_k)}^T A_k(x_n-\mu_k)}} \frac{\partial l(\boldsymbol A_k)}{\partial \boldsymbol A_k} \\&=e^{-\frac{1}{2}\boldsymbol {{(x_n-\mu_k)}^TA_k^{-1}(x_n-\mu_k)}} (-\frac{1}{2}) (\boldsymbol x_n- \boldsymbol \mu_k)(\boldsymbol x_n-\boldsymbol \mu_k)^T\end{aligned}

其中:l(\boldsymbol A_k)=-\frac{1}{2} (\boldsymbol x_n- \boldsymbol \mu_k)^T \boldsymbol A_k (\boldsymbol  x_n-\boldsymbol  \mu_k)

同樣屉更,令其乘以U(\boldsymbol A_k),有:

\begin{aligned}U(\boldsymbol A_k)\frac{\partial V(\boldsymbol A_k)}{\partial \boldsymbol A_k} &= \frac{\vert\boldsymbol A_k \vert^{\frac{1}{2}}}{\sqrt{{(2\pi)}^D }} e^{-\frac{1}{2}\boldsymbol {{(x_n-\mu_k)}^TA_k^{-1}(x_n-\mu_k)}} (-\frac{1}{2}) (\boldsymbol x_n- \boldsymbol \mu_k)(\boldsymbol x_n-\boldsymbol \mu_k)^T\end{aligned} \cdots (10)

最后將(9),(10)兩式代入(8)式洒缀,整理整理就得到:

\begin{aligned}\frac{\partial \boldsymbol{L}} {\partial \boldsymbol{A_k}} &=\frac{1}{2} \sum_{n=1}^N \frac {\pi_k N(\boldsymbol x_n; \boldsymbol \mu_k, \boldsymbol A_k)} {\sum_{k=1}^K \pi_j N(\boldsymbol x_n; \boldsymbol \mu_j, \boldsymbol A_j)}(\boldsymbol A_k^{-1} -  (\boldsymbol x_n- \boldsymbol \mu_k)(\boldsymbol x_n-\boldsymbol \mu_k)^T)\\ &=\frac{1}{2} \sum_{n=1}^N \gamma(z_{nk})(\boldsymbol A_k^{-1} -  (\boldsymbol x_n- \boldsymbol \mu_k)(\boldsymbol x_n-\boldsymbol \mu_k)^T)\end{aligned}

令其等于\boldsymbol 0_{n\times n}瑰谜,且注意到\boldsymbol \Sigma_k = \boldsymbol A_k^{-1},我們得到:

\boldsymbol \Sigma_k = \frac{\sum_{n=1}^N \gamma(z_{nk}) (\boldsymbol x_n- \boldsymbol \mu_k)(\boldsymbol x_n-\boldsymbol \mu_k)^T}{\sum_{n=1}^N \gamma(z_{nk})}


最后帝洪,我們對混合系數(shù)\pi_k求導(dǎo):

\frac{\partial \boldsymbol L}{\partial \pi_k} = \sum_{n=1}^N \frac{N(\boldsymbol x_n; \boldsymbol \mu_k,  \boldsymbol \Sigma_k)}{\Sigma_{j=1}^K \pi_j N(\boldsymbol x_n; \boldsymbol \mu_j,  \boldsymbol \Sigma_j)} + \lambda

我們發(fā)現(xiàn)其中:\frac{N(\boldsymbol x_n; \boldsymbol \mu_k,  \boldsymbol \Sigma_k)}{\Sigma_{j=1}^K \pi_j N(\boldsymbol x_n; \boldsymbol \mu_j,  \boldsymbol \Sigma_j)}\gamma(z_{nk})只相差一個\pi_k似舵,令\frac{\partial \boldsymbol L}{\partial \pi_k} = 0,并在等式兩邊同乘以\pi_k得:

\begin{aligned} &\sum_{n=1}^N \frac{\pi_k N(\boldsymbol x_n; \boldsymbol \mu_k,  \boldsymbol \Sigma_k)}{\sum_{j=1}^K \pi_j N(\boldsymbol x_n; \boldsymbol \mu_j,  \boldsymbol \Sigma_j)} = -\lambda \pi_k  &&k=1,\cdots ,K \\&\iff \\ &\sum_{n=1}^N \gamma(z_{nk}) = -\lambda \pi_k  && k=1,\cdots ,K \ \ \ \ \ (11)  \\&\iff \\ &\sum_{k=1}^K \sum_{n=1}^N \gamma(z_{nk}) = -\sum_{k=1}^K \lambda \pi_k \\&\iff \\ &\sum_{n=1}^N \left( \sum_{k=1}^K \gamma(z_{nk})\right ) = - \lambda  \sum_{k=1}^K\pi_k \\&\iff \\&\lambda = -\sum_{n=1}^N 1 = -N\end{aligned}

現(xiàn)在葱峡,對一個特定的k砚哗,將\lambda = -N代入(11)式,得:\pi_k = \frac{\sum_{n=1}^N \gamma(z_{nk})}{N} \ \ ;\ k=1,\cdots,K


EM過程

由于無法閉式求解砰奕,可以用EM算法來迭代式地拉高數(shù)據(jù)在模型參數(shù)上的似然蛛芥,抄一抄書本上的算法,加深一下印象:

1. 初始化GMM所有分支的均值向量\boldsymbol \mu_k军援、協(xié)方差矩陣\boldsymbol \Sigma_k仅淑,以及各分支的混合系數(shù)\pi_k;

2. E Step: 固定當前模型參數(shù),計算\gamma(z_{nk})胸哥,即書上所說的分支k要為解釋數(shù)據(jù)\boldsymbol x_n承擔(dān)的那部分責(zé)任涯竟,即后驗概率分布:

\gamma(z_{nk}) = \frac{\pi_k N(\boldsymbol x_n; \boldsymbol \mu_k,  \boldsymbol \Sigma_k)}{\sum_{j=1}^K \pi_j N(\boldsymbol x_n; \boldsymbol \mu_j,  \boldsymbol \Sigma_j)} \ ;\ \ k=1,\cdots,K \ ; \ \ n=1,\cdots,N

3. M Step: 利用當前的后驗概率分布,重新估計模型的所有參數(shù):

\boldsymbol \mu_k^{\rm new} = \frac{\sum_{n=1}^N\gamma(z_{nk})  \boldsymbol x_n}{\sum_{n=1}^{N}\gamma(z_{nk})} \ ;\ k=1,\cdots,K

\boldsymbol \Sigma_k^{\rm new} = \frac{\sum_{n=1}^N \gamma(z_{nk}) (\boldsymbol x_n- \boldsymbol \mu_k^{\rm new})(\boldsymbol x_n-\boldsymbol \mu_k^{\rm new})^T}{\sum_{n=1}^N \gamma(z_{nk})} \  ;\ k=1,\cdots,K

\pi_k^{\rm new} = \frac{\sum_{n=1}^N \gamma(z_{nk})}{N} \ \ ;\ k=1,\cdots,K

4. 計算對數(shù)似然:

\ln p(X; \boldsymbol {\pi,\mu,\Sigma}) = \sum_{i=1}^N \ln \left\{ \sum_{k=1}^K \pi_k N(\boldsymbol x_i; \boldsymbol {\mu_k,\Sigma_k}) \right\}

檢查參數(shù)或者對數(shù)似然值是否已經(jīng)達到收斂條件空厌;若否庐船,返回第2步,繼續(xù)訓(xùn)練嘲更。


參考:《PRML》

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末筐钟,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子赋朦,更是在濱河造成了極大的恐慌篓冲,老刑警劉巖李破,帶你破解...
    沈念sama閱讀 216,544評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異壹将,居然都是意外死亡嗤攻,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評論 3 392
  • 文/潘曉璐 我一進店門诽俯,熙熙樓的掌柜王于貴愁眉苦臉地迎上來屯曹,“玉大人,你說我怎么就攤上這事惊畏。” “怎么了密任?”我有些...
    開封第一講書人閱讀 162,764評論 0 353
  • 文/不壞的土叔 我叫張陵颜启,是天一觀的道長。 經(jīng)常有香客問我浪讳,道長缰盏,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,193評論 1 292
  • 正文 為了忘掉前任淹遵,我火速辦了婚禮口猜,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘透揣。我一直安慰自己济炎,他們只是感情好,可當我...
    茶點故事閱讀 67,216評論 6 388
  • 文/花漫 我一把揭開白布辐真。 她就那樣靜靜地躺著须尚,像睡著了一般。 火紅的嫁衣襯著肌膚如雪侍咱。 梳的紋絲不亂的頭發(fā)上耐床,一...
    開封第一講書人閱讀 51,182評論 1 299
  • 那天,我揣著相機與錄音楔脯,去河邊找鬼撩轰。 笑死,一個胖子當著我的面吹牛昧廷,可吹牛的內(nèi)容都是我干的堪嫂。 我是一名探鬼主播,決...
    沈念sama閱讀 40,063評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼麸粮,長吁一口氣:“原來是場噩夢啊……” “哼溉苛!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起弄诲,我...
    開封第一講書人閱讀 38,917評論 0 274
  • 序言:老撾萬榮一對情侶失蹤愚战,失蹤者是張志新(化名)和其女友劉穎娇唯,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體寂玲,經(jīng)...
    沈念sama閱讀 45,329評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡塔插,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,543評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了拓哟。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片想许。...
    茶點故事閱讀 39,722評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖断序,靈堂內(nèi)的尸體忽然破棺而出流纹,到底是詐尸還是另有隱情,我是刑警寧澤违诗,帶...
    沈念sama閱讀 35,425評論 5 343
  • 正文 年R本政府宣布漱凝,位于F島的核電站,受9級特大地震影響诸迟,放射性物質(zhì)發(fā)生泄漏茸炒。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,019評論 3 326
  • 文/蒙蒙 一阵苇、第九天 我趴在偏房一處隱蔽的房頂上張望壁公。 院中可真熱鬧,春花似錦绅项、人聲如沸紊册。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽湿硝。三九已至,卻和暖如春润努,著一層夾襖步出監(jiān)牢的瞬間关斜,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評論 1 269
  • 我被黑心中介騙來泰國打工铺浇, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留痢畜,地道東北人。 一個月前我還...
    沈念sama閱讀 47,729評論 2 368
  • 正文 我出身青樓鳍侣,卻偏偏與公主長得像丁稀,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子倚聚,可洞房花燭夜當晚...
    茶點故事閱讀 44,614評論 2 353

推薦閱讀更多精彩內(nèi)容