gpt4 book ai didi

python - Scikit 学习高斯 HMM : ValueError: startprob must sum to 1. 0

转载 作者:太空狗 更新时间:2023-10-30 03:03:29 26 4
gpt4 key购买 nike

我目前正在使用 Scikit Learn,在尝试训练高斯 HMM 时遇到了以下问题:

File "/Library/Python/2.7/site-packages/sklearn/hmm.py", line 443, in fit

self._do_mstep(stats, self.params)

File "/Library/Python/2.7/site-packages/sklearn/hmm.py", line 798, in _do_mstep

super(GaussianHMM, self)._do_mstep(stats, params)

File "/Library/Python/2.7/site-packages/sklearn/hmm.py", line 580, in _do_mstep

np.maximum(self.startprob_prior - 1.0 + stats['start'], 1e-20))

File "/Library/Python/2.7/site-packages/sklearn/hmm.py", line 476, in _set_startprob

raise ValueError('startprob must sum to 1.0')

ValueError: startprob must sum to 1.0

如果我删除了一些特征(每次观察少于 13 个特征),它仍然有效。我检查了所有输入是否有效,并且每个训练示例仅包含 numpy.float64s 的二维数组。关于出了什么问题的任何想法?谢谢!

最佳答案

我通过将 params 属性设置为训练集中所有唯一值的集合来解决这个问题。

param=set(train.ravel())
model=hmm.GaussianHMM(n_components=6, covariance_type="full", n_iter=100,params=param)

train 是我用来拟合模型的 numpy 数组列表。

初始参数设置为全ascii字符的字符串。

关于python - Scikit 学习高斯 HMM : ValueError: startprob must sum to 1. 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18796658/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com