1樓:Aubrey Li
第乙個問題已經回答得比較清楚了,我來回答第二個問題。
首先說明下hmmlearn的狀況,hmmlearn裡面的協方差矩陣的型別只應用於Gaussian和GMM模型,目前0.2.0版本裡面GMM模型的非diag型別還有問題,所以拿Gaussian模型來解釋這四種型別(引用愛丁堡大學課件裡面的三張圖):
spherical- 是指在每個馬爾可夫隱含狀態下,可觀察態向量的所有特性分量使用相同的方差值。
對應協方差矩陣的非對角為0,對角值相等,即球面特性。這是最簡單的高斯分布PDF。
diag- 是指在每個馬爾可夫隱含狀態下,可觀察態向量使用對角協方差矩陣。
對應協方差矩陣非對角為0,對角值不相等。diag是hmmlearn裡面的預設型別。
full- 是指在每個馬爾可夫隱含狀態下,可觀察態向量使用完全協方差矩陣。
對應的協方差矩陣裡面的元素都是不為零。
tied- 是指所有的馬爾可夫隱含狀態使用相同的完全協方差矩陣。
這四種PDF型別裡面,spherical, diag和full代表三種不同的高斯分布概率密度函式,而tied則可以看作是GaussianHMM和GMMHMM的特有實現。其中,full是最強大的,但是需要足夠多的資料來做合理的引數估計;spherical是最簡單的,通常用在資料不足或者硬體平台效能有限的情況之下;而diag則是這兩者乙個折中。在使用的時候,需要根據可觀察態向量不同特性的相關性來選擇合適的型別。
2樓:OrangeMoon
hmmlearn這個庫有三種模型,分別是Gaussian,Multinomial和GMMHMM。這三種模型對應的就是三種emission matrix(即混淆矩陣,也就是隱狀態到觀察態的概率)。Gaussian就是說混淆矩陣是乙個高斯分布,即觀察態是連續的。
Multinomiual就是說混淆矩陣事乙個Multibimiual distribution,即觀察態勢離散的。GMMHMM則是說混淆矩陣是遵循gaussinan mixture 分布,也是連續的。
題主問如何把混淆矩陣輸入到模型裡面。首先你要確定你的混淆矩陣的型別。對於Gaussian型別,就是把你希望的 mean和variance值放到模型裡面。
我就直接把文件裡面的例子搬過來,例子裡是建立了乙個高斯分布的隱馬爾科夫模型。
>>>import
numpy
asnp
>>>from
hmmlearn
import
hmm#乙個隱馬爾科夫模型由(p向量,狀態轉移矩陣,混淆矩陣)來定義。
>>>startprob=np
.array
([0.6
,0.3
,0.1
])# 定義初始狀態的概率
>>>transmat=np
.array
([[0.7
,0.2
,0.1],[
0.3,
0.5,
0.2],
[0.3
,0.3
,0.4
]])#定義轉移矩陣的概率
>>>means=np
.array
([[0.0
,0.0],[
3.0,
-3.0],[
5.0,
10.0
]])#定義混淆矩陣的均值
>>>covars=np
.tile(np
.identity(2
),(3,
1,1))
# 定義混淆矩陣的方差
>>>model
=hmm
.GaussianHMM(3
,"full"
,startprob
,transmat
)# 定義乙個混淆矩陣為高斯分布的隱馬爾科夫模型。 這裡『full』的意思就是說你輸入的方差矩陣每個元素都給出了,不是乙個只是對角線上的元素為0的矩陣
>>>model
.means_
=means
>>>model
.covars_
=covars
#把你希望的均值方差輸入你定義的模型裡面,到此你就把混淆矩陣輸入進模型了
>>>X,
Z=model
.sample
(100
)對於Multinomial 和 GMM,我還沒用,不過Multinomial應該是需要你自己手動輸入隱狀態到觀察態的概率的,而GMM應該是和Gaussian型別類似,只是需要多輸入乙個權重因子。
對於第二個問題,covariance_type意思是你的混淆矩陣的covariance matrix是什麼型別,比如若只是對角線上的元素不為0,則把covariance_type設為『diag』。
中建三局裝飾 中建華鼎裝飾 中建海外裝飾 中建中裝哪個好?
給點進這個答案的提個醒,千萬別去中建裝飾西北公司,人力招聘乙個字都不能信,基本工資2800,所有補貼加完扣完五險一金到手3200,飯都吃不起。一年招聘的不如乙個月辭職的,極度缺人,專案上乙個人當五個人用,重傷不下火線,365天無休毫不誇張。 bmtjht 先拋答案,中建三局裝飾,現在叫中建深圳裝飾,...
中醫中的虛實錯雜中的虛中夾實和實中夾虛的區別是什麼。(請通俗易懂的說明)?
貓眼 虛中夾實和實中夾虛,分別代表的是這個病的本質是什麼。虛中夾實,本質上是虛證,但是很可能同時就夾著食積,痰溼,水飲,瘀血等實證。實中夾虛,本質是實證,比如實熱證,因為傷陰,往往都夾著陰虛的情況。 朵朵今天也要加油 其實我覺得125的教材寫的還挺清楚的 從我粗淺的理解 兩者的關聯是可以相互轉化 兩...
C 中 類的vector容器中如何通過類中的成員來查詢到含這個成員的類?不一定只有乙個類含該元素?
黃亮anthony 題目很模糊,不確認題目的含義是否如此,我還是寫個答案吧,如果題主看到,請修改一下問題。成員找自己的類是指這樣的情況 struct A A some 10 int pa some 2 a A pA A char pa offsetof A,a offsetof的原理大體為這樣 ch...