SVM原理详解

1.数学基础
(1)定义一个平面 w ⃗ ∙ x ⃗ + b = 0 \vec w\bullet\vec x+b=0 w x +b=0

@定义一个平面
由向量垂直得: w ⃗ ∙ ( x ⃗ − x ⃗ 0 ) = 0 \vec w\bullet (\vec x-\vec x_0)=0 w (x x 0)=0
b = − w ⃗ ∙ x ⃗ 0 b=-\vec w\bullet\vec x_0 b=w x 0,则
w ⃗ ∙ x ⃗ + b = 0 \quad\vec w\bullet\vec x+b=0 w x +b=0

(2)求解平行平面之间的距离D

Alt
所求距离: D = ∣ ∣ t w ⃗ ∣ ∣ = ∣ t ∣ ∙ ∣ ∣ w ⃗ ∣ ∣ D=||t\vec w||=|t|\bullet||\vec w|| D=tw =tw
x ⃗ 1 、 x ⃗ 2 \vec x_1、\vec x_2 x 1x 2的交点为坐标原点, x ⃗ 1 、 x ⃗ 2 \vec x_1、\vec x_2 x 1x 2确定的平面建立坐标系,知
w ⃗ ∙ x ⃗ 2 + b 2 = 0 \quad\vec w\bullet\vec x_2+b_2=0 w x 2+b2=0
w ⃗ ∙ x ⃗ 1 + b 1 = 0 \quad\vec w\bullet\vec x_1+b_1=0 w x 1+b1=0
x ⃗ 2 = x ⃗ 1 + t w ⃗ \vec x_2=\vec x_1+t\vec w x 2=x 1+tw
综上,可得 t = b 1 − b 2 ∣ ∣ w ∣ ∣ 2 t=\frac{b_1-b_2} {||w||^2} t=w2b1b2

D = ∣ b 1 − b 2 ∣ ∣ ∣ w ⃗ ∣ ∣ D=\frac{|b_1-b_2|}{||\vec w||} D=w b1b2

2.SVM(样本线性可分)
(1) 确定样本分割平面

在这里插入图片描述
步骤:

  • 对于正、负样本,可以确定虚线所示的平行分割平面,方程分别为:
    w ⃗ ∙ x ⃗ + b 1 = 0 \quad\vec w\bullet\vec x+b_1=0 w x +b1=0 w ⃗ ∙ x ⃗ + b 2 = 0 \vec w\bullet\vec x+b_2=0 w x +b2=0
  • 调整 w ⃗ \vec w w 的大小,使得 b 2 − b 1 = 2 b_2-b_1=2 b2b1=2
  • b = b 1 + b 2 2 b=\frac{b_1+b_2}{2} b=2b1+b2,则 b 1 = b − 1 , b 2 = b + 1 b_1=b-1, b_2=b+1 b1=b1,b2=b+1
  • 代入方程,得
    w ⃗ ∙ x ⃗ + b = 1 \quad\vec w\bullet\vec x+b=1 w x +b=1
    w ⃗ ∙ x ⃗ + b = − 1 \quad\vec w\bullet\vec x+b=-1 w x +b=1
    在这里插入图片描述
(2)确定最优化目标及约束条件
  • 最优化目标(间距最大)
    i. 根据平面间距离计算公式: D = ∣ b 1 − b 2 ∣ ∣ ∣ w ⃗ ∣ ∣ = 2 ∣ ∣ w ⃗ ∣ ∣ D=\frac{|b_1-b_2|}{||\vec w||}=\frac{2}{||\vec w||} D=w b1b2=w 2
    ii. 最大化 D D D,等价于最小化 ∣ ∣ w ⃗ ∣ ∣ 2 2 \frac{||\vec w||^2}{2} 2w 2
  • 约束条件(保证正确分类)
    i. 对于正负样本,有
    w ⃗ ∙ x ⃗ i + b ≥ 1 \quad\vec w\bullet\vec x_i+b\ge1\qquad w x i+b1 i f    y i = 1 if\; y_i=1 ifyi=1
    w ⃗ ∙ x ⃗ i + b ≤ − 1   \quad\vec w\bullet\vec x_i+b\le-1\quad\, w x i+b1 i f    y i = − 1 if\;y_i=-1 ifyi=1
    ii. 综上,可得
    y i ( w ⃗ ∙ x ⃗ i + b ) ≥ 1 \quad y_i(\vec w\bullet\vec x_i+b)\ge1 yi(w x i+b)1
    \quad
    y i ( w T x i + b ) ≥ 1 \quad y_i(w^Tx_i+b)\ge1 yi(wTxi+b)1
    在这里插入图片描述
(3)原问题转化为对偶问题进行求解
  • 构造拉格朗日乘子
    L ( w , b , λ ) = ∣ ∣ w ∣ ∣ 2 2 − ∑ i = 1 n λ i [ y i ( w T x i + b ) − 1 ] L(w,b,\lambda)=\frac{||w||^2}{2}-\sum\limits_{i=1}^n\lambda_i[y_i(w^Tx_i+b)-1] L(w,b,λ)=2w2i=1nλi[yi(wTxi+b)1]

  • 将原问题转化为对偶问题
    min ⁡ w , b   max ⁡ λ L ( w , b , λ ) ⟺   max ⁡ λ min ⁡ w , b L ( w , b , λ ) \min\limits_{w,b}\,\max\limits_{\lambda}L(w,b,\lambda)\Longleftrightarrow\,\max\limits_{\lambda}\min\limits_{w,b}L(w,b,\lambda) w,bminλmaxL(w,b,λ)λmaxw,bminL(w,b,λ)

  • 根据KKT条件(求解极小值点)
    ∇ w , b   L ( w , b , λ ) = 0 \nabla_{w,b}\, L(w,b,\lambda)=0 w,bL(w,b,λ)=0
    ⇔ ∂ L ∂ w = ∂ L ∂ b = 0 \Leftrightarrow\frac{\partial L}{\partial w}=\frac{\partial L}{\partial b}=0 wL=bL=0

    分别求导,得: w = ∑ i = 1 n λ i y i x i , ∑ i = 1 n λ i y i = 0 w=\sum\limits_{i=1}^{n}\lambda_iy_ix_i\quad,\sum\limits_{i=1}^{n}\lambda_iy_i=0 w=i=1nλiyixi,i=1nλiyi=0

  • 代入拉格朗日乘子式,并化简(求解极大值)
    L ( w , b , λ ) = w T w 2 − w T ∑ i = 1 n λ i y i x i − b ∑ i = 1 n λ i y i + ∑ i = 1 n λ i L(w,b,\lambda)=\frac{w^Tw}{2}-w^T\sum\limits_{i=1}^{n}\lambda_iy_ix_i-b\sum\limits_{i=1}^{n}\lambda_iy_i+\sum\limits_{i=1}^{n}\lambda_i L(w,b,λ)=2wTwwTi=1nλiyixibi=1nλiyi+i=1nλi

  = ∑ i = 1 n λ i − 1 2 ( ∑ i = 1 n λ i y i x i ) T ∑ i = 1 n λ i y i x i \qquad\,\qquad\qquad=\sum\limits_{i=1}^{n}\lambda_i-\frac{1}{2}(\sum\limits_{i=1}^{n}\lambda_iy_ix_i)^T\sum\limits_{i=1}^{n}\lambda_iy_ix_i =i=1nλi21(i=1nλiyixi)Ti=1nλiyixi

  = ∑ i = 1 n λ i − 1 2 ∑ i , j = 1 n λ i λ j y i y j x i T x j \qquad\,\qquad\qquad=\sum\limits_{i=1}^{n}\lambda_i-\frac{1}{2}\sum\limits_{i,j=1}^{n}\lambda_i\lambda_jy_iy_jx_i^Tx_j =i=1nλi21i,j=1nλiλjyiyjxiTxj

  \qquad\, 此时,需要求解 L ( w , b , λ ) L(w,b,\lambda) L(w,b,λ)关于 λ \lambda λ的极大值
  \qquad\, 即,求解 − L ( w , b , λ ) -L(w,b,\lambda) L(w,b,λ)关于 λ \lambda λ的极小值

  • 对偶问题重新定义(求解 λ i ∗ \lambda_i^* λi
    最小化目标: − L ( w , b , λ ) = 1 2 ∑ i , j = 1 n λ i λ j y i y j x i T x j − ∑ i = 1 n λ i -L(w,b,\lambda)=\frac{1}{2}\sum\limits_{i,j=1}^{n}\lambda_i\lambda_jy_iy_jx_i^Tx_j-\sum\limits_{i=1}^{n}\lambda_i L(w,b,λ)=21i,j=1nλiλjyiyjxiTxji=1nλi
    约束条件: λ i ≥ 0 ,    i = 1 … … n \lambda_i\ge0,\; i=1……n\quad λi0,i=1nKKT条件
    ∑ i = 1 n λ i y i = 0 \qquad\qquad\sum\limits_{i=1}^{n}\lambda_iy_i=0\quad i=1nλiyi=0 (求导所得)
  • 求解 w ∗ , b ∗ , y w^*,b^*,y w,b,y
    w ∗ = ∑ i = 1 n λ i ∗ y i x i w^*=\sum\limits_{i=1}^{n}\lambda_i^*y_ix_i w=i=1nλiyixi

     \quad\;\; 根据正、负样本分割平面方程知
m i n ( w T x i + b ) = 1 \qquad min (w^Tx_i+b)=1\qquad min(wTxi+b)=1 i f    y i = 1 \quad if\;y_i=1 ifyi=1
m a x ( w T x i + b ) = − 1 \qquad max(w^Tx_i+b)=-1\qquad max(wTxi+b)=1 i f    y i = − 1 if\; y_i=-1 ifyi=1
\qquad 故, b ∗ = − 1 2 [ max ⁡ y i = − 1 ( ( w ∗ ) T x i ) + min ⁡ y i = 1 ( ( w ∗ ) T x i ) ] b^*=-\frac{1}{2}[\max\limits_{y_i=-1}((w^*)^Tx_i)+\min\limits_{y_i=1}((w^*)^Tx_i)] b=21[yi=1max((w)Txi)+yi=1min((w)Txi)]

     y = s i g n ( ( w ∗ ) T x + b ∗ ) \;\,\,\quad y=sign((w^*)^Tx+b^*) y=sign((w)Tx+b)
    = s i g n ( ∑ i = 1 n λ i ∗ y i x i T x + b ∗ ) \;\,\qquad =sign(\sum\limits_{i=1}^{n}\lambda_i^*y_ix_i^Tx+b^*) =sign(i=1nλiyixiTx+b)

3.SVM(样本线性不可分)
(1) 引入松弛系数 ξ   ( ξ > 0 ) \xi\,(\xi>0) ξ(ξ>0)

在这里插入图片描述

(2)确定最优化目标及约束条件
  • 最优化目标(间距最大)
    最小化 ∣ ∣ w ∣ ∣ 2 2 + C ∑ i = 1 n ξ i ( C > 0 ) \frac{||w||^2}{2}+C\sum\limits_{i=1}^n\xi_i \quad(C>0) 2w2+Ci=1nξi(C>0)
  • 约束条件(保证正确分类)
    i. 基本条件: ξ i ≥ 0 \xi_i\ge0 ξi0
    ii. 对于正负样本,有
    w ⃗ ∙ x ⃗ i + b ≥ 1 − ξ i \quad\vec w\bullet\vec x_i+b\ge1-\xi_i\qquad w x i+b1ξi i f    y i = 1 if\; y_i=1 ifyi=1
    w ⃗ ∙ x ⃗ i + b ≤ − 1 + ξ i   \quad\vec w\bullet\vec x_i+b\le-1+\xi_i\quad\, w x i+b1+ξi i f    y i = − 1 if\;y_i=-1 ifyi=1
    iii. 综上,可得
    y i ( w ⃗ ∙ x ⃗ i + b ) ≥ 1 − ξ i \quad y_i(\vec w\bullet\vec x_i+b)\ge1-\xi_i yi(w x i+b)1ξi
    \quad
    y i ( w T x i + b ) ≥ 1 − ξ i \quad y_i(w^Tx_i+b)\ge1-\xi_i yi(wTxi+b)1ξi
(3)原问题转化为对偶问题进行求解
  • 构造拉格朗日乘子
    L ( w , b , ξ , λ , μ ) = ∣ ∣ w ∣ ∣ 2 2 + C ∑ i = 1 n ξ i − ∑ i = 1 n λ i [ y i ( w T x i + b ) − 1 + ξ i ] − ∑ i = 1 n μ i ξ i L(w,b,\xi,\lambda,\mu)=\frac{||w||^2}{2}+C\sum\limits_{i=1}^n\xi_i -\sum\limits_{i=1}^n\lambda_i[y_i(w^Tx_i+b)-1+\xi_i]-\sum\limits_{i=1}^n\mu_i\xi_i L(w,b,ξ,λ,μ)=2w2+Ci=1nξii=1nλi[yi(wTxi+b)1+ξi]i=1nμiξi
  • 将原问题转化为对偶问题
    min ⁡ w , b , ξ   max ⁡ λ , μ L ( w , b , ξ , λ , μ ) ⟺   max ⁡ λ , μ min ⁡ w , b , ξ L ( w , b , ξ , λ , μ ) \min\limits_{w,b,\xi}\,\max\limits_{\lambda,\mu}L(w,b,\xi,\lambda,\mu)\Longleftrightarrow\,\max\limits_{\lambda,\mu}\min\limits_{w,b,\xi}L(w,b,\xi,\lambda,\mu) w,b,ξminλ,μmaxL(w,b,ξ,λ,μ)λ,μmaxw,b,ξminL(w,b,ξ,λ,μ)
  • 根据KKT条件(求解极小值点)
    ∇ w , b , ξ   L ( w , b , ξ , λ , μ ) = 0 \nabla_{w,b,\xi}\, L(w,b,\xi,\lambda,\mu)=0 w,b,ξL(w,b,ξ,λ,μ)=0
    ⇔ ∂ L ∂ w = ∂ L ∂ b = ∂ L ∂ ξ = 0 \Leftrightarrow\frac{\partial L}{\partial w}=\frac{\partial L}{\partial b}=\frac{\partial L}{\partial \xi}=0 wL=bL=ξL=0
    分别求导,得: w = ∑ i = 1 n λ i y i x i , ∑ i = 1 n λ i y i = 0 , C − λ i − μ i = 0 w=\sum\limits_{i=1}^{n}\lambda_iy_ix_i\quad,\sum\limits_{i=1}^{n}\lambda_iy_i=0\quad,C-\lambda_i-\mu_i=0 w=i=1nλiyixi,i=1nλiyi=0,Cλiμi=0
  • 代入拉格朗日乘子式,并化简(求解极大值)
    L ( w , b , ξ , λ , μ )   = w T w 2 + C ∑ i = 1 n ξ i − w T ∑ i = 1 n λ i y i x i − b ∑ i = 1 n λ i y i + ∑ i = 1 n λ i ( 1 − ξ i ) − ∑ i = 1 n μ i ξ i L(w,b,\xi,\lambda,\mu)\,=\frac{w^Tw}{2}+C\sum\limits_{i=1}^n\xi_i-w^T\sum\limits_{i=1}^{n}\lambda_iy_ix_i-b\sum\limits_{i=1}^{n}\lambda_iy_i+\sum\limits_{i=1}^{n}\lambda_i(1-\xi_i)-\sum\limits_{i=1}^n\mu_i\xi_i L(w,b,ξ,λ,μ)=2wTw+Ci=1nξiwTi=1nλiyixibi=1nλiyi+i=1nλi(1ξi)i=1nμiξi

  = ∑ i = 1 n ξ i ( C − μ i ) + ∑ i = 1 n λ i ( 1 − ξ i ) − 1 2 ( ∑ i = 1 n λ i y i x i ) T ∑ i = 1 n λ i y i x i \qquad\qquad\,\qquad\qquad=\sum\limits_{i=1}^n\xi_i(C-\mu_i)+\sum\limits_{i=1}^{n}\lambda_i(1-\xi_i)-\frac{1}{2}(\sum\limits_{i=1}^{n}\lambda_iy_ix_i)^T\sum\limits_{i=1}^{n}\lambda_iy_ix_i =i=1nξi(Cμi)+i=1nλi(1ξi)21(i=1nλiyixi)Ti=1nλiyixi

  = ∑ i = 1 n λ i − 1 2 ∑ i , j = 1 n λ i λ j y i y j x i T x j \qquad\qquad\,\qquad\qquad=\sum\limits_{i=1}^{n}\lambda_i-\frac{1}{2}\sum\limits_{i,j=1}^{n}\lambda_i\lambda_jy_iy_jx_i^Tx_j =i=1nλi21i,j=1nλiλjyiyjxiTxj
  \qquad\, 此时,需要求解 L ( w , b , ξ , λ , μ ) L(w,b,\xi,\lambda,\mu) L(w,b,ξ,λ,μ)关于 λ , μ \lambda,\mu λ,μ的极大值
  \qquad\, 即,求解 − L ( w , b , ξ , λ , μ ) -L(w,b,\xi,\lambda,\mu) L(w,b,ξ,λ,μ)关于 λ , μ \lambda,\mu λ,μ的极小值

  • 对偶问题重新定义(求解 λ i ∗ \lambda_i^* λi
    最小化目标: − L ( w , b , ξ , λ , μ ) = 1 2 ∑ i , j = 1 n λ i λ j y i y j x i T x j − ∑ i = 1 n λ i -L(w,b,\xi,\lambda,\mu)=\frac{1}{2}\sum\limits_{i,j=1}^{n}\lambda_i\lambda_jy_iy_jx_i^Tx_j-\sum\limits_{i=1}^{n}\lambda_i L(w,b,ξ,λ,μ)=21i,j=1nλiλjyiyjxiTxji=1nλi
    约束条件: λ i ≥ 0 ,    i = 1 … … n     \lambda_i\ge0,\; i=1……n\qquad\;\,\quad λi0,i=1n KKT条件
    μ i ≥ 0 ,    i = 1 … … n      \qquad\qquad\mu_i\ge0,\; i=1……n\quad\;\;\qquad μi0,i=1n KKT条件(1)
    C − λ i − μ i = 0       \qquad\qquad C-\lambda_i-\mu_i=0\qquad\qquad\quad\;\;\, Cλiμi=0 求导结果(2)
    λ i ≤ C ,    i = 1 … … n    \qquad\qquad\lambda_i\le C,\; i=1……n\qquad\quad\; λiC,i=1n 由(1)、(2)推出
    ∑ i = 1 n λ i y i = 0       \qquad\qquad\sum\limits_{i=1}^{n}\lambda_iy_i=0\qquad\qquad\qquad\quad\;\;\, i=1nλiyi=0 求导结果
  • 求解 w ∗ , b ∗ , y w^*,b^*,y w,b,y
    w ∗ = ∑ i = 1 n λ i ∗ y i x i w^*=\sum\limits_{i=1}^{n}\lambda_i^*y_ix_i w=i=1nλiyixi

     \quad\;\; 根据正、负样本分割平面方程知
m i n ( w T x i + b ) = 1 − ξ i \qquad min (w^Tx_i+b)=1-\xi_i\qquad min(wTxi+b)=1ξi i f    y i = 1 \quad if\;y_i=1 ifyi=1
m a x ( w T x i + b ) = − 1 + ξ i \qquad max(w^Tx_i+b)=-1+\xi_i\qquad max(wTxi+b)=1+ξi i f    y i = − 1 if\; y_i=-1 ifyi=1
     \quad\;\; 故,
   b ∗ = − 1 2 [ max ⁡ y i = − 1 ( ( w ∗ ) T x i ) + min ⁡ y i = 1 ( ( w ∗ ) T x i ) ] \qquad\; b^*=-\frac{1}{2}[\max\limits_{y_i=-1}((w^*)^Tx_i)+\min\limits_{y_i=1}((w^*)^Tx_i)] b=21[yi=1max((w)Txi)+yi=1min((w)Txi)]

     y = s i g n ( ( w ∗ ) T x + b ∗ ) \;\,\,\quad y=sign((w^*)^Tx+b^*) y=sign((w)Tx+b)
    = s i g n ( ∑ i = 1 n λ i ∗ y i x i T x + b ∗ ) \;\,\qquad =sign(\sum\limits_{i=1}^{n}\lambda_i^*y_ix_i^Tx+b^*) =sign(i=1nλiyixiTx+b)

4.核函数
  • 定义:
    将特征向量 x x x提升维度,转变为 ϕ ( x ) \phi(x) ϕ(x)后,执行的内积运算
    K ( x i , x j ) = ϕ ( x i ) T ϕ ( x j ) K(x_i,x_j)=\phi(x_i)^T\phi(x_j) K(xi,xj)=ϕ(xi)Tϕ(xj)
  • 分类及对比:
名称公式优点缺点
线性函数 K ( x i , x j ) = x i T x j K(x_i,x_j)=x_i^Tx_j K(xi,xj)=xiTxj形式简单、运算效率高、解释性强无法处理线性不可分问题
多项式核函数 K ( x i , x j ) = ( γ x i T x j + c ) n K(x_i,x_j)=(\gamma x_i^Tx_j+c)^n K(xi,xj)=(γxiTxj+c)n拟合能力强参数太多、 n n n较大时运算困难
高斯核函数 K ( x i , x j ) = e x p ( − ( x i − x j ) 2 2 σ 2 ) K(x_i,x_j)=exp(-\frac{(x_i-x_j)^2}{2\sigma^2}) K(xi,xj)=exp(2σ2(xixj)2)参数容易选择解释性弱、计算速度慢、易过拟合
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值