如何在 sklearn 中访问朴素贝叶斯的模型参数(条件概率表)



我们知道朴素贝叶斯模型从数据中学习其参数,这些参数是条件概率表。 我正在尝试找出如何在 sklearn 中访问此类表。 我可以有你的建议吗?

您可以获取每个(特征、类)的条件对数概率和发生计数。

基于文档的示例:

import numpy as np
X = np.random.randint(2, size=(6, 10))
Y = np.array([1, 1, 1, 2, 1, 2])
X
#array([[0, 1, 1, 0, 1, 1, 0, 1, 1, 0],
       [1, 1, 1, 0, 1, 1, 0, 0, 0, 0],
       [1, 0, 1, 1, 0, 0, 1, 0, 0, 0],
       [1, 0, 1, 1, 0, 1, 0, 0, 0, 1],
       [0, 0, 1, 0, 0, 0, 0, 1, 1, 1],
       [1, 1, 0, 1, 0, 0, 1, 0, 0, 0]])
from sklearn.naive_bayes import BernoulliNB
clf = BernoulliNB()
clf.fit(X, Y)
clf.feature_count_
#
array([[2., 2., 4., 1., 2., 2., 1., 2., 2., 1.],
       [2., 1., 1., 2., 0., 1., 1., 0., 0., 1.]])
clf.feature_log_prob_
#
array([[-0.69314718, -0.69314718, -0.18232156, -1.09861229, -0.69314718,
        -0.69314718, -1.09861229, -0.69314718, -0.69314718, -1.09861229],
       [-0.28768207, -0.69314718, -0.69314718, -0.28768207, -1.38629436,
        -0.69314718, -0.69314718, -1.38629436, -1.38629436, -0.69314718]])

相关内容

  • 没有找到相关文章

最新更新