したがって、分類のためにHMMをトレーニングするときの標準的なアプローチは次のとおりであることを理解しています。
- データセットを各クラスのデータセットに分けます
- クラスごとに1つのHMMをトレーニングする
- テストセットで各モデルの尤度を比較して、各ウィンドウを分類します。
しかし、各クラスでHMMをトレーニングするにはどうすればよいですか?1つのクラスに関連するデータを連結するだけですか?しかし、時系列データはシーケンシャルであることを意味していませんか?そして、そうすると、いくつかのデータポイントが連続していないときに連続していると言いますか?
より具体的には、96xTマトリックスであるEEGデータがあります。96個の特徴ベクトルは、異なるチャネルからの異なる周波数のパワースペクトル密度であり、Tは信号の時間の長さです(サンプリングレートで)
これは、実験プロトコル(データにラベルが付けられている)からわかっているウィンドウに分割できるため、クラスごとに96 * tマトリックスのセットを収集できます。ここで、tはTより小さく、各ウィンドウのサイズを示します。
このデータでHMMをトレーニングするにはどうすればよいですか?pmtk3ツールキットを使用しようとしていますが、実際には何でも使用できます-パワースペクトル密度が離散的ではなく連続的であるため、実際の値の観測を処理できなければなりません(デフォルトのMATLABツールボックスは離散観測を使用)。
目的は、EEGデータウィンドウを、ラベル付けされたデータでトレーニングした特定の精神状態に分類できるようにすることです。これは、ベルリンのBCIコンペデータを使用したブレインコンピューターインターフェイスの問題です。