使用 hmmlearn 进行模型预测时出错
Error in model prediction using hmmlearn
嗨,我有一个数据帧测试,我正在尝试使用带有 hmmlearn 的高斯 HMM 进行预测。
当我这样做时:
y = model.predict(test)
y
我得到了嗯嗯工作正常生产和状态数组
但是如果我这样做:
for i in range(0,len(test)):
y = model.predict(test[:i])
我得到的只是将 y 设置为 1。
有人能帮忙吗?
更新
这是迭代工作的代码
训练集为 0-249:
for i in range(251,len(X)):
test = X[:i]
y = model.predict(test)
print(y[len(y)-1])
HMM 对观察序列建模。如果您将单个观察值输入 predict
(默认情况下 Viterbi decoding),您实际上会将预测减少到 argmax
超过
(model.startprob_ * model.predict_proba(test[i:i + 1])).argmax()
可以被startprob_
支配,例如如果 startprob = [10**-8, 1 - 10**-8]
。这可以解释您所看到的全一行为。
嗨,我有一个数据帧测试,我正在尝试使用带有 hmmlearn 的高斯 HMM 进行预测。
当我这样做时:
y = model.predict(test)
y
我得到了嗯嗯工作正常生产和状态数组
但是如果我这样做:
for i in range(0,len(test)):
y = model.predict(test[:i])
我得到的只是将 y 设置为 1。
有人能帮忙吗?
更新
这是迭代工作的代码
训练集为 0-249:
for i in range(251,len(X)):
test = X[:i]
y = model.predict(test)
print(y[len(y)-1])
HMM 对观察序列建模。如果您将单个观察值输入 predict
(默认情况下 Viterbi decoding),您实际上会将预测减少到 argmax
超过
(model.startprob_ * model.predict_proba(test[i:i + 1])).argmax()
可以被startprob_
支配,例如如果 startprob = [10**-8, 1 - 10**-8]
。这可以解释您所看到的全一行为。