作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
使用 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”作为答案。
为什么用
替换YY = np.array([ 3, 2 ])
给出不同的类别“2”作为答案(正确的)?这不就是一个类标签吗?
有人可以阐明这一点吗?
最佳答案
默认情况下,alpha,平滑参数为1。正如 msw 所说,你的训练集很小。由于平滑,没有信息被留下。如果将 alpha 设置为非常小的值,您应该会看到预期的结果。
关于python - 在 python 中使用 BernoulliNB(朴素贝叶斯分类器)scikit-learn 的简单示例 - 无法解释分类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11807649/
我是一名优秀的程序员,十分优秀!