我正在尝试理解Decision_function和Predict之间的关系,它们是SVC的实例方法(http://scikit-learn.org/stable/modules/generated/sklearn.svm.SVC.html)。到目前为止,我已经收集到决策函数返回类之间的成对得分。我的印象是,预测会选择最大化其成对成绩的课程,但我对此进行了测试,得出了不同的结果。这是我用来尝试理解两者之间关系的代码。首先,我生成了成对分数矩阵,然后打印出最大成对分数的类,该类不同于clf.predict预测的类。
result = clf.decision_function(vector)[0]
counter = 0
num_classes = len(clf.classes_)
pairwise_scores = np.zeros((num_classes, num_classes))
for r in xrange(num_classes):
for j in xrange(r + 1, num_classes):
pairwise_scores[r][j] = result[counter]
pairwise_scores[j][r] = -result[counter]
counter += 1
index = np.argmax(pairwise_scores)
class = index_star / num_classes
print class
print clf.predict(vector)[0]
有谁知道这些预测和决策函数之间的关系?
decision_function
:“样本X与分离超平面的距离”。