【发布时间】:2018-04-28 23:23:31
【问题描述】:
我正在尝试使用 LinearSVC 分类器
更新:添加导入
import nltk
from nltk.tokenize import word_tokenize
from nltk.classify.scikitlearn import SklearnClassifier
from sklearn.svm import LinearSVC, SVC
LinearSVC_classifier = SklearnClassifier(LinearSVC())
LinearSVC_classifier.train(featuresets)
但是当我试图用概率对其进行分类时
LinearSVC_classifier.prob_classify(feats)
发生属性错误:
AttributeError:'LinearSVC' object has no attribute 'predict_proba'
我查看了 sklearn 文档,它告诉我们这个函数存在。
如何解决?
【问题讨论】:
-
您使用 LinearSVC 作为 SklearnClassifier 的基础,它确实没有
predict_proba()。请查看documentation here。 -
@VivekKumar 你是对的。但不幸的是,NLTK sklearn 分类器包装器的文档以 LinearSVM() 为例,其中定义了 'predict_proba' 方法。
-
您能否添加您已导入内容的完整代码以及
SklearnClassifier是如何产生的?这将有助于调试 NLTK 中的问题。
标签: python scikit-learn nltk