我写了这段代码,想获得分类的概率。
from sklearn import svm
X = [[0, 0], [10, 10],[20,30],[30,30],[40, 30], [80,60], [80,50]]
y = [0, 1, 2, 3, 4, 5, 6]
clf = svm.SVC()
clf.probability=True
clf.fit(X, y)
prob = clf.predict_proba([[10, 10]])
print prob
Run Code Online (Sandbox Code Playgroud)
我得到了这个输出:
[[0.15376986 0.07691205 0.15388546 0.15389275 0.15386348 0.15383004 0.15384636]]
Run Code Online (Sandbox Code Playgroud)
这很奇怪,因为概率应该是
[0 1 0 0 0 0 0 0]
Run Code Online (Sandbox Code Playgroud)
(注意必须预测类别的样本与第二个样本相同)同样,该类别获得的概率最低。