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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

李航-HMM-直接计算法

發(fā)布時間:2023/12/20 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 李航-HMM-直接计算法 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

第10章,隱馬爾可夫模型(相關(guān)的python開源包是hmmlearn)
本章結(jié)構(gòu):

隱馬爾可夫模型相關(guān)內(nèi)容={概率計算方法={直接計算法(計算量過大)前向算法后向算法學(xué)習(xí)算法={監(jiān)督學(xué)習(xí)方法Bsum?Welch算法預(yù)測算法={近似算法維特比算法隱馬爾可夫模型相關(guān)內(nèi)容=\left\{ \begin{aligned} {概率計算方法=\left\{ \begin{aligned} 直接計算法(計算量過大) \\ 前向算法 \\ 后向算法 \end{aligned} \right.} \\ {學(xué)習(xí)算法=\left\{ \begin{aligned} 監(jiān)督學(xué)習(xí)方法 \\ Bsum-Welch算法\\ \end{aligned} \right.} \\ {預(yù)測算法=\left\{ \begin{aligned} 近似算法 \\ 維特比算法 \\ \end{aligned} \right.} \end{aligned} \right.關(guān)內(nèi)=??????????????????????????????=??????()?學(xué)習(xí)={監(jiān)學(xué)習(xí)Bsum?Welch?預(yù)={??

上述的三個小括號分別用來解決隱馬爾科夫模型的三個問題:
(1)概率計算問題
(2)學(xué)習(xí)問題
(3)預(yù)測問題

書上的例子為:

|盒子|1 | 2 |3|4|
|–|--|–|--|
|紅球數(shù)| 5 | 3 | 6 |8|
|白球數(shù)| 5 | 7 | 4 |2|
狀態(tài)集合:
Q={盒子1,盒子2,盒子3,盒子4}

觀測集合:
V={紅,白}

初始概率分布π\(zhòng)piπ=(0.25,0.25,0.25,0.25)T(0.25,0.25,0.25,0.25)^T(0.25,0.25,0.25,0.25)T

狀態(tài)轉(zhuǎn)移概率分布:

A=[01000.400.6000.400.6000.50.5]A= \begin{bmatrix} 0 & 1 & 0&0 \\ 0.4 & 0 & 0.6&0 \\ 0&0.4&0&0.6\\ 0&0&0.5&0.5 \end{bmatrix} A=?????00.400?100.40?00.600.5?000.60.5??????

觀測概率:
B=[0.50.50.30.70.60.40.80.2]B= \begin{bmatrix} 0.5 & 0.5\\ 0.3 & 0.7 \\ 0.6&0.4\\ 0.8&0.2 \end{bmatrix} B=?????0.50.30.60.8?0.50.70.40.2??????
觀測概率矩陣第一列的意思就是每個盒子能觀察到多少紅色球.

#概率計算問題

10.2.1直接計算法

模型λ=(A,B,π)\lambda=(A,B,\pi)λ=(A,B,π)
"想要的"的觀測序列:O=(o1,o2,???,oT)O=(o_1,o_2,···,o_T)O=(o1?,o2?,???,oT?)
根據(jù)模型判斷上述觀測序列出現(xiàn)的概率P(O∣λ)P(O|\lambda)P(Oλ)

P(I∣λ)=πi1?αi1i2?αi2i3???αiT?1iTP(I|\lambda)=\pi_{i_1}·\alpha_{i_1i_2}·\alpha_{i_2i_3}···\alpha_{i_{T-1}i_T}P(Iλ)=πi1???αi1?i2???αi2?i3?????αiT?1?iT??
這里的πi1\pi_{i_1}πi1??指的是你在"初始概率分布π\(zhòng)piπ"序列中的第i1i_1i1?個狀態(tài).

####然后是書上原話(start)#####################
對于固定的狀態(tài)序列I=(i1,i2,???,iT)I=(i_1,i_2,···,i_T)I=(i1?,i2?,???,iT?),觀測序列O=(o1,o2,???,oT)O=(o_1,o_2,···,o_T)O=(o1?,o2?,???,oT?)的概率是
P(O∣I,λ)=bi1(o1)bi2(o2)???biT(oT)P(O|I,\lambda)=b_{i_1}(o_1)b_{i_2}(o_2)···b_{i_T}(o_T)P(OI,λ)=bi1??(o1?)bi2??(o2?)???biT??(oT?)

這個說法很拗口,這個"固定的狀態(tài)序列"是啥意思?
也就是說整個隱馬爾科夫轉(zhuǎn)移過程還沒發(fā)生,自己YY了一個狀態(tài)轉(zhuǎn)移序列,想知道這種序列發(fā)生的可能性.

上面提到的"觀測序列"的意思是:我想要的"這個盒子之間跳轉(zhuǎn)來、跳轉(zhuǎn)去的序列I"輸入這個模型λ\lambdaλ以后,出來我想要的"球顏色序列O"的概率多大
這里的I:input
這里的O:output
#######然后是書上原話(end)###################

O和I同時出現(xiàn)的聯(lián)合概率是:
P(O,I∣λ)P(O,I|\lambda)P(O,Iλ)
=P(O∣I,λ)?P(I∣λ)=P(O|I,\lambda)·P(I|\lambda)=P(OI,λ)?P(Iλ)
=πi1bi1(o1)ai1i2?bi2(o2)???aiT?1iTbiT(oT)=\pi_{i_1}b_{i_1}(o_1)a_{i_1i_2}·b_{i_2}(o_2)···a_{i_{T-1}i_T} b_{i_T}(o_T)=πi1??bi1??(o1?)ai1?i2???bi2??(o2?)???aiT?1?iT??biT??(oT?)

因為目標(biāo)是P(O∣λ)P(O|\lambda)P(Oλ)
P(O∣λ)=∑IP(O∣I,λ)P(I∣λ)P(O|\lambda)=\sum_{I}P(O|I,\lambda)P(I|\lambda)P(Oλ)=I?P(OI,λ)P(Iλ)
=∑i1,i2,???,iTπi1bi1(o1)ai1i2?bi2(o2)???aiT?1iTbiT(oT)=\sum_{i_1,i_2,···,i_T}\pi_{i_1}b_{i_1}(o_1)a_{i_1i_2}·b_{i_2}(o_2)···a_{i_{T-1}i_T} b_{i_T}(o_T)=i1?,i2?,???,iT??πi1??bi1??(o1?)ai1?i2???bi2??(o2?)???aiT?1?iT??biT??(oT?)

上面的東西呢,沒啥用(因為計算復(fù)雜度太高),但是呢,還是要縷清楚,因為這樣就知道這個"概率計算算法"是干嘛的了,也就是說:
給個模型,輸入個序列(盒子狀態(tài)序列),出來想要的序列(球顏色序列)概率是多少.

為了收拾這個爛攤子呢,出來了"前向算法"和"后向算法",注意,這兩個算法和神經(jīng)網(wǎng)絡(luò)中的前向傳輸、后向傳輸沒有任何關(guān)系.

#概率計算問題(完)

總結(jié)

以上是生活随笔為你收集整理的李航-HMM-直接计算法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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