问题标签 [hmmlearn]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
73 浏览

python - 如何在“GaussianHMM.fit()”而不是“predict()”之后手动计算“预测”?

我这样做如下:

现在我想预测'x';我知道我可以通过代码来做到这一点:hmm.predict(x); 但是我应该看到“hmm”的一些参数并手动计算吗?

简单的例子,“X”是一个向量(10000 行,1 列);然后在运行代码后:

,我认为“一些参数”应该如下所示:

那么我该如何从嗯?

0 投票
1 回答
1739 浏览

python - GaussianHMM中的解码序列

我正在使用隐马尔可夫模型来解决股市预测问题。我的数据矩阵包含特定安全性的各种功能:

我适合一个简单的 GaussianHMM:

使用模型 (λ),我可以对观察向量进行解码,以找到与观察向量对应的最可能的隐藏状态序列:

上面,我已经解码了包含测试集中前五个实例的观察向量 O t = (O 1 , O 2 , ..., O d ) 的隐藏状态序列。我想估计测试集中第六个实例的隐藏状态。这个想法是迭代第六个实例的一组离散的可能特征值,并选择具有最高似然性 argmax = P(O 1 , O 2 , ..., O d+1 | λ的观察序列 O t+1)。一旦我们观察到 O d+1的真实特征值,我们可以将序列(长度为 5)移动 1 并重新做一遍:

问题是当我解码观察向量 O t+1时,具有最高似然性的预测几乎总是相同的(例如,具有最高似然性的估计总是具有 O d+1的特征值等于 [ 0.04 0.04 0.04] 和是隐藏状态[0]):

我完全有可能误解了 的目的mdl.decode,从而错误地使用了它。如果是这种情况,我怎样才能最好地迭代 O d+1的可能值,然后最大化 P(O 1 , O 2 , ..., O d+1 | λ)?

0 投票
1 回答
1126 浏览

python - 在 Python 中使用 hmmlearn 学习字符序列

这是我的问题,我正在尝试使用 hmmlearn 教一个隐马尔可夫模型。我是这门语言的新手,理解列表和数组之间的区别有些困难。这是我的代码:

以及由此产生的输出

我在ValueError: setting an array element with a sequence看到它可能是不同数组长度的问题,但我不知道如何解决它。

有什么建议吗?

0 投票
1 回答
610 浏览

machine-learning - 动态朴素贝叶斯分类器和朴素贝叶斯分类器有什么区别

我目前使用 HMM 来预测太阳辐射。

传统的 HMM 模型只能考虑一个观测序列数据。

但是,当我使用 Gibbs 采样来估计隐藏状态时,会减少 4 并且误差很高。

现在,我正在考虑如何将多个数据输入到模型中,例如使用温度和消耗数据作为观察值。

所以我搜索动态朴素贝叶斯分类器。但是,我不知道什么是动态朴素贝叶斯分类器以及如何实现它。

有人可以给我一些答案或给我一些教程。

提前致谢 :)

0 投票
1 回答
1241 浏览

python - 来自 HMMLearn 的预测序列

我正在使用此文档,但我无法弄清楚如何从测试数据中提取预测序列。

我已经用 训练了模型.fit(X_train),但是如下:

unseen_hidden_states = model.predict(X_test)

返回一个数组:

[2 1 1 ..., 3 3 3]

我不知道如何解释或如何从中提取预测序列

0 投票
1 回答
589 浏览

python - 无法理解 GaussianHMM() 中这些参数之间的区别

当我设置模型时(例如in transmat_ ,有人可以解释一下参数和之间的区别吗?transmat_priorGaussianHMM()hmmlearn.hmm

同样的解释也适用于参数startprob_priorstartbrob_

0 投票
1 回答
526 浏览

python - hmmlearn 中的 GMMHMM 对于任何 n_samples 大小的运行是否都没有错误?

首先,我的 hmmlearn 版本是 0.3.0b(使用 conda 安装)。

我正在尝试在 hmmlearn 中实现 GMMHMM 模型,但我得到:

更具体地说,我有一个包含 4 个状态和 5 个混合高斯(集群)的模型,并且我的输入 X 变量具有文档shape(20,3)中提到的,即.(n_samples, n_features)

这是创建错误的代码:

任何人都可以找到任何理由或者它是图书馆的错误吗?我找不到实现 GMMHMM 模型的在线示例。

0 投票
0 回答
104 浏览

mallet - 使用 MALLET 训练 HMM

我对使用 MALLET 非常陌生。我需要一个用于序列标记任务的 HMM 库。我已经看过 Sequence Tagging Developer's Guide,但我无法理解如何训练 HMM。我有一个隐藏状态列表、一个观察符号列表、初始概率矩阵、转移概率矩阵和发射概率矩阵。我需要使用 BW 算法训练 HMM,重新估计参数,然后想使用这些参数执行序列标记任务。

例如,我有以下值:

hidden_​​states = ('下雨','晴天')

observation_symbols = ('walk', 'shop', 'clean')

initial_probability = {'雨天':0.6,'晴天':0.4}

转换概率= {

'雨天':{'雨天':0.7,'晴天':0.3},

'晴天':{'雨天':0.4,'晴天':0.6},

}

排放概率= {

'Rainy' : {'walk': 0.1, 'shop': 0.4, 'clean': 0.5},

'Sunny' : {'walk': 0.6, 'shop': 0.3, 'clean': 0.1},

}

观察序列= {

走干净的商店,

干净的步行商店

}

如何使用上述参数训练 HMM?请帮忙。

0 投票
0 回答
770 浏览

python - HMMLearn GaussianHMM 没有得到正确的训练

我有 3 个观察序列,我有 3 个这样的观察序列。存在三种隐藏状态。我正在使用 HMMlearn 库的 GaussianHMM。

state_machine = GaussianHMM(n_components=3, covariance_type="full", n_iter=1000) state_machine.fit(np.stack(np.split(X, 3), axis=1))

对于一项功能,数据如下

我将观察结果划分如下。因为我的目标是预测下一次观察。并保持观察结果不变会产生'9 X 3'_compute_log_likelihood。所以我需要它以'3 X 3'的形式出现,这样我就可以预测下一次观察。

但我得到的状态转换矩阵为

同样对于“state_machine.predict(test_r)”,我收到错误,因为“ValueError:transmat_ 的行必须总和为 1.0(得到 [1. 0. 1.])”。

但对于其他特征,数据如下

我正在低于状态转换矩阵。

对于“state_machine.predict(test_r)”,我得到“隐藏状态:[2]”。

请建议我这背后的可能原因和解决方案。

谢谢。

0 投票
0 回答
452 浏览

python - 尝试安装 hmmlearn 但在此平台上不支持获取

我正在尝试安装 hmmlearn 但是我遇到了问题。

我的python版本,

Python 3.6.1(v3.6.1:69c0db5,2017 年 3 月 21 日,18:41:36)

我检查了我的点子也是最新的。

c:\users\xxx\pip 安装 c:\users\xxx\documents\code\python\hmmlearn-0.2.0-cp35-cp35m-win32.whl

我收到错误消息

hmmlearn-0.2.0-cp35-cp35m-win32.whl 不是此平台支持的轮子

我还尝试了文件 hmmlearn-0.2.0-cp35-cp35m-win_amd64 并得到相同的错误消息。

如何安装 hmmlearn?

更新

上周我在我的电脑上下载了 PyCharm,不知道这是否会造成问题?