當前位置:首頁 » 編程語言 » pythontile

pythontile

發布時間: 2024-11-24 00:10:04

『壹』 Python hmmlearn中的混淆矩陣是怎麼表示的

hmmlearn這個庫有三種模型,分別是Gaussian,Multinomial和GMMHMM。這三種模型對應的就是三種emission matrix(即混淆矩陣,也就是隱狀態到觀察態的概率)。Gaussian就是說混淆矩陣是一個高斯分布,即觀察態是連續的。Multinomiual就是說混淆矩陣事一個Multibimiual distribution,即觀察態勢離散的。GMMHMM則是說混淆矩陣是遵循gaussinan mixture 分布,也是連續的。
題主問如何把混淆矩陣輸入到模型裡面。首先你要確定你的混淆矩陣的類型。對於Gaussian類型,就是把你希望的 mean和variance值放到模型裡面。我就直接把文檔裡面的例子搬過來,例子里是建立了一個高斯分布的隱馬爾科夫模型。

>>> import numpy as np
>>> 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』。

『貳』 如何快速切換電腦的桌面壁紙

1、電腦桌面上,右擊桌面,在右擊彈出菜單中點擊「個性化」,在個性化界面中點擊左下角的「桌面背景」

5、還有兩個可勾選選項分別是「無序播放」和「使用電池時是否暫停」,你可根據個人喜好自己設置

熱點內容
圖像檢索演算法 發布:2025-01-10 21:43:58 瀏覽:555
plsqlforupdate 發布:2025-01-10 21:43:50 瀏覽:913
如何設置健康碼快捷方式vivo安卓 發布:2025-01-10 21:39:52 瀏覽:500
安卓不兼容怎麼解決 發布:2025-01-10 21:37:02 瀏覽:29
linux字體大小 發布:2025-01-10 21:36:21 瀏覽:492
安卓手機的音量在哪裡調 發布:2025-01-10 21:32:11 瀏覽:613
路由器怎麼設置登錄密碼怎麼設置密碼 發布:2025-01-10 21:11:12 瀏覽:893
營運車解壓 發布:2025-01-10 21:11:01 瀏覽:932
安卓是哪裡出產 發布:2025-01-10 21:10:23 瀏覽:953
本科來了安卓版叫什麼 發布:2025-01-10 21:08:43 瀏覽:649