HMM之Baum-Welch算法
注:本文中所有公式和思路來自于鄒博先生的《機(jī)器學(xué)習(xí)升級(jí)版》,我只是為了加深記憶和理解寫的本文。
前面介紹過了HHM模型結(jié)構(gòu)和HMM基本問題中的概率計(jì)算問題,本文介紹HMM基本問題中的參數(shù)學(xué)習(xí)問題。
如果訓(xùn)練數(shù)據(jù)包括觀測序列和狀態(tài)序列,則HMM的學(xué)習(xí)非常簡單,是監(jiān)督學(xué)習(xí),如果只有觀測序列的話,那么HMM的學(xué)習(xí)是需要使用EM算法的,是非監(jiān)督學(xué)習(xí)。
監(jiān)督學(xué)習(xí):
根據(jù)大數(shù)定理(頻率的極限是概率),我們可以輕易的得出下邊的這幾個(gè)結(jié)論:
初始概率:
轉(zhuǎn)移概率:
觀測概率:
上邊給出的上個(gè)結(jié)論可以直接從給定的數(shù)據(jù)中數(shù)出來,沒有任何難度。
非監(jiān)督學(xué)習(xí):
我們回顧一下EM算法的框架吧:
所有的觀測數(shù)據(jù)寫成:O=(o1,o2...oT),所有隱數(shù)據(jù)寫成:I=(i1,i2...iT),完全數(shù)據(jù):(O,I)=(o1,o2..oT,i1,i2...iT),完全數(shù)據(jù)的對(duì)數(shù)似然函數(shù)是:lnP(O,I | λ)
假設(shè)λ~是HMM參數(shù)的當(dāng)前估計(jì)值,λ是待估計(jì)的參數(shù):
我們回顧一下EM的過程:首先需要一個(gè)預(yù)先給定的λ~參數(shù),然后帶入P(I | O, λ~),然后將P(I | O, λ~)帶入Q(λ,λ~)中,對(duì)對(duì)數(shù)似然函數(shù)lnP(O,I | λ)求期望,找到能使似然函數(shù)期望最大的新的λ~,并將新的λ~再次帶回P(I | O, λ~),不斷重復(fù)這個(gè)過程。
我們?cè)谇耙黄恼轮刑岬竭^暴力求解,并得到了最終的求解公式:
Q()函數(shù)可以寫成:
既然是要極大化Q,求得參數(shù)π、A、B
由于這三個(gè)參數(shù)分別在這三個(gè)項(xiàng)中,那么我們就可以分別極大化。
極大化初始概率:
因?yàn)棣衖滿足加和為1,那么我們就可以利用拉格朗日乘子法:
接著對(duì)π求偏導(dǎo):
接著我們可以對(duì)i求和:
最后將γ代回去得:
注意:這個(gè)γ不是超參數(shù)的γ,而是我們之前求過的這么個(gè)小東西:
極大化轉(zhuǎn)移概率和觀測概率:
使用拉格朗日乘子法:
同理可得:
這幾個(gè)結(jié)果就是可以直接寫代碼的,學(xué)習(xí)問題解決了,就剩最后一個(gè)預(yù)測問題了,下一篇文章就會(huì)介紹Viterbi算法。
總結(jié)
以上是生活随笔為你收集整理的HMM之Baum-Welch算法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关于手机的IMEI号问题的一些总结
- 下一篇: 关于在arcgis中导入excel,并在