pythontile
『壹』 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、還有兩個可勾選選項分別是「無序播放」和「使用電池時是否暫停」,你可根據個人喜好自己設置