1 前言

以前还在社团里的时候,讲过一句话:“核是 SVMSVM 里最最最最牛 B 的地方”。

其实当时我感觉它牛 B 是因为我看到这个东西的时候
正定核—vincen的学习笔记

当时我的问题在于

  • 这些核函数是如何找到的?亦或者给定一个函数,有什么方法可以判定其是否可作为核函数?

  • 为什么高斯核函数将特征映射到了无穷维空间中?

翻看《统计学习方法》一书,对其中较多的数学证明在此处写下自己的理解。

下面所有一切均为对书中该部分的个人理解,很有可能出错。

2 核函数的主要功效

在SVM中,解决线性不可分问题的主要手段是使用合适的映射将特征从低维向量空间映射至更高维空间,以转化为更高维空间的线性可分问题,这里放两张图直观理解下
正定核—vincen的学习笔记
正定核—vincen的学习笔记

显然第一幅图中我们很难用一条直线去很好的区分紫色点和红色点,但在第二幅图中,却可以用一个三维空间中的线性结构—平面去较好的分隔开红点和蓝点。但世上没有免费午餐,更高的维度虽带来了更好的线性可分的概率,但也随之带来了计算复杂度的升高,尤其是一些映射会将特征向量映射至无穷维空间中(如后续介绍GaussianGaussian kernelkernel所对应的核函数),这会直接导致问题不可解(原因是计算机对无穷维根本没法儿算完)。但所幸,SVMSVM中将一个二次规划问题经过拉格朗日乘子法、对偶问题转化等技巧,将优化变量WW的确定转化为高维空间向量内积的求解问题,于是核函数的作用便得以显现(skr~)。 所谓核函数,是通过带入两个低维空间向量的坐标,直接计算出所带入向量经某高维映射后,所得向量的内积值,公式如下
κ(x,z)=ϕ(x)ϕ(z)\kappa(x,z)=\phi(x)\phi(z)
其中ϕ\phi高维映射函数,κ\kappa是核函数

3 正定核的判定

这里按照李航老师的《统计学习方法》一书中的证明思路,我会加上我对其中证明的一些
理解和细化。

3.1 预备知识

3.11 预备定理的描述

书本上的预备知识仅有一句话

κ(x,z)\kappa(x,z)是定义在χ×χ\chi\times\chi的对称函数,并且对
x1,,xmχ\forall x_1,\cdots,x_m\in\chiκ(x,z)\kappa(x,z)关于x1,,xmx_1,\cdots,x_m的Gram阵是半正定的,则可根据κ(x,z)\kappa(x,z)构成一个HilbertHilbert空间。

先做下面几点解释,再进行证明

  • 这里要注意mm是一个可变量

  • 定理中Gram阵指的是[κ(xi,xj)]m×m[\kappa(x_i,x_j)]_{m×m}

  • HilbertHilbert空间(听名字怪吓人的)指的就是对极限运算封闭的内积空间,再说的具体一些,就是本身是一个线性空间(满足8条公理),其上装备了内积(集合上可以定义一个运算满足内积运算的4条公理),又其上所有CauchyCauchy序列都收敛于集上一点的集合。

3.12 预备知识的证明

我们的目标无疑是通过κ(x,z)\kappa(x,z)这个特征空间到实数集RR上的函数,去构成一个HilbertHilbert空间。

书中分三步求证,第一步通过κ(x,z)\kappa(x,z)建立线性空间,第二步在其上定义内积,第三步将其完备化。

step1.建立一个线性空间

定义映射
ϕ:xκ(,x)xχ\phi:x\rightarrow\kappa(\cdot,x)\quad \forall x\in\chi
xiχ,αiR,i=1,2,,m\forall x_i\in\chi,\alpha_i\in R,i = 1,2,\cdots,m,定义线性组合
f()=i=1mαiκ(,xi)f(\cdot) = \sum_{i=1}^m\alpha_i\kappa(\cdot,x_i)\quad
所有线性组合构成的集合SS是一个线性空间。

注解

  • ϕ\phi是一个特征空间中的有限维向量到一个一元函数的映射,\cdot代表变元的位置 ,而原本κ\kappa第二个变元位置上由你在特征空间χ\chi选取的元素xx决定。

  • 线性组合部分要注意到,不仅仅是xxχ\chi的选取是任意的,选取的个数mm也是任意的

  • 要证明SS是一个线性空间,即是要证明SS满足8条公理,这里仅证明SS上加法封闭提供思路:下将mm,ll看为固定的常数,设z1,z2,,zlχz_1,z_2,\cdots,z_l\in \chi,根据ϕ\phi,可得κ(,z1)\kappa(\cdot,z_1),,κ(,zl)\cdots,\kappa(\cdot,z_l)这样的nn个一元函数,构造其线性组合g()=j=1lβjκ(,zj)g(\cdot) = \sum_{j = 1}^{l}\beta_j\kappa(\cdot,z_j)f+g=i=1mαiκ(,xi)+j=1lβjκ(,zj)f+g = \sum_{i=1}^m\alpha_i\kappa(\cdot,x_i)+\sum_{j = 1}^{l}\beta_j\kappa(\cdot,z_j)可看作是取x1,,xm;z1,z2,,zlχx_1,\cdots,x_m;z_1,z_2,\cdots,z_l\in\chiϕ\phi所构造的,它依旧是属于SS的,故SS对加法封闭。(其他7条不难验证)

step2.在SS上装备内积

f=i=1mαiκ(,xi),g=j=1lβjκ(,zj)S\forall f = \sum_{i=1}^m\alpha_i\kappa(\cdot,x_i),g = \sum_{j = 1}^{l}\beta_j\kappa(\cdot,z_j)\in S
定义(f,g)=i=1mj=1lαiβjκ(xi,zj) (f,g) = \sum_{i=1}^m\sum_{j=1}^l\alpha_i\beta_j\kappa(x_i,z_j)
我们要证明(,)(\cdot,\cdot)满足内积运算的4条公理,即可完成这一步骤,即证明
(f,g)=(g,f)①(f,g) = (g,f)
(cf,g)=c(f,g)②(cf,g) = c(f,g)
(f+g,h)=(f,h)+(g,h)③(f+g,h) = (f,h)+(g,h)
(f,f)0(f,f)=0f=0④(f,f)\geqslant 0 \wedge (f,f) = 0\Leftrightarrow f = 0
注解:

  • 首先需要注意到GramGram阵是一个半正定阵,这就是说他是一个对称阵,由x,yx,y选取的任意性可知κ(x,y)=κ(y,x)\kappa(x,y) = \kappa(y,x),有了这一点,①、②就比较容易了。
  • 对于③,再设h=k=1nγkκ(,γk)h = \sum_{k=1}^{n}\gamma_k\kappa(\cdot,\gamma_k)则根据所定义运算的法则(f+g,h)(f+g,h) =k=1nγk[α1κ(x1,y)++ακ(xm,yk)+β1κ(z1,yk)++βkκ(zl,yk)] =\sum_{k=1}^{n}\gamma_k[\alpha_1\kappa(x_1,y)+\cdots+\alpha\kappa(x_m,y_k)+\beta_1\kappa(z_1,y_k)+\cdots+\beta_k\kappa(z_l,y_k)]=k=1ni=1mγkαiκ(xi,yk)+k=1nj=1lγkαiκ(zj,yk)=\sum_{k=1}^n\sum_{i=1}^m\gamma_k\alpha_i\kappa(x_i,y_k)+\sum_{k=1}^n\sum_{j=1}^l\gamma_k\alpha_i\kappa(z_j,y_k)=(f,h)+(g,h)=(f,h)+(g,h)
  • 对于④,先证(f,f)0(f,f)\geqslant 0 (f,f)=i,j=1mαiαjκ(xi,xj)(f,f) = \sum_{i,j = 1}^{m}\alpha_i\alpha_j\kappa(x_i,x_j)可以看成GramGram对应的二次型,因为GramGram矩阵半正定,所以(f,f)0(f,f)\geqslant 0 关于(f,f)=0f=0(f,f) = 0\Leftrightarrow f = 0的充分性,当f=i=1mαiκ(,xi)=0f = \sum_{i=1}^{m}\alpha_i\kappa(\cdot,x_i)=0时,可得i=1mαiκ(x,xi)=0,xχ\sum_{i=1}^{m}\alpha_i\kappa(x,x_i)=0,\forall x\in\chi这不就是(f,f)(f,f)表达式中的一部分吗?于是得(f,f)=0(f,f)=0对于必要性的证明,需要用到CauchyCauchy—schwarzschwarz不等式,这个不等式在此处成立性的证明和普遍的证明方式没有差异,这里直接使用。首先我们要注意到如下性质(κ(,x),f)=i=1mαiκ(x,xi)=f(x),xχ(\kappa(\cdot,x),f)=\sum_{i=1}^{m}\alpha_i\kappa(x,x_i)=f(x),\forall x\in\chi运用CauchyCauchy—schwarzschwarz,有(κ(,x),f)2=f(x)2(κ(,x),κ(,x))(f,f)=0(\kappa(\cdot,x),f)^2=f(x)^2 \leqslant(\kappa(\cdot,x),\kappa(\cdot,x))(f,f)=0于是有f(x)=0f(x)=0,再由xx任意性知f=0f=0。从而SS是一个内积空间。
step3.内积空间完备化

SS是内积空间,于是可诱导向量的范数
f=(f,f)\|f\| = \sqrt{(f,f)}
它是一个范数,肯定满足范数3条公理,我们来验证下三角不等式这一条
f+g2=(f+g,f+g)\|f+g\|^2=(f+g,f+g) =(f,f)+2(f,g)+(g,g)= (f,f)+2(f,g)+(g,g)=f2+2(f,g)+g2 = \|f\|^2+2(f,g)+\|g\|^2f2+2fg+g2\leqslant \|f\|^2+2\|f\|\|g\|+\|g\|^2=(f+g)2=(\|f\|+\|g\|)^2
还是简单应用了下CauchyschwarzCauchy—schwarz不等式。从而SS是一个赋范向量空间(说人话就是定义了范数的线性空间),这里书上用了一个泛函的结论(这里我也不会,先承认下来,以后回头再看)

任意赋范向量空间都可完备化

SHS\rightarrow\mathcal {H},H\mathcal{H}是一个BanachBanach空间(说人话就是完备的赋范向量空间)。
SS装备了内积,所以H\mathcal{H}是一个HilbertHilbert空间。
下面我们要列出的是H\mathcal{H}的重要性质,因为这个性质,H\mathcal{H}称为再生核HilbertHilbert空间。
κ(,x)f=f(x)\kappa(\cdot,x)f=f(x)
f=κ(,z)f = \kappa(\cdot,z),立刻可推出
κ(,x)κ(,z)=κ(x,z)\kappa(\cdot,x)\kappa(\cdot,z) = \kappa(x,z)
这里我存有一个疑问,为什么要要求高维映射的像空间是完备的,这样做的意义在何处体现?

3.2 正定核充要条件

如何判断一个函数κ\kappa是否可以作为核函数,即能否带入两个低维空间向量的坐标,直接计算出的值可作为所带入向量间经某高维映射所得向量的内积值?

一个函数κ:χ×χR\kappa:\chi\times\chi\rightarrow R可作为正定核函数的充要条件为x1,,xmχ,k(x,z)\forall x_1,\cdots,x_m\in\chi,k(x,z)GramGramK=[κ(xi,xj)]m×mK=[\kappa(x_i,x_j)]_{m×m}半正定。

注意这里的mmxx都是任意的啊,也就是说,输入样本的组合可以改变,样本的数量也可以改变。

充分性

由前结果,若对任何输入样本的规模和组合对应的GramGram矩阵是半正定的,则我们可以构造一个映射
ϕ:xκ(,x)\phi:x\rightarrow\kappa(\cdot,x)
也即ϕ:χH\phi:\chi\rightarrow\mathcal{H}
H\mathcal{H}中的再生性
κ(x,z)=κ(,x)κ(,z)\kappa(x,z) = \kappa(\cdot,x)\kappa(\cdot,z)
这即是
κ(x,z)=ϕ(x)ϕ(z)\kappa(x,z) = \phi(x)\phi(z)
κ(x,z)\kappa(x,z)可达到核函数的效用,对应的高维映射为ϕ\phi

必要性

K(x,z)K(x,z)是正定核,则存在ϕ:χH\phi:\chi\rightarrow\mathcal{H},满足
κ(x,z)=ϕ(x)ϕ(z)\kappa(x,z)=\phi(x)\phi(z)
于是x1,,xmχ,c1,c2,,cmR\forall x_1,\cdots,x_m\in\chi,c_1,c_2,\cdots,c_m\in R
i=1mj=1mcicjKij\sum_{i=1}^m\sum_{j =1}^mc_ic_jK_{ij}
=i=1mj=1mcicjκ(xi,xj) = \sum_{i=1}^m\sum_{j =1}^mc_ic_j\kappa(x_i,x_j)
=i=1mj=1mcicjϕ(xi)ϕ(xj)=\sum_{i=1}^m\sum_{j =1}^mc_ic_j\phi(x_i)\phi(x_j)
=(i=1mciϕ(xi))(j=1mcjϕ(xj))=(\sum_{i=1}^m{c_i\phi(x_i)})(\sum_{j =1}^mc_j\phi(x_j))=(i=1mciϕ(xi))20=(\sum_{i=1}^m{c_i\phi(x_i)})^2\geqslant0
于是KK半正定\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\blacksquare

4.Gaussian核函数

关于Gaussian核函数为什么将特征映射到无穷维空间
GaussianKernel:exp(xy22σ2)Gaussian\quad Kernel:exp(-\frac{\|x-y\|^2}{2\sigma^2})
κ(x,y)=exp(xy22σ2)\kappa(x,y) = exp(-\frac{\|x-y\|^2}{2\sigma^2})
=exp(ixi22σ2)exp(iyi22σ2)exp(ixiyiσ2)=exp(-\frac{\sum_i{x_i^2}}{2\sigma^2})exp(-\frac{\sum_i{y_i^2}}{2\sigma^2})exp(\frac{\sum_i{x_iy_i}}{\sigma^2})
=exp(ixi22σ2)exp(iyi22σ2)iexp(xiyiσ2)=exp(-\frac{\sum_i{x_i^2}}{2\sigma^2})exp(-\frac{\sum_i{y_i^2}}{2\sigma^2})\prod_iexp(\frac{{x_iy_i}}{\sigma^2})
TaylorTaylor展开连乘号内部的式子
=exp(ixi22σ2)exp(iyi22σ2)in=0xinyinσ2nn!=exp(-\frac{\sum_i{x_i^2}}{2\sigma^2})exp(-\frac{\sum_i{y_i^2}}{2\sigma^2})\prod_i\sum_{n=0}^{\infty}\frac{{x_i^ny_i^n}}{\sigma^{2n}n!}
=exp(ixi22σ2)exp(iyi22σ2)n=0ixinn!σniyinn!σn=exp(-\frac{\sum_i{x_i^2}}{2\sigma^2})exp(-\frac{\sum_i{y_i^2}}{2\sigma^2})\sum_{n=0}^{\infty}\prod_i\frac{{x_i^n}}{\sqrt{n!}\sigma^{n}}\prod_i\frac{{y_i^n}}{\sqrt{n!}\sigma^{n}}
=n=0[(exp(ixi22σ2)ixinn!σn)(n=0exp(iyi22σ2)iyinn!σn)]=\sum_{n=0}^{\infty}[(exp(-\frac{\sum_i{x_i^2}}{2\sigma^2})\prod_i\frac{{x_i^n}}{\sqrt{n!}\sigma^{n}})(\sum_{n=0}^{\infty}exp(-\frac{\sum_i{y_i^2}}{2\sigma^2})\prod_i\frac{{y_i^n}}{\sqrt{n!}\sigma^{n}})]
上式可看作两个无穷维向量的内积
=ϕ(x)Tϕ(y)=\phi(x)^T\phi(y)
这即是Gaussian核函数将特征映射至无穷维空间的原因。

相关文章:

  • 2021-12-06
  • 2022-12-23
  • 2021-12-11
  • 2021-12-21
  • 2021-06-09
  • 2021-09-20
猜你喜欢
  • 2021-05-15
  • 2022-01-07
  • 2021-08-03
  • 2021-08-24
  • 2021-11-03
相关资源
相似解决方案