在支持向量机的二元分类的情况下,每个新点x'都通过评估进行分类,
y' = sign(w . x' + b)
原始问题就是这种情况。
我想找出分类器方程,为此我需要找到"w"向量和常数"b"。我正在使用scikit-learn包在Python中实现它。
在scikit-learn包中,w向量可以通过属性"coef_"找到,但是我如何找到常量b的值?
from sklearn import svm
cll = svm.SVC(kernel='linear')
cll.fit(X, Y) #X is the instances and Y is the output variable
w = cll.coef_[0]
如何找到 b?
注意:"intercept_"属性包含来自对偶形式的独立项 -P,而不是来自原始形式的独立项 -P。
注意:"intercept_"属性包含来自对偶形式的独立项 -P,而不是来自原始形式的独立项 -P。
对偶形式没有"独立项"(对偶优化公式是无偏的)。这是来自y' = sign(w . x' + b)
的b
,相当于y' = sign( SUM_i alpha_i K(sv_i, x) + b )