continuoushmm.py
来自「General Hidden Markov Model Library 一个通用」· Python 代码 · 共 46 行
PY
46 行
import ghmm# example code for a continuous HMM with gaussian emissionsF = ghmm.Float() # emission domain of this modelA = [[0.0,1.0,0],[0.5,0.0,0.5],[0.3,0.3,0.4]] # transition matrixB = [[0.0,1.0],[-1.0,0.5], [1.0,0.2]] # parameters of emission distributions in pairs of (mu, sigma)pi = [1.0,0.0,0.0] # initial probabilities per state# generate model from parametersmodel = ghmm.HMMFromMatrices(F,ghmm.GaussianDistribution(F), A, B, pi)# modify model parametersp = model.getInitial(2)model.setInitial(2,0.5)model.setInitial(0,0.5) # re-set transition from state 0 to state 1trans = model.getTransition(0,1)model.setTransition(0,1,0.6)# re-setting emission of state 1model.setEmission(1,[5.0,0.6]) # re-normalize model parametersmodel.normalize()print model# sample single sequence of length 50seq = model.sampleSingle(50)# sample 10 sequences of length 50seq_set = model.sample(10,50)# get log P(seq | model)logp = model.loglikelihood(seq)# cacluate viterbi path path = model.viterbi(seq)# train model parametersmodel.baumWelch(seq_set,5,0.01)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?