尝试使用SVC
中的sklearn
来解决分类问题。鉴于一堆数据,以及告诉我某个主题是否属于某个类的信息,我希望能够给出一个新的,未知的主题在一个类中的概率。
我只有2个类,所以问题是二进制。这是我的代码和我的一些错误
from sklearn.svm import SVC
clf=SVC()
clf=clf.fit(X,Y)
SVC(probability=True)
print clf.predict_proba(W) #Error is here
但它返回以下错误:
NotImplementedError: probability estimates must be enabled to use this method
我该如何解决这个问题?
答案 0 :(得分:5)
您必须使用probability=True
from sklearn.svm import SVC
clf=SVC(probability=True)
clf.fit(X,Y)
print clf.predict_proba(W) #No error
您的代码会创建一个具有概率估计值的SVC并将其丢弃(因为您不将其存储在任何变量中)并使用一些先前存储在clf中的SVC(无可能性)
答案 1 :(得分:-1)
始终在适合之前设置参数。
from sklearn.svm import SVC
clf=SVC(probability=True)
clf=clf.fit(X,Y)
print clf.predict_proba(W)