私はmatlab、隠れマルコフモデル、および機械学習に非常に慣れておらず、特定の一連の信号を分類しようとしています。私が従ったアプローチが正しいかどうか教えてください:
- N x N の遷移行列を作成し、各行の合計が 1 になるランダムな値を入力します。(N は状態の数になります)
- N x M の排出/観測マトリックスを作成し、各行の合計が 1 になるランダムな値を入力します。
シーケンスの異なるインスタンス (つまり、各インスタンスは 'hello' という単語を言う) を 1 つの長いストリームに変換し、各ストリームを次のように hmm train 関数にフィードします。
new_transition_matrix old_transition_matrix = hmmtrain(sequence,old_transition_matrix,old_emission_matrix)
うーん、確率を与えるために未知のシーケンスでデコードするための最終的な遷移と放出行列を与える
[posterior_states logrithmic_probability] = hmmdecode( sequence, final_transition_matrix,final_emission_matris)