我用一个vs所有svm分类器训练了虹膜数据集(包括3个类),并在下面显示了coef_和intercept _:
[
[-0.04625854 0.5211828 -1.00304462 -0.46412978] // 1-vs-all coefficients
[-0.00722313 0.17894121 -0.53836459 -0.29239263] // 2-vs-all coefficients
[ 1.15034043 1.14954525 -3.53985244 -4.24622393]] //3-vs-all coefficients
[ 1.4528445 1.50771313 13.63764975] //intercepts
然后我创建了ovr iris数据集。我将特定类别标记为1,将其他两个类别标记为0。再次,我使用相同的classifire训练了整个数据集,并打印了coef_和intercept。结果如下:
1-vs-all:
[[-0.04575352 0.52216766 -1.00294058 -0.46406882]]
[ 1.44746413]
2-vs-all:
[[-0.03070975 -2.38286314 1.13998914 -2.61285489]]
[ 5.48399354]
3-vs-all:
[[-1.15034043 -1.14954525 3.53985244 4.24622393]]
[-13.63764975]
如您所见,两个实验中的1-vs-all和3-vs-all结果的绝对值相同,但对于2-vs-all则完全不同。 我不明白为什么会这样?