输入输出隐马尔可夫模型的Python实现

2024-10-02 22:37:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用输入输出体系结构实现隐马尔可夫模型,但是我找不到任何好的python实现。在

如果有人能共享Python包,那么应该考虑以下针对HMM的实现

允许连续排放。 允许协变量(即i/O HMM中的自变量)的功能。在

现在,我正在努力寻找同样的python实现。在

我在hmmlearn中找不到相关的例子。在

以下是我测试过的几个库:

hmmlearn:hmmlearn允许将多个特征传递给排放/观测,但不支持包含协变量(即自变量)。在

hmms:不支持添加连续排放的功能,也不支持添加独立变量。在

IOHMM:我可以使用这个库来训练HMM模型,但是在训练模型之后却找不到文档来进行预测。在

因此,我正在寻找一个符合目的的包裹。在

from IOHMM import UnSupervisedIOHMM
from IOHMM import OLS, DiscreteMNL, CrossEntropyMNL, forward_backward

SHMM = UnSupervisedIOHMM(num_states=3, max_EM_iter=200, EM_tol=1e-6)

SHMM.set_models(model_emissions = [OLS(est_stderr=True)], 
                model_transition=CrossEntropyMNL(solver='lbfgs'),
                model_initial=CrossEntropyMNL(solver='lbfgs'))

SHMM.set_inputs(covariates_initial = [], covariates_transition = [], covariates_emissions = [['Insulin']])


SHMM.set_outputs([['Glucose']])

SHMM.set_data([data])

SHMM.train() 

经过以上训练,我不知道如何得到发射概率和隐藏态序列。在


Tags: from模型import功能modelemsethmm