SVM核函数_机器学习

前言:

     有时,分类问题是非线性的。这时候可以用非线性支持向量机,主要特点是核技巧。

一  核技巧

二 核函数定义

三 核技巧在SVM中的应用

四 正定核

五  常用核函数

六 非线性支持向量机

 


一 核技巧

                  

 

   如上左图分离平面是一个椭圆,通过变换变成直线。非线性问题,变成线性可分问题。

   设原空间 X \in R^2,x =(x_1,x_2)^T \in X

   新空间 Z \in R^2, z \in (z_1, z_2)^T \in Z

   定义原空间到新空间的变换(映射)

   z=\phi(x)=(x_1^2,x_2^2)^T,经过变换z=\phi(x),原空间变换为新空间Z,原空间的点相应变换为新空间的点,

  原空间的椭圆

  w_1x_1^2+w_2x_2^2+b=0

边为新空间的直线

   w_1z_1+w_2z_2+b=0

这样原空间的非线性问题,变成新空间线性可分问题。

用线性分类方法,求解非线性问题,分为两步:

 1.1 原空间数据映射到新的空间

 1.2 新空间里用线性分类学习方法从训练数据中学习分类模型。


二 核函数定义

    2.1 核函数定义

     设x是输入空间,H是特征空间(希尔伯特空间),如果存在一个x到H的隐射

     \phi(x): x\rightarrow H

   使得对所有的,x,z \in X,函数K(x,z)满足条件

   K(x,z)=\phi(x)\cdot \phi(z)

  则称K(x,z) 为核函数,\phi(x) 为映射函数

  核技巧思想: 只定义核函数,而不显示定义映射函数,通常计算核函数比较容易

 例子: 假如输入空间是R^2,核函数是K(x,z)=(x \cdot z)^2找出其相关的特征空间H,和映射空间

 \phi(x): R^2->H

      解:  取特征空间H=R^3, x=(x_1,x_2)^T,z=(z_1,z_2)^T,由于

                  (x \cdot z)^2=(x_1z_1+x_2z_2)^2=(x_1z_1)^2+(x_2z_2)^2+2(x_1x_2z_1z_2)

 

        取映射函数:

              \phi(x)=(x_1^2, \sqrt{2}x_1x_2,x_2)^T

        则K(x,z)=\phi(x)\cdot \phi(z)


三  核函数在SVM中的应用

      在对偶问题的目标函数中的内积可以用核函数来替代

     x_i \cdot x_j  替换为核函数  K(x_i,x_j)=\phi(x_i)\phi(x_j)

     目标函数:

      W(\alpha)=\frac{1}{2}\sum\sum \alpha_i \alpha_jy_iy_jK(x_i,x_j)-\sum \alpha_i

     分类决策函数:

           f(x)=sign(\sum_{i=1}^{N_s} \alpha_i y_iK(x_i,x_j)+b)


四  正定核

   函数K(x,z)满足什么样的条件才能称为核函数,假设K(x,z)是定义在XxX上的对称函数,并对任意的

  x_1,x_2,...x_m \in X,K(x,z) 关于x_1,x_2,...x_m的Gram矩阵是半正定的。可依据K(x,z)构成一个希尔伯特空间

其步骤为:

       定义映射\phi并构成向量空间S,

      在S上定义内积构成内积空间,

      最后将S完备化构成希尔伯特空间

    3.1 定义映射,构成向量空间S

            先定义映射

             \phi(x): x->K(\cdot, x)

           根据这一映射,对任意x_i \in X,\alpha_i \in R,i=1,2,...m 线性组合

          f(\cdot)=\sum_{i=1}^{m} \alpha_iK(\cdot, x_i)

          该元素集合为S,构成一个向量空间

 

    3.2 S上定义内积,使其称为内积空间

            在S上定义一个运算*,对任意f,g\in S,

            f(\cdot)=\sum_{i=1}^{m}\alpha_iK(\cdot, x_i)

            g(\cdot)=\sum_{j=1}^{l}\beta_jK(\cdot,z_j)

         定义运算

            f*g=\sum\sum\alpha_i\beta_jK(x_i,z_j)

 

          证明运算*是空间S的内积,为此要证

             (cf)*g=c(f*g),c\in R

            (f+g)*h=f*h+g*hh \in S

            f*g=g*f

          f*f \geq 0, f*f=0 <=>f=0........................4

      主要证明式4:

       先证 f*f \geq 0:

       充分性:

                f*f=\sum_{i=1}^{m}\alpha_i\alpha_jK(x_i,x_j)  ,Gram矩阵的半正定性只上式右端非负,f*f>=0

        必要性:

        f,g\in S,\lambda \in R , f+\lambda g\in S 于是

         (f+\lambda g)*)(f+\lambda g ) \geq 0

         f*f +2\lambda(f*g)+\lambda^2 (g*g) \geq 0

         关于\lambda的二次三项式,非负,其判别式小于等于0,即

        (f*g)^2-(f*f)(g*g)\leq 0

       即 |f*g|^2 \leq (f*f)(g*g)

 

      再证若 f*f=0,则f=0.

      K(\cdot, x)*f=\sum_{i=1}^{m} \alpha_i K(x,x_i) =f(x)

   根据上面必要性条件

   |f(x)|^2=|K(\cdot,x)*f|^2

            \leq (K(\cdot,x)*K(\cdot,x))(f*f)

            =K(x,x)f*f

       当 f*f =0  ,|f(x)| =0

       

    

    3.3 内积空间转为希尔伯特空间

            将内积空间S完备化,范数为

           ||f||=\sqrt{f\cdot f}  

           S是一个赋范向量空间,对不完备的赋范向量S,一定可以使之完备化,得到完备的赋范向量空间H

         。一个内积空间,当作为一个赋范向量空间是完备时候,就是希尔伯特空间。这样就得到了希尔伯特空间H

    这一希尔伯特空间H称为再生核希尔伯特空间,这是由于K具有再生性,即满足

       K(\cdot,x)\cdot f=f(x)

       K(\cdot, x)K(\cdot,z)=K(x,z)

       称为再生核

     3.4 正定核函充要条件

        定理 设K X*X->R 是对称函数,则K(x,z)为正定核函数的充要条件是对仍以

    x_i \in X, i=1,2,...m,K(x,z) 对应的Gram 矩阵

           K=[K(x_i,x_j)]_{m*m}  是半正定的。

      证明:

       必要性:

       由于K(x,z) 是X*X上的正定核,所以存在从X到希尔伯特空间H的映射\phi,使得

     K(x,z)=\phi(x)\phi(z)

    于是,对任意x_1,x_2,....x_m,构造K(x,z)关于x_1,x_2,....,x_m的Gram矩阵

    [K_{ij}]_{m*m}=[K(x_i,x_j)]_{m*m}

    对于任意c_1,c_2,...c_m \in R,有

   \sum_{i,j=1}^{m}c_ic_jK(x_i,x_j)=\sum_{i,j=1}^{m}c_ic_j(\phi(x_i)\phi(x_j))

   =(\sum_{i}c_i\phi(x_i))\cdot(\sum_j c_j\phi(x_j))=||\sum_i c_i\phi(x_i)||^2\geq 0

  所以K(x,z)关于关于x_1,x_2,....,x_m的Gram矩阵 是半正定的

 

    充分性

         已知对称函数K(x,z)对任意x_1,x_2,...,x_m \in X,K(x,z) 关于x_1,x_2,..,x_m的Gram矩阵是半正定的

根据前面的结果,对于给定的K(x,z),可以构造X到某个希尔伯特H的映射

       \phi: x----->K(\cdot, x)

  因为

    K(\cdot, x)\cdot f=f(x)

  并且

     K(\cdot,x)K(\cdot,z)=K(x,z)

  由上面式子可得

    K(x,z)=\phi(x) \cdot \phi(z)

   表明K(x,z) 是X*X上的核函数


五  常用核函数

     5.1 PKF(polynomial kernel function) 多项式核函数

           K(x,z)=(x\cdot z+1)^p

        分类决策函数为:

        f(x)=sign(\sum \alpha_iy_i(x_i\cdot x+1)^p+b)

 

      5.2 高斯核函数

         K(x,z)=exp^{-\frac{||x-z||^2}{2\sigma^2}}

        分类决策函数为:

        f(x)=sign(\sum \alpha_i exp^{-\frac{||x-z||^2}{2\sigma^2}})

 

六  非线性支持向量分类机

     输入: 训练数据集T={(x_1,y_1),(x_2,y_2),...(x_N,y_N)}, y_i \in {-1,1},i=1,2,..N  

      输出: 分类决策函数

   

        6.1 选取核函数K(x,z)以及适当的参数C,构造并求解最优化问题

             min_{\alpha} \frac{1}{2}\sum\sum\alpha_i\alpha_jy_iy_jK(x_i,x_j)-\sum \alpha_i

             s.t : \sum_{i=1}^{N}\alpha_iy_i=0

                    0\leq \alpha_i \leq C

 

         6.2 选择\alpha的一个正分量,使得0<\alpha_i<C ,计算

               b=y_j-\sum \alpha_iy_iK(x_i \cdot x_j)

 

       6.3  构造决策函数

              f(x)=sign(\sum \alpha_iy_iK(x \cdot x_i)+b)

 

 

参考文档:

    《统计学习方法》

   《机器学习与应用》

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值