gpt4 book ai didi

python - Scikit hmm 分数返回负值

转载 作者:行者123 更新时间:2023-11-30 23:26:25 25 4
gpt4 key购买 nike

我尝试运行 http://scikit-learn.org/stable/modules/hmm.html 中的示例代码:

import numpy as np
from sklearn import hmm

startprob = np.array([0.6, 0.3, 0.1])
transmat = np.array([[0.7, 0.2, 0.1], [0.3, 0.5, 0.2], [0.3, 0.3, 0.4]])
means = np.array([[0.0, 0.0], [3.0, -3.0], [5.0, 10.0]])
covars = np.tile(np.identity(2), (3, 1, 1))
model = hmm.GaussianHMM(3, "full", startprob, transmat)
model.means_ = means
model.covars_ = covars
X, Z = model.sample(150)

model2 = hmm.GaussianHMM(3, "full")
model2.fit([X])

以及模型下观测值 X 的评分对数概率:

print (model2.score(X))

我期望区间 <0,1> 中的数字,但给出的负值非常低。例如上面的例子,分数返回-554.979039475。我不明白这意味着什么。

请问有人能给我建议吗?

From doc:
score(obs): Compute the log probability under the model
Returns : Log likelihood of the obs.

scklearn hmm.score documentation

最佳答案

对数概率是概率的对数。在这种情况下,概率为

>>> np.exp(-554.979039475)
9.4550881914378009e-242

关于python - Scikit hmm 分数返回负值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22555129/

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