Python 我们可以通过HMM进行监督学习吗?

Python 我们可以通过HMM进行监督学习吗?,python,hidden-markov-models,supervised-learning,hmmlearn,Python,Hidden Markov Models,Supervised Learning,Hmmlearn,我相信我理解它的核心。通过HMM,我们解决了评估(发射序列的概率)、解码(最可能隐藏序列)和学习问题(从发射序列的观测集学习转移和发射概率矩阵) 我的问题与学习问题有关。我有发射序列,但我也有每个序列的相关特征(意味着隐藏状态值,但隐藏状态的数量未知)。在隐马尔可夫模型的学习问题中,我们估计隐藏序列(大小和概率矩阵),为此我们只需要发射序列(如果事先不知道隐藏序列的大小,可以对其进行优化) 我正在使用HMM进行计算。当然,它没有 我想要的选择 import numpy as np import

我相信我理解它的核心。通过HMM,我们解决了评估(发射序列的概率)、解码(最可能隐藏序列)和学习问题(从发射序列的观测集学习转移和发射概率矩阵)

我的问题与学习问题有关。我有发射序列,但我也有每个序列的相关特征(意味着隐藏状态值,但隐藏状态的数量未知)。在隐马尔可夫模型的学习问题中,我们估计隐藏序列(大小和概率矩阵),为此我们只需要发射序列(如果事先不知道隐藏序列的大小,可以对其进行优化)

我正在使用HMM进行计算。当然,它没有 我想要的选择

import numpy as np
import pandas as pd

from hmmlearn import hmm

filenames =  [f for f in os.listdir(dir_path) if '.csv' in f.lower()]
d1 = pd.read_csv(dir_path + filenames[0]).as_matrix() # Shape = [m, 3] => first two column is featute and last is the emission-state 
d2 = pd.read_csv(dir_path + filenames[1]).as_matrix() # Shape = [m, 3]


##
remodel = hmm.GaussianHMM(n_components=4, covariance_type="full", n_iter=100)

remodel.fit(d1[:, 0:2])  # Problem would have been solved if there was supervised option to pass the states as well 

pred_1 = remodel.predict(d1[:, 0:2])
true_1 = d1[:, -1] # Last column is state of the feature in 1, 2 column.

pred_2 = remodel.predict(d2[:, 0:2])
true_2 = d2[:, -1]

有没有一种方法可以在HMM中进行监督学习?如果有,如何进行?如果不是,那么我仍然可以使用HMM解决我的问题吗?如果可能的话,那怎么办

hmmlearn
不实施监督学习()

该库实现了受监督的HMM,但似乎没有实现GMM

然而,该库似乎用高斯混合模型实现有监督的隐马尔可夫模型。大概是这样的:

将石榴作为pg导入
X=。。。
y=。。。
分布=pg.多变量高斯分布
model=pg.HiddenMarkovModel.来自样本(分布,n\u分量=5,X=X,labels=y,算法='labeled')