- SVM支持向量机又称最大间距分类器。可以解决“线性可分”和“线性不可分”问题
- SVM的“三宝”:最大间距、对偶性和核函数。
- 算法推导:
- 入上图所示
- 图中红线为决策边界。
- 两条平行黑线共同组成最大间距。
- *“支撑向量”*为两条平行黑线上的点。
决策边界公式
θTx+b=0
**“支撑向量”到决策边界的距离公式 **
d=∣∣θ∣∣∣yi∣
假设决策边界$ \theta^Tx + b = 0 $能将样本正确分类,那么:
{θTx+b>=+1yi=+1θTx+b<=−1yi=−1
两个不同类的支持向量到决策边界的距离之和为:
2d=∣∣θ∣∣2
所以我们最大化间距的表达式可以写成:
{max∣∣θ∣∣2s.t.yi(θTx+b)>=1
极值问题,求导数。最大化$ \frac{1}{||\theta||} ,相当于让分母 ||\theta|| $最小化,所以:
{min21∣∣θ∣∣2s.t.yi(θTx+b)>=1
** 对上式使用拉格朗日乘子法,得到“对偶问题”,公式为: **
L(θ,b,α)=21∣∣θ∣∣2+i=1∑mαi(1−yi(θTxi+b)(1)
对θ求偏导
θ=i=1∑mαiyixi(2)
对b求偏导
0=i=1∑mαiyi
将(2)式带入到(1)式
{max∑i=1mαi−21∑i=1m∑j=1mαiαjyiyjxiTxjs.t.∑i=1mαiyi=0
线性核函数
k(xi,xj)=xiTxj
多项式核函数
k(xi,xj)=(xiTxj)d,d为次数
高斯核函数
k(xi,xj)=exp(−2σ2∣∣xi−xj∣∣2)