问题标签 [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.
python - 如何在“GaussianHMM.fit()”而不是“predict()”之后手动计算“预测”?
我这样做如下:
现在我想预测'x';我知道我可以通过代码来做到这一点:hmm.predict(x); 但是我应该看到“hmm”的一些参数并手动计算吗?
简单的例子,“X”是一个向量(10000 行,1 列);然后在运行代码后:
,我认为“一些参数”应该如下所示:
那么我该如何从嗯?
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 | λ)?
python - 在 Python 中使用 hmmlearn 学习字符序列
这是我的问题,我正在尝试使用 hmmlearn 教一个隐马尔可夫模型。我是这门语言的新手,理解列表和数组之间的区别有些困难。这是我的代码:
以及由此产生的输出
我在ValueError: setting an array element with a sequence看到它可能是不同数组长度的问题,但我不知道如何解决它。
有什么建议吗?
machine-learning - 动态朴素贝叶斯分类器和朴素贝叶斯分类器有什么区别
我目前使用 HMM 来预测太阳辐射。
传统的 HMM 模型只能考虑一个观测序列数据。
但是,当我使用 Gibbs 采样来估计隐藏状态时,会减少 4 并且误差很高。
现在,我正在考虑如何将多个数据输入到模型中,例如使用温度和消耗数据作为观察值。
所以我搜索动态朴素贝叶斯分类器。但是,我不知道什么是动态朴素贝叶斯分类器以及如何实现它。
有人可以给我一些答案或给我一些教程。
提前致谢 :)
python - 来自 HMMLearn 的预测序列
我正在使用此文档,但我无法弄清楚如何从测试数据中提取预测序列。
我已经用 训练了模型.fit(X_train)
,但是如下:
unseen_hidden_states = model.predict(X_test)
返回一个数组:
[2 1 1 ..., 3 3 3]
我不知道如何解释或如何从中提取预测序列
python - 无法理解 GaussianHMM() 中这些参数之间的区别
当我设置模型时(例如in )transmat_
,有人可以解释一下参数和之间的区别吗?transmat_prior
GaussianHMM()
hmmlearn.hmm
同样的解释也适用于参数startprob_prior
和startbrob_
?
python - hmmlearn 中的 GMMHMM 对于任何 n_samples 大小的运行是否都没有错误?
首先,我的 hmmlearn 版本是 0.3.0b(使用 conda 安装)。
我正在尝试在 hmmlearn 中实现 GMMHMM 模型,但我得到:
更具体地说,我有一个包含 4 个状态和 5 个混合高斯(集群)的模型,并且我的输入 X 变量具有文档shape(20,3)
中提到的,即.(n_samples, n_features)
这是创建错误的代码:
任何人都可以找到任何理由或者它是图书馆的错误吗?我找不到实现 GMMHMM 模型的在线示例。
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?请帮忙。
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]”。
请建议我这背后的可能原因和解决方案。
谢谢。
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,不知道这是否会造成问题?