支持向量机(算法流程)
由于我们知道这个式子就是核函数:
,因此我们知道核函数就可以求解最优化的对偶问题
解出aᵢ就可以求出
注:由于Φ(X)可能没有显式表达,因此w也不知道是否具有显式表达
如何求b
由于能得到
图一
图二
由图二得 g[i]被分成了两部分,而有着不同得Bᵢ------aᵢ与bᵢ
由图三得求导c=aᵢ+bᵢ
因此bᵢ=c-aᵢ,且如过对于某个i,aᵢ!=0并且aᵢ!=c,则根据KKT条件,必有
而
所以只需要找一个0<aᵢ<c
得到
那么如果得到一个测试样本X,我们如何得到它的类别
这里我们可以计算wᵀΦ(x)+b,代入
不知道Φ(x),只知道核函数K(x₁,x₂)就可以得到
这一结论叫核函数戏法
最后可以得到
总结流程
训练过程:输入训练数据{(xᵢ,yᵢ)} i=1~N,其中yᵢ=+-1
求出aᵢ
再求b:
知道了所有aᵢ与b就完成了支持向量机的训练过程
测试过程
考察测试数据X,预测它的类别Y
兵王问题描述
如果黑方只剩一个王,白方剩一个兵,一个王
兵的升变:兵走至对方的底线,可以升变为除王以外的任意棋子。
逼和:一方的王未被将军,但移动到任意的地方都会被对方处死,则此时式和棋。
UCI Machine Learning 中的数据集krkopt.data
和棋(draw)yᵢ=+1
其他 (ONE-FIFTEEN) yᵢ=-1