日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

em算法怎么对应原有分类_[PRML]序列数据 HMM维特比算法及扩展

發(fā)布時間:2024/4/18 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 em算法怎么对应原有分类_[PRML]序列数据 HMM维特比算法及扩展 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

序列數(shù)據(jù)相關(guān)文章:1、馬爾可夫模型2、隱馬爾可夫模型簡介3、HMM最大似然4、HMM前向后向算法5、HMM和積算法與尺度因子

1 維特比算法

在隱馬爾可夫模型的許多應(yīng)用中,潛變量有一些有意義的解釋,因此對一個給定的觀察序列尋找最可能的隱狀態(tài)序列往往是有趣的。例如,在語音識別中,我們可能希望為給定的一系列聲學(xué)(acoustic)觀察找到最可能的音素(phoneme)序列。由于隱馬爾可夫模型的圖是一個有向樹,這個問題可以用最大和算法(max-sum algorithm)精確地解決。

尋找最可能的潛在狀態(tài)序列的問題與尋找個別最可能的狀態(tài)集的問題是不同的。后一個問題可以通過先運(yùn)行前向后向(和積)算法來找到潛在變量的邊際,然后分別最大化每個邊緣值來解決。但是,這些狀態(tài)的集合通常不符合最可能的狀態(tài)序列。事實(shí)上,這組狀態(tài)甚至可以表示一個概率為零的序列,例如有兩個連續(xù)的狀態(tài),它們各自的概率最大,但連接它們的轉(zhuǎn)移矩陣元素為零。

在實(shí)踐中,我們通常對尋找最有可能的狀態(tài)序列感興趣,而這可以使用最大和算法有效地解決,在隱馬爾可夫模型中稱為維特比算法(Viterbi algorithm)。請注意,最大和算法適用于對數(shù)概率,因此不需要像前向后向算法那樣使用縮放后的變量。

圖16顯示了擴(kuò)展為格圖的隱馬爾可夫模型的一個片段。正如我們已經(jīng)注意到的,通過網(wǎng)格的可能路徑的數(shù)量隨著鏈的長度呈指數(shù)增長。維特比算法有效地搜索這個路徑空間,以找到計算代價僅隨鏈長線性增長的最有可能的路徑。

和和積算法一樣,我們首先將隱馬爾可夫模型表示為一個因子圖,如圖15 所示。同樣,我們將變量節(jié)點(diǎn)視為根節(jié)點(diǎn),并從葉節(jié)點(diǎn)開始向根傳遞消息。使用結(jié)果式93和式94,我們看到在最大和算法中傳遞的消息為:

如果消除兩個方程間的,并結(jié)合式46,則得到信息的遞歸形式:

其中。

根據(jù)式95和式96,對這些消息初始化:

式中運(yùn)用了式45。為了保持符號的整潔,我們省略了對模型參數(shù)的依賴,其在尋找最可能的序列時保持固定。

Viterbi算法也可以直接從聯(lián)合分布的定義式6中得到,取對數(shù),然后交換最大值以及和。很容易看出數(shù)量的概率解釋:

一旦我們完成了對的最后的最大化,我們就可以得到最可能路徑對應(yīng)的聯(lián)合分布的值。我們還希望找到與此路徑對應(yīng)的潛在變量序列值。為此,我們只需使用該文中討論的回溯過程。

我們注意到必須對的個可能值中的每一個對進(jìn)行最大化。假設(shè)我們記錄的值,對應(yīng)每個的值的最大值。讓我們用表示這個函數(shù),其中。一旦我們將消息傳遞到鏈的末端并找到最可能的狀態(tài),我們就可以使用這個函數(shù)遞歸地應(yīng)用它來沿著鏈回溯:

實(shí)際上,我們可以這樣理解維特比算法。我們可以明確地考慮所有通過格子的指數(shù)路徑,計算每個路徑的概率,然后選擇概率最大的路徑。我們可以在計算成本上做出如下的巨大節(jié)省。假設(shè)對于每條路徑,當(dāng)沿著每條路徑經(jīng)過晶格時,我們通過加和轉(zhuǎn)移概率和發(fā)射概率的乘積計算它的概率。

考慮一個特定的時間步長和一個特定的狀態(tài)。

  • 在格點(diǎn)圖中,會有許多可能的路徑匯聚在相應(yīng)的節(jié)點(diǎn)上。但是,我們只需要保留到目前為止概率最大的那條路徑。因為在時間步長處有種狀態(tài),我們需要跟蹤條這樣的路徑。
  • 在時間步長時,有條可能的路徑需要考慮,包括條可能的路徑從種當(dāng)前狀態(tài)出發(fā),但是我們只需要保留條對應(yīng)于時間時每種狀態(tài)的最佳路徑。
  • 當(dāng)我們到達(dá)最后的時間步長時,我們將發(fā)現(xiàn)哪個狀態(tài)對應(yīng)于整個最有可能的路徑。因為有一條唯一的路徑進(jìn)入那個狀態(tài)我們可以沿著這條路徑回到第步來看看它當(dāng)時處于什么狀態(tài),然后再回到晶格的狀態(tài)。

2 隱馬爾可夫模型的擴(kuò)展

基本的隱馬爾可夫模型,以及基于最大似然的標(biāo)準(zhǔn)訓(xùn)練算法,已經(jīng)以多種方式進(jìn)行了擴(kuò)展,以滿足特定應(yīng)用的要求。這里我們討論幾個更重要的例子。

圖11的數(shù)字示例中我們可以看出,隱馬爾科夫模型對于數(shù)據(jù)來說可能是相當(dāng)差的生成模型,因為許多合成的數(shù)字看起來不太能代表訓(xùn)練數(shù)據(jù)。如果目標(biāo)是序列分類,使用判別技術(shù)而不是最大似然技術(shù)來確定隱馬爾科夫模型的參數(shù)會有顯著的好處。

假設(shè)我們有一個觀測序列的訓(xùn)練集,其中,每一個都按其類標(biāo)記,其中。對于每一類,我們都有一個獨(dú)立的隱含馬爾科夫模型,它有自己的參數(shù),我們將確定參數(shù)值的問題作為一個標(biāo)準(zhǔn)的分類問題來處理,在這個問題中我們優(yōu)化交叉熵:

利用貝葉斯定理,這可以用與隱馬爾可夫模型相關(guān)的序列概率來表示:

其中是類別的先驗概率。這個損失函數(shù)的優(yōu)化比最大似然要復(fù)雜,尤其為了計算式73的分母,需要在每個模型下評估每個訓(xùn)練序列。隱馬爾科夫模型耦合判別訓(xùn)練方法,被廣泛的應(yīng)用于語音識別。

HMM的重要弱點(diǎn)是系統(tǒng)保持在給定狀態(tài)下的時間分布的表達(dá)方式。為了了解這個問題,從給定的HMM中采樣的序列在狀態(tài)中精確地花費(fèi)了步,然后轉(zhuǎn)換到另一種狀態(tài)的概率為:

的指數(shù)衰減函數(shù)也是如此。

對于許多應(yīng)用程序,這將是一個非常不現(xiàn)實(shí)的狀態(tài)持續(xù)時間模型。該問題可以通過直接對狀態(tài)持續(xù)時間建模來解決,其中對角系數(shù)都被設(shè)為零,并且每個狀態(tài)都明確地與可能持續(xù)時間的概率分布相關(guān)。

從生成的角度來看,當(dāng)進(jìn)入狀態(tài)時,從中提取一個表示系統(tǒng)將保持在狀態(tài)的時間步長的值。然后,模型釋放觀測變量的值,一般假設(shè)這兩個值是獨(dú)立的,因此對應(yīng)的發(fā)射密度為。這種方法需要EM優(yōu)化過程進(jìn)行一些直接的修改。

標(biāo)準(zhǔn)的HMM的另一個限制是,它在捕捉觀測變量之間的長期相關(guān)性(即被許多時間步分開的變量之間)方面很差,因為這些必須通過一階隱狀態(tài)馬爾科夫鏈來調(diào)節(jié)。通過對圖5 的圖模型添加額外的鏈接,原則上可以包含更長期的效果。解決這個問題的一種方法是推廣HMM,從而得到自回歸隱馬爾可夫模型,圖17顯示了該模型的一個例子。

對于離散觀測,這對應(yīng)于發(fā)射分布的條件概率的擴(kuò)展表。在高斯發(fā)射密度的情況下,我們可以使用線性高斯框架,其中在給定前面觀測下的和的條件分布是一個高斯分布,其均值是條件變量值的線性組合。顯然,必須限制圖中附加鏈接的數(shù)量,以避免自由參數(shù)的數(shù)量過多。

圖17所示的示例中,每個觀察依賴于前面兩個觀察到的變量以及隱狀態(tài)。雖然這個圖看起來很亂,但我們可以再次應(yīng)用來發(fā)現(xiàn)它實(shí)際上仍然有一個簡單的概率結(jié)構(gòu)。

如果我們以為條件,我們會發(fā)現(xiàn),與標(biāo)準(zhǔn)HMM一樣,和的值是獨(dú)立的,對應(yīng)于條件獨(dú)立性屬性式5。從節(jié)點(diǎn)到節(jié)點(diǎn)的每條路徑都經(jīng)過至少一個相對于該路徑頭尾相接的觀察節(jié)點(diǎn),這很容易驗證。

因此,我們可以再次在EM算法的步中使用前向后向遞歸來確定潛在變量在計算時間內(nèi)的后驗分布,計算時間在鏈的長度上是線性的。類似地,步只涉及標(biāo)準(zhǔn)步方程的微小修改。在高斯發(fā)射密度的情況下,這涉及估計參數(shù)使用標(biāo)準(zhǔn)線性回歸方程。

我們已經(jīng)看到自回歸HMM是標(biāo)準(zhǔn)HMM的自然擴(kuò)展,當(dāng)把它看作圖模型的時候。事實(shí)上,基于HMM的概率圖形建模觀點(diǎn)激發(fā)了大量不同的圖形結(jié)構(gòu)。另一個例子是input-output HMM,模型中我們有一個觀測變量序列,除了輸出變量,其值要么影響潛在變量或輸出變量的分布,要么同時影響二者。

圖18顯示了一個示例。這就把HMM框架擴(kuò)展到了有序數(shù)據(jù)的監(jiān)督學(xué)習(xí)領(lǐng)域。通過判據(jù)的使用,我們再次很容易地證明潛變量鏈的馬爾科夫性質(zhì)式5仍然成立。

為了驗證這一點(diǎn),只需注意從節(jié)點(diǎn)到節(jié)點(diǎn)只有一條路徑,這是相對于觀察到的節(jié)點(diǎn)的頭到尾路徑。這個條件獨(dú)立性再次允許有效率地計算學(xué)習(xí)算法的公式。我們可以通過最大化似然函數(shù)來確定模型的參數(shù),其中是行由給出的矩陣。作為條件獨(dú)立性的結(jié)果式5,這個似然函數(shù)可以通過EM算法高效地最大化,其中E步包含前向和后向遞歸。

另一個變體是階乘(factorial)隱馬爾可夫模型,有多個獨(dú)立的馬爾可夫鏈的潛在變量,和觀察變量的分布在給定的時間步長是以同樣時間步長所有對應(yīng)的潛在變量為條件的。

圖19顯示了相應(yīng)的圖模型。考慮階乘HMM的動機(jī)可以看出,為了在給定的時間步長表示10位信息,一個標(biāo)準(zhǔn)的HMM需要個潛態(tài),而一個階乘HMM可以利用10個二進(jìn)制潛鏈(latent chains)。然而,階乘HMMs的主要缺點(diǎn)在于訓(xùn)練它們的額外復(fù)雜性。

階乘HMM模型的M步很簡單。然而,對變量的觀察引入了潛在鏈之間的依賴關(guān)系,導(dǎo)致E步困難。可以看出,在圖19中,變量和在節(jié)點(diǎn)處通過一條頭對頭的路徑連接,因此它們并沒有。該模型的確切E步并不對應(yīng)于沿著馬爾科夫鏈獨(dú)立地運(yùn)行前向和后向遞歸。

圖20中使用所示,在階乘HMM模型中,單個馬爾可夫鏈并不滿足關(guān)鍵條件獨(dú)立性式5,這一點(diǎn)得到了證實(shí)。現(xiàn)在假設(shè)有個隱含節(jié)點(diǎn)鏈,為了簡單起見,假設(shè)所有潛在變量都有相同數(shù)量的個狀態(tài)。然后一種方法是在一個給定的時間步長有個組合的潛在變量,因此我們可以將模型轉(zhuǎn)換成一個等價的具有一個潛在變量鏈的標(biāo)準(zhǔn)隱馬爾科夫模型,每個潛在變量都有種潛在狀態(tài)。

然后我們可以在E步驟中運(yùn)行標(biāo)準(zhǔn)的前向后向遞歸。這種方法的計算復(fù)雜度為,它是個潛在鏈的指數(shù)形式,因此除了的小值之外,對于其他任何值都是難以處理的。一種解決方法是使用抽樣方法

作為一種優(yōu)雅的確定性選擇,Ghahramani和Jordan(1997)利用變分推理技術(shù)來獲得一種可處理的近似推理算法。這可以使用一個簡單的變分后向分布,充分因式分解潛變量,或者使用一種更強(qiáng)大的方法,用獨(dú)立的馬爾科夫鏈來描述變分分布,與原始模型中的潛變量鏈相對應(yīng)。在后一種情況下,變分推理算法包括沿著每條鏈運(yùn)行獨(dú)立的前向和后向遞歸,這在計算上是有效的,但也能夠捕獲同一鏈內(nèi)變量之間的相關(guān)性。

顯然,有許多可能的概率結(jié)構(gòu)可以根據(jù)特定應(yīng)用程序的需要構(gòu)建。圖形化模型為激發(fā)、描述和分析這樣的結(jié)構(gòu)提供了一種通用的技術(shù),而變分方法為在那些模型中執(zhí)行推理提供了一個強(qiáng)大的框架,對于這些模型,精確的解決方案是難以解決的。

總結(jié)

以上是生活随笔為你收集整理的em算法怎么对应原有分类_[PRML]序列数据 HMM维特比算法及扩展的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。