SVM分类器如何输出预测实例的概率值

it2022-05-05  186

支持向量机分类器能够输出测试实例与决策边界之间的距离,你可以将其用作信心分数。但是这个分数不能直接转化成类别概率的估算。如果创建SVM时,在Scikit-Learn中设置probability=True,那么训练完成后,算法将使用逻辑回归对SVM分数进行校准(对训练数据额外进行5-折交叉验证的训练),从而得到概率值。 这会给SVM添加predict_proba()和predict_log_proba()两种方法。

例如以下代码所示:

import numpy as np from sklearn import svm X = np.array([[-1, -1], [-2, -1], [1, 1], [2, 1]]) y = np.array([1, 1, 2, 2]) clt = svm.SVC(probability = True) clt.fit(X, y) print clt.predict([[-0.8, -1]]) # 输出为分类结果 print clt.predict_proba([[-0.8, -1]]) # 输出为概率值

最新回复(0)