hmmlearn
在给定开始概率、转移概率和发射概率的情况下,我正在尝试从隐马尔可夫模型中获取最可能的隐藏状态序列。
我有两个隐藏状态和四个可能的发射值,所以我这样做:
num_states = 2
num_observations = 4
start_probs = np.array([0.2, 0.8])
trans_probs = np.array([[0.75, 0.25], [0.1, 0.9]])
emission_probs = np.array([[0.3, 0.2, 0.2, 0.3], [0.3, 0.3, 0.3, 0.1]])
model = hmm.MultinomialHMM(n_components=num_states)
model.startprob_ = start_probs
model.transmat_ = trans_probs
model.emissionprob_ = emission_probs
seq = np.array([[3, 3, 2, 2]]).T
model.fit(seq)
log_prob, state_seq = model.decode(seq)
我的堆栈跟踪指向decode
调用并抛出此错误:
ValueError: too many values to unpack (expected 2)
我认为decode
(查看文档)返回对数概率和状态序列,所以我很困惑。
任何想法?
谢谢!