所以我知道,当你训练 HMM 进行分类时,标准方法是:
- 将您的数据集分成每个类的数据集
- 每班训练一个 HMM
- 在测试集上比较每个模型对每个窗口进行分类的可能性
但是我如何在每节课上训练 HMM?我是否只是将与一个类有关的数据连接在一起?但是,时间序列数据不是应该是连续的吗?如果我这样做,那么我是说某些数据点不是连续的?
更具体地说,我有一些 EEG 数据,它是一个 96xT 矩阵,其中我有 96 个特征向量,它们是来自不同通道的不同频率的功率谱密度,T 是信号的时间长度(在某些采样率下)
这可以分为我从实验协议中知道的窗口(数据已标记),因此我可以为每个类收集 96*t 矩阵集。其中 t 小于 T 并表示每个窗口的大小。
然后我如何在这些数据上训练 HMM?如果它有助于我尝试使用 pmtk3 工具包,但我愿意使用任何真正的东西 - 它只需要能够处理实值观测,因为功率谱密度是连续的而不是离散的(默认的 MATLAB 工具箱只能处理离散观察)。
目的是能够将 EEG 数据窗口分类为已对标记数据进行训练的给定心理状态。这是一个使用柏林 BCI 竞赛数据的脑机接口问题。