作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 OneVsRestClassifier 进行多标签分类。它适用于 LinearSVC,但是当我将它应用于 SVC 时,出现以下错误:
classifier = OneVsRestClassifier(SVC(class_weight='balanced'))
classifier.fit(X1, y1)
y2 = classifier.predict(X2)
Traceback (most recent call last):
...
File "/usr/local/lib/python2.7/dist-packages/sklearn/multiclass.py", line 219, in predict
return predict_ovr(self.estimators_, self.label_binarizer_, X)
File "/usr/local/lib/python2.7/dist-packages/sklearn/multiclass.py", line 93, in predict_ovr
Y = np.array([_predict_binary(e, X) for e in estimators])
File "/usr/local/lib/python2.7/dist-packages/sklearn/multiclass.py", line 66, in _predict_binary
score = estimator.predict_proba(X)[:, 1]
File "/usr/local/lib/python2.7/dist-packages/sklearn/svm/base.py", line 490, in predict_proba
"probability estimates must be enabled to use this method")
NotImplementedError: probability estimates must be enabled to use this method</code>
有人知道这是什么吗?
最佳答案
这是一个 bug . OneVsRestClassifier
在找到一个时调用 predict_proba
方法,但是 SVC
上的那个实际上不起作用,除非你用 probability 构造它=True
得到 Platt scaling (我实际上并不鼓励这样做)。
它适用于 LinearSVC
的原因是该类没有 predict_proba
,因此 OvR 退回到 decision_function
方法。
关于svm - 如何将 OneVsRestClassifier 与 SVC 一起用于多标签问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16402236/
我是一名优秀的程序员,十分优秀!