我试图通过学习一个属性来为朴素贝叶斯创建一个简单的例子。似乎我不能用sklearn.naive_bayes.MultinomialNB一个属性来预测。这是因为predict_proba对于每个输入都是相同的。
这是代码:
import numpy as np
X = np.array([1, 1, 1, 0, 0, 1, 1])
X = X.reshape(-1,1)
y = np.array([0, 0, 0, 0, 1, 1, 1])
from sklearn.naive_bayes import MultinomialNB
clf = MultinomialNB()
clf.fit(X, y)
print(clf.predict(X))
print(clf.predict_proba(X))
及其结果。
[0 0 0 0 0 0 0]
[[0.57142857 0.42857143]
[0.57142857 0.42857143]
[0.57142857 0.42857143]
[0.57142857 0.42857143]
[0.57142857 0.42857143]
[0.57142857 0.42857143]
[0.57142857 0.42857143]]