0

こんにちは、データフレーム テストがあります。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])
4

1 に答える 1

1

HMM は一連の観測をモデル化します。単一の観測値をpredict(デフォルトでビタビ復号化argmaxを行う) にフィードすると、基本的に予測をオーバーに減らします。

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

startprob_if などによって支配される可能性がありますstartprob = [10**-8, 1 - 10**-8]。これは、あなたが見ているオールワンの振る舞いを説明するかもしれません.

于 2016-09-09T06:57:37.257 に答える