使用hmmlearn进行模型预测时出错

时间:2016-09-08 10:45:11

标签: python pandas numpy hmmlearn

您好我有一个数据帧测试,我正在尝试使用带有hmmlearn的高斯HMM进行预测。

当我这样做时:

uint8_t array[8];
//...Fill it up...

uint32_t *ptr = NULL;
ptr = (uint32_t*)&array[0];
*ptr = 12345;

ptr = (uint32_t*)&array[4];
*ptr = 54321;

我得到了嗯工作正常生产和状态数组

但是,如果我这样做:

y = model.predict(test) 
y

我得到的是y被设置为1。

有人可以帮忙吗?

更新

这里的代码可以通过

进行迭代

训练集为0-249:

for i in range(0,len(test)):
    y = model.predict(test[:i])

1 个答案:

答案 0 :(得分:1)

HMM模拟观察序列。如果您将单个观察结果输入predict(默认情况下为Viterbi decoding),则基本上将预测减少到argmax

(model.startprob_ * model.predict_proba(test[i:i + 1])).argmax()

可以由startprob_支配,例如如果startprob = [10**-8, 1 - 10**-8]。这可以解释您所看到的所有行为。