問題タブ [hmmlearn]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - "predict()" の代わりに "GaussianHMM.fit()" の後に手で "predict" を計算するにはどうすればよいですか?
私は以下のようにします:
ここで、'x' を予測したいと思います。コードで実行できることはわかっています: hmm.predict(x); しかし、「うーん」のいくつかのパラメーターを見て、手で計算しますか?
単純な例、「X」はベクトル (10000 行、1 列) です。コードを実行した後:
、「いくつかのパラメーター」は次のようにする必要があると思います:
では、どうすればうーんから上に行くことができますか?
python - GaussianHMM でのシーケンスのデコード
株式市場の予測問題で隠れマルコフ モデルをいじっています。私のデータ マトリックスには、特定の証券のさまざまな機能が含まれています。
シンプルな GaussianHMM に適合します。
モデル (λ) を使用すると、観測ベクトルをデコードして、観測ベクトルに対応する最も可能性の高い隠れ状態シーケンスを見つけることができます。
上記で、テスト セットの最初の 5 つのインスタンスを含む観測ベクトル O t = (O 1 , O 2 , ..., O d )の隠れ状態シーケンスをデコードしました。テスト セットの 6 番目のインスタンスの隠れ状態を推定したいと思います。アイデアは、6 番目のインスタンスの可能な特徴値の離散セットを反復処理し、観測シーケンス O t+1を選択することです。argmax = P(O 1 , O 2 , ..., O d+1 | λ )。O d+1の真の特徴値を観察したら、(長さ 5 の) シーケンスを 1 つシフトして、最初からやり直すことができます。
問題は、観測ベクトル O t+1をデコードすると、最も可能性の高い予測がほぼ常に同じになることです (たとえば、最も可能性の高い推定は常に[ 0.04 0.04 0.04] に等しいO d+1の特徴値を持ち、は非表示状態 [0]):
の目的を誤解してmdl.decode
いて、間違って使用している可能性は十分にあります。その場合、O d+1 の可能な値を反復処理してから、P(O 1 , O 2 , ..., O d+1 | λ) を最大化するにはどうすればよいでしょうか?
python - HMMLearn GaussianHMM が正しくトレーニングされない
3 つの観測のシーケンスがあり、そのような観測のシーケンスが 3 つあります。3 つの非表示の状態があります。HMMlearn ライブラリの GaussianHMM を使用しています。
state_machine = GaussianHMM(n_components=3, covariance_type="full", n_iter=1000) state_machine.fit(np.stack(np.split(X, 3), axis=1))
1つの機能について、データは次のとおりです
以下のように観測を分割しています。私の目的は、次の観測を予測することだからです。そして、観測をそのままにしておくと、'9 X 3'_compute_log_likelihood が生成されます。したがって、次の観測を予測できるように、「3 X 3」の形式が必要です。
しかし、状態遷移行列を次のように取得しています
また、「state_machine.predict(test_r)」については、「ValueError: rows of transmat_ must sum to 1.0 (got [ 1. 0. 1.])」というエラーが発生します。
ただし、他の機能については、以下のデータ
状態遷移マトリックスを下回っています。
「state_machine.predict(test_r)」の場合、「非表示の状態: [2]」が表示されます。
これの背後にある考えられる理由と解決策を教えてください。
ありがとう。
python - hmmlearn をインストールしようとしていますが、取得はこのプラットフォームでサポートされているホイールではありません
hmmlearn をインストールしようとしていますが、問題が発生しています。
私のバージョンのpython、
Python 3.6.1 (v3.6.1:69c0db5、2017 年 3 月 21 日、18:41:36)
ピップも最新であることを確認しました。
c:\users\xxx\pip install c:\users\xxx\documents\code\python\hmmlearn-0.2.0-cp35-cp35m-win32.whl
エラーメッセージが表示されます
hmmlearn-0.2.0-cp35-cp35m-win32.whl は、このプラットフォームでサポートされているホイールではありません
ファイル hmmlearn-0.2.0-cp35-cp35m-win_amd64 も試しましたが、同じエラー メッセージが表示されます。
hmmlearn のインストール方法を教えてください。
アップデート
先週、自分のコンピューターに PyCharm をダウンロードしましたが、これが問題を引き起こすかどうかわかりませんか?