2013-11-09 83 views
2

試圖使用SVCsklearn做一個分類問題。考慮到大量的數據和信息,這些信息告訴我某個課程是否屬於某個班級,我希望能夠給出一個新的未知科目在班級中的概率。預測概率

我只有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

這看起來像一個[臭蟲(https://github.com/scikit-learn/scikit-learn/issues/1946) – moenad

回答

5

你必須構建SVC對象與probability=True

from sklearn.svm import SVC 
clf=SVC(probability=True) 
clf.fit(X,Y) 
print clf.predict_proba(W) #No error 

你的代碼概率估計創建一個SVC,並丟棄它(只要你不將它存儲在任何變量),並使用一些以前的SVC存儲在CLF (沒有概率)

+0

WOW,謝謝。 這真的意味着很多。我一整天都在嘗試一大堆東西。非常感謝。 –

-1

始終在合適之前設置參數。

from sklearn.svm import SVC 
clf=SVC(probability=True) 
clf=clf.fit(X,Y) 
print clf.predict_proba(W)