1
NLTKのSklearnClassifierとBernoulliNBを使用してデータを分類しようとしています。'SklearnClassifier'オブジェクトにNLTKの属性 'batch_classify'がありません
train = posFeatures[174:]+negFeatures[174:]+neuFeatures[174:]
devtest = posFeatures[124:174]+negFeatures[124:174]+neuFeatures[124:174]
test = posFeatures[:124]+negFeatures[:124]+neuFeatures[:124]
dev, tag_dev = zip(*devtest)
def score(classifier):
classifier = SklearnClassifier(classifier)
classifier.train(train)
pred = classifier.batch_classify(dev)
return accuracy_score(tag_dev,pred)
print('BernoulliNB accuracy is %f'%score(BernoulliNB()))
、その後、私はこのエラーを得た:
Traceback (most recent call last):
File "G:/pycharm/quanbu.py", line 53, in <module>
print('BernoulliNB accuracy is %f'%score(BernoulliNB()))
File "G:/pycharm/quanbu.py", line 51, in score
pred = classifier.batch_classify(dev)
AttributeError: 'SklearnClassifier' object has no attribute 'batch_classify'
私はpython3.5.2、nltk3.2.1、scikit-学ぶ0.18を使用していますこれはいくつかのコードです。
https://github.com/nltk/nltk/wiki/Porting-your-code-to-NLTK-3.0を見てください – alvas
まだ始まっていて、まだ移植するコードがないので、必要なドキュメントの最新版を探してください。 – alexis
ありがとう、私は解決しました。 – BoomKa