我在我的代码中回答这个例子:
import numpy as np
X = np.array([[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]])
Y = np.array([1, 1, 1, 2, 2, 2])
from sklearn.naive_bayes import GaussianNB
clf = GaussianNB()
clf.fit(X, Y)
GaussianNB(priors=None, var_smoothing=1e-09)
print(clf.predict([[-0.8, -1]]))这里介绍的是:GaussianNB文档。
我得到了
GaussianNB(priors=None, var_smoothing=1e-09)
TypeError: __init__() got an unexpected keyword argument 'var_smoothing'sklearn的版本是
>>> import sklearn
>>> print(sklearn.__version__)
0.19.2有人知道发生了什么以及如何解决吗?
发布于 2019-06-16 17:00:08
当前版本的sci学习是0.21.2。
我在sklearn版本的0.19.2中测试了这一点。参数var_smoothing未为GaussianNB方法定义。
您可以通过使用以下文档来检查这一点
from sklearn.naive_bayes import GaussianNB
help(GaussianNB)
# Result
Help on class GaussianNB in module sklearn.naive_bayes:
class GaussianNB(BaseNB)
| Gaussian Naive Bayes (GaussianNB)
...
...
| Parameters
| ----------
| priors : array-like, shape (n_classes,)
| Prior probabilities of the classes. If specified the priors are not
| adjusted according to the data.
|
| Attributes
...
...您可以升级到最新版本的scikit学习或只是删除参数。
https://stackoverflow.com/questions/56619725
复制相似问题