核方法|机器学习推导系列(八)

一、线性不可分问题

有时线性可分的数据夹杂一点噪声,可以通过改进算法来实现分类,比如感知机的口袋算法和支持向量机的软间隔。但是有时候数据往往完全不是线性可分的,比如下面这种情况:

XOR问题

在异或问题中数据往往不是线性可分的,但通过将数据映射到高维空间后就可以实现线性可分。可以认为高维空间中的数据比低维空间的数据更易线性可分。对于异或问题,我们可以通过寻找一个映射 ϕ ( x ) \phi (x) ϕ(x)将低维空间中的数据 x x x映射成高维空间中的 z z z来实现数据的线性可分,例如:

x = ( x 1 , x 2 ) ⏟ 二 维 → ϕ ( x ) z = ( x 1 , x 2 , ( x 1 − x 2 ) 2 ) ⏟ 三 维 \underset{二维}{\underbrace{x=(x_{1},x_{2})}}\overset{\phi (x)}{\rightarrow}\underset{三维}{\underbrace{z=(x_{1},x_{2},(x_{1}-x_{2})^{2})}} x=(x1,x2)ϕ(x) z=(x1,x2,(x1x2)2)

然后在新的空间中,该数据就可以实现线性可分:

XOR问题

二、核方法的引出

映射到高维空间以后出现的问题是计算复杂度的加大,例如在支持向量机的求解过程中求解的优化问题可以转换为如下的优化问题:

{ m i n λ    1 2 ∑ i = 1 N ∑ j = 1 N λ i λ j y i y j x i T x j − ∑ i = 1 N λ i , i = 1 , 2 , ⋯   , N s . t .    y i ( w T x i + b ) > 0 , i = 1 , 2 , ⋯   , N ∑ i = 1 N λ i y i = 0 λ i ≥ 0 , i = 1 , 2 , ⋯   , N \left\{\begin{matrix} \underset{\lambda }{min}\; \frac{1}{2}\sum_{i=1}^{N}\sum_{j=1}^{N}\lambda _{i}\lambda _{j}y_{i}y_{j}x_{i}^{T}x_{j}-\sum_{i=1}^{N}\lambda _{i},i=1,2,\cdots ,N\\ s.t.\; y_{i}(w^{T}x_{i}+b)>0,i=1,2,\cdots ,N\\ \sum_{i=1}^{N}\lambda _{i}y_{i}=0\\ \lambda _{i}\geq 0,i=1,2,\cdots ,N \end{matrix}\right. λmin21i=1Nj=1NλiλjyiyjxiTxji=1Nλi,i=1,2,,Ns.t.yi(wTxi+b)>0,i=1,2,,Ni=1Nλiyi=0λi0,i=1,2,,N

将数据映射到高维空间后也就需要求解以下优化问题:

{ m i n λ    1 2 ∑ i = 1 N ∑ j = 1 N λ i λ j y i y j ϕ ( x i ) T ϕ ( x j ) − ∑ i = 1 N λ i , i = 1 , 2 , ⋯   , N s . t .    y i ( w T x i + b ) > 0 , i = 1 , 2 , ⋯   , N ∑ i = 1 N λ i y i = 0 λ i ≥ 0 , i = 1 , 2 , ⋯   , N \left\{\begin{matrix} \underset{\lambda }{min}\; \frac{1}{2}\sum_{i=1}^{N}\sum_{j=1}^{N}\lambda _{i}\lambda _{j}y_{i}y_{j}{\color{Red}{\phi (x_{i})^{T}\phi (x_{j})}}-\sum_{i=1}^{N}\lambda _{i},i=1,2,\cdots ,N\\ s.t.\; y_{i}(w^{T}x_{i}+b)>0,i=1,2,\cdots ,N\\ \sum_{i=1}^{N}\lambda _{i}y_{i}=0\\ \lambda _{i}\geq 0,i=1,2,\cdots ,N \end{matrix}\right. λmin21i=1Nj=1Nλiλjyiyjϕ(xi)Tϕ(xj)i=1Nλi,i=1,2,,Ns.t.yi(wTxi+b)>0,i=1,2,,Ni=1Nλiyi=0λi0,i=1,2,,N

将数据拓展到高维的方法可以用来解决完全非线性的问题:

线性可分允许一点点错误严格非线性
PLAPocket Alorithm ϕ ( x ) \phi (x) ϕ(x)+PLA
Hard-Margin SVMSoft-Margin SVM ϕ ( x ) \phi (x) ϕ(x)+Hard-Margin SVM

然而在上面的方法中如果先将 ϕ ( x i ) \phi (x_{i}) ϕ(xi) ϕ ( x j ) \phi (x_{j}) ϕ(xj)计算出来然后再做点积,由于维度特别高加之得到 ϕ ( x i ) \phi (x_{i}) ϕ(xi) ϕ ( x j ) \phi (x_{j}) ϕ(xj)也需要计算量,因此计算量是相当大的,因此就有了核方法。

通过使用核函数我们可以直接得到 ϕ ( x i ) \phi (x_{i}) ϕ(xi) ϕ ( x j ) \phi (x_{j}) ϕ(xj)的内积,正定核函数定义如下:

∀ x , x ′ ∈ X , ∃ ϕ ∈ H : x ↦ z , s . t .    K ( x , x ′ ) = ϕ ( x i ) T ϕ ( x j ) = < ϕ ( x i ) , ϕ ( x j ) > , \forall x,x^{'}\in \mathcal{X} ,\exists \phi \in \mathcal{H} :x \mapsto z,s.t.\; K(x,x^{'})=\phi (x_{i})^{T}\phi (x_{j})=<\phi (x_{i}),\phi (x_{j})>, x,xX,ϕH:xz,s.t.K(x,x)=ϕ(xi)Tϕ(xj)=<ϕ(xi),ϕ(xj)>,则称 K ( x , x ′ ) K(x,x^{'}) K(x,x)是一个正定核函数。

其中 H \mathcal{H} H是Hilbert空间(完备的可能是无限维的被赋予内积的线性空间),如果去掉内积这个条件我们简单地称为核函数。

Hilbert空间定义中的完备指的是对极限是封闭的,被赋予内积代表空间中的元素满足以下性质:

①    < f , g > = < g , f > ②    < f , f > ≥ 0 , “ = ” ⇔ f = 0 ③    < r 1 f 1 + r 2 f 2 , g > = r 1 < f 1 , g > + r 2 < f 2 , g > ①\; <f,g>=<g,f>\\ ②\; <f,f>\geq 0,“=”\Leftrightarrow f=0\\ ③\; <r_{1}f_{1}+r_{2}f_{2},g>=r_{1}<f_{1},g>+r_{2}<f_{2},g> <f,g>=<g,f><f,f>0,=f=0<r1f1+r2f2,g>=r1<f1,g>+r2<f2,g>

因为支持向量机的求解只用到内积运算,所以使用核函数会大大简化运算量。

三、正定核函数的证明

正定核函数还有另外一个定义:

如果核函数满足以下两条性质:
①对称性
②正定性
则称核函数 K ( x , z ) K(x,z) K(x,z)为正定核函数。

这个定义也就是正定核函数的充要条件,其中两条性质分别指的是:

①对称性 ⇔ K ( x , z ) = K ( z , x ) \Leftrightarrow K(x,z)=K(z,x) K(x,z)=K(z,x);
②正定性 ⇔ \Leftrightarrow 任取 N N N个元素 x 1 , x 2 , ⋯   , x N ∈ X x_{1},x_{2},\cdots ,x_{N}\in \mathcal{X} x1,x2,,xNX,对应的 G r a m    m a t r i x    K = [ K ( x i , x j ) ] Gram\; matrix\; K=[K(x_{i},x_{j})] GrammatrixK=[K(xi,xj)]是半正定的。

证明 K ( x , z ) = ϕ ( x ) T ϕ ( z ) ⇔ K(x,z)=\phi (x)^{T}\phi (z)\Leftrightarrow K(x,z)=ϕ(x)Tϕ(z)对称性+矩阵 K K K半正定:

⇒ \Rightarrow :
首先证明对称性

K ( x , z ) = < ϕ ( x ) , ϕ ( z ) > K ( z , x ) = < ϕ ( z ) , ϕ ( x ) > 又 内 积 具 有 对 称 性 , 即 < ϕ ( x ) , ϕ ( z ) > = < ϕ ( z ) , ϕ ( x ) > ∴ K ( x , z ) = K ( z , x ) ∴ K ( x , z ) 满 足 对 称 性 K(x,z)=<\phi (x),\phi (z)>\\ K(z,x)=<\phi (z),\phi (x)>\\ 又内积具有对称性,即<\phi (x),\phi (z)>=<\phi (z),\phi (x)>\\ \therefore K(x,z)=K(z,x)\\ \therefore K(x,z)满足对称性 K(x,z)=<ϕ(x),ϕ(z)>K(z,x)=<ϕ(z),ϕ(x)><ϕ(x),ϕ(z)>=<ϕ(z),ϕ(x)>K(x,z)=K(z,x)K(x,z)

然后证明

欲 证 G r a m    m a t r i x : K = [ K ( x i , x j ) ] N × N 半 正 定 即 证 : ∀ α ∈ R n , α T K α ≥ 0 ∵ α T K = ( α 1 α 2 ⋯ α N ) 1 × N [ a 11 a 12 ⋯ a 1 N a 21 a 22 ⋯ a 2 N ⋮ ⋮ ⋱ ⋮ a N 1 a N 2 ⋯ a N N ] N × N ( α 1 α 2 ⋮ α N ) N × 1 = ∑ i = 1 N ∑ j = 1 N α i α j K i j = ∑ i = 1 N ∑ j = 1 N α i α j < ϕ ( x i ) , ϕ ( x j ) > = ∑ i = 1 N ∑ j = 1 N α i α j ϕ ( x i ) T ϕ ( x j ) = ∑ i = 1 N α i ϕ ( x i ) T ∑ j = 1 N α j ϕ ( x j ) = [ ∑ i = 1 N α i ϕ ( x i ) ] T ∑ j = 1 N α j ϕ ( x j ) = < ∑ i = 1 N α i ϕ ( x i ) , ∑ j = 1 N α j ϕ ( x j ) > = ∥ ∑ i = 1 N α i ϕ ( x i ) ∥ 2 ≥ 0 ∴ K 是 半 正 定 的 。 欲证Gram\; matrix:K=[K(x_{i},x_{j})]_{N\times N}半正定\\ 即证:\forall \alpha \in \mathbb{R}^{n},\alpha ^{T}K\alpha \geq 0\\ \because \alpha ^{T}K=\begin{pmatrix} \alpha _{1} & \alpha _{2} & \cdots & \alpha _{N} \end{pmatrix}_{1\times N}\begin{bmatrix} a_{11}& a_{12}& \cdots & a_{1N}\\ a_{21}& a_{22}& \cdots & a_{2N}\\ \vdots & \vdots & \ddots & \vdots \\ a_{N1}& a_{N2}& \cdots & a_{NN} \end{bmatrix}_{N\times N}\begin{pmatrix} \alpha _{1}\\ \alpha _{2}\\ \vdots \\ \alpha _{N} \end{pmatrix}_{N\times 1}\\ =\sum_{i=1}^{N}\sum_{j=1}^{N}\alpha _{i}\alpha _{j}K_{ij}\\ =\sum_{i=1}^{N}\sum_{j=1}^{N}\alpha _{i}\alpha _{j}<\phi (x_{i}),\phi (x_{j})>\\ =\sum_{i=1}^{N}\sum_{j=1}^{N}\alpha _{i}\alpha _{j}\phi (x_{i})^{T}\phi (x_{j})\\ =\sum_{i=1}^{N}\alpha _{i}\phi (x_{i})^{T}\sum_{j=1}^{N}\alpha _{j}\phi (x_{j})\\ =\begin{bmatrix} \sum_{i=1}^{N}\alpha _{i}\phi (x_{i})\end{bmatrix}^{T}\sum_{j=1}^{N}\alpha _{j}\phi (x_{j})\\ =<\sum_{i=1}^{N}\alpha _{i}\phi (x_{i}),\sum_{j=1}^{N}\alpha _{j}\phi (x_{j})>\\ =\left \|\sum_{i=1}^{N}\alpha _{i}\phi (x_{i}) \right \|^{2}\geq 0\\ \therefore K是半正定的。 Grammatrix:K=[K(xi,xj)]N×NαRn,αTKα0αTK=(α1α2αN)1×Na11a21aN1a12a22aN2a1Na2NaNNN×Nα1α2αNN×1=i=1Nj=1NαiαjKij=i=1Nj=1Nαiαj<ϕ(xi),ϕ(xj)>=i=1Nj=1Nαiαjϕ(xi)Tϕ(xj)=i=1Nαiϕ(xi)Tj=1Nαjϕ(xj)=[i=1Nαiϕ(xi)]Tj=1Nαjϕ(xj)=<i=1Nαiϕ(xi),j=1Nαjϕ(xj)>=i=1Nαiϕ(xi)20K

⇐ \Leftarrow :

   对 K 进 ⾏ 特 征 分 解 , 对 于 对 称 矩 阵 K = V Λ V T , 那 么 令 ϕ ( x i ) = λ i V i , 其 中 V i 是 特 征 向 量 , 于 是 就 构 造 了 K ( x , z ) = λ i λ j V i T V j 。 \;对K进⾏特征分解,对于对称矩阵K=V\Lambda V^{T},那么令\phi (x_{i})=\sqrt{\lambda _{i}}V_{i},\\其中V_{i}是特征 向量,于是就构造了K(x,z)=\sqrt{\lambda _{i}\lambda _{j}}V_{i}^{T}V_{j}。 KK=VΛVTϕ(xi)=λi ViViK(x,z)=λiλj ViTVj

得证。

说明一下证明矩阵半正定的两种方法:

①特征值 ≥ 0 \geq 0 0
∀ α ∈ R n , α T A α ≥ 0 \forall \alpha \in \mathbb{R}^{n},\alpha ^{T}A\alpha \geq 0 αRn,αTAα0

公众号同步更新


微信公众号


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
方法是一种在机器学习中广泛应用的方法,特别是在支持向量机 (SVM) 中。它的主要思想是将输入数据从原始空间转换到一个高维特征空间,使数据在该空间中更容易分离。而这种转换通常是通过函数 (Kernel Function) 来实现的。函数可以看作是一种相似度函数,它通过计算两个数据点之间的相似程度来确定它们在高维特征空间中的位置。常见的函数有线性、多项式、高斯等,不同的函数对应不同的特征空间和不同的分类效果。 方法的优点在于它可以处理非线性问题。在传统的线性分类器中,如果数据不是线性可分的,那么分类器的性能通常会很差。但是方法通过将数据映射到高维特征空间,使得数据在该空间中更容易分离,从而克服了线性分类器的缺点。此外,方法还具有尺度不变性、局部性和通用性等优点,可以应用于各种不同的机器学习任务和算法中。 然而,方法的缺点在于它的计算复杂度较高,尤其是在高维特征空间中,计算量会更大。此外,方法还需要选择合适的函数和参数,这通常需要进行交叉验证来确定,而且选择不当可能会导致过拟合或欠拟合等问题。 总的来说,方法是一种强大的机器学习工具,可以应用于各种不同类型的数据和不同的学习任务中。虽然它有一些缺点,但是通过合理选择函数和参数,以及优化算法等手段,可以克服这些问题,实现高效而准确的学习和分类。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值