gpt4 book ai didi

svm - 如何将 OneVsRestClassifier 与 SVC 一起用于多标签问题?

转载 作者:行者123 更新时间:2023-12-04 18:37:15 28 4
gpt4 key购买 nike

我正在使用 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/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com