gpt4 book ai didi

python - 在 python 中使用 BernoulliNB(朴素贝叶斯分类器)scikit-learn 的简单示例 - 无法解释分类

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

使用 scikit-learn 0.10

为什么下面的简单代码片段:

from sklearn.naive_bayes import *

import sklearn
from sklearn.naive_bayes import *

print sklearn.__version__

X = np.array([ [1, 1, 1, 1, 1],
[0, 0, 0, 0, 0] ])
print "X: ", X
Y = np.array([ 1, 2 ])
print "Y: ", Y

clf = BernoulliNB()
clf.fit(X, Y)
print "Prediction:", clf.predict( [0, 0, 0, 0, 0] )

打印出“1”的答案?在 [0,0,0,0,0] => 2 上训练模型后,我期待“2”作为答案。

为什么用

替换Y
Y = np.array([ 3, 2 ])

给出不同的类别“2”作为答案(正确的)?这不就是一个类标签吗?

有人可以阐明这一点吗?

最佳答案

默认情况下,alpha,平滑参数为1。正如 msw 所说,你的训练集很小。由于平滑,没有信息被留下。如果将 alpha 设置为非常小的值,您应该会看到预期的结果。

关于python - 在 python 中使用 BernoulliNB(朴素贝叶斯分类器)scikit-learn 的简单示例 - 无法解释分类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11807649/

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