机器学习入门-西瓜书总结笔记第六章


一、间隔与支持向量

里插入图片描述粗实线这个划分超平面所产生的分类结果是最鲁棒的,对未来示例的泛化能力最强
在样本空间中,划分超平面可通过如下线性方程来描述:
w T x + b = 0 , \pmb w^T\pmb x +b =0, wwwTxxx+b=0,
其中 w = ( w 1 ; w 2 ; ⋯   ; w d ) \pmb w =(w_1;w_2;\cdots;w_d) www=(w1;w2;;wd)为法向量,决定超平面的方向;b为位移项,决定了超平面与原点之间的距离
样本空间中任意点 x \pmb x xxx到超平面 ( w , b ) (\pmb w,b) (www,b)的距离可写为
r = ∣ w T x + b ∣ ∣ ∣ w ∣ ∣ r=\frac{ |\pmb w^T \pmb x +b|}{||\pmb w||} r=wwwwwwTxxx+b
{ w T x i + b ≥ + 1 , y i = + 1 w T x i + b ≤ − 1 , y i = − 1 \begin{cases} \pmb w^T \pmb x_i +b \geq +1, \quad y_i=+1\\ \pmb w^T \pmb x_i +b \leq -1, \quad y_i=-1 \end{cases} {wwwTxxxi+b+1,yi=+1wwwTxxxi+b1,yi=1
距离超平面最近的这几个训练样本点使上式的等号成立,它们被称为 “支持向量”(support vector),两个异类支持向量到超平面的距离之和为
γ = 2 ∣ ∣ w ∣ ∣ \gamma = \frac{2}{||\pmb w||} γ=www2
它被称为 “间隔”(margin)
在这里插入图片描述欲找到具有“最大间隔”(maximum margin)的划分超平面,就是要找到能满足约束的参数 w \pmb w www b b b,使得 γ \gamma γ最大,即
max ⁡ w , b 2 ∣ ∣ w ∣ ∣ s . t . y i ( w T x i + b ) ≥ 1 , i = 1 , 2 , ⋯   , m \underset {w,b}{\operatorname {max}} \frac{2}{||\pmb w||}\\ s.t.\quad y_i(\pmb w^T \pmb x_i +b) \geq 1, \quad i=1,2,\cdots,m w,bmaxwww2s.t.yi(wwwTxxxi+b)1,i=1,2,,m
可重写为
min ⁡ w , b 1 2 ∣ ∣ w ∣ ∣ 2 s . t . y i ( w T x i + b ) ≥ 1 , i = 1 , 2 , ⋯   , m \underset {w,b}{\operatorname {min}} \frac{1}{2}||\pmb w||^2\\ s.t.\quad y_i(\pmb w^T \pmb x_i +b) \geq 1, \quad i=1,2,\cdots,m w,bmin21www2s.t.yi(wwwTxxxi+b)1,i=1,2,,m
这就是支持向量机(Support Vector Machine,简称SVM)的基本型

二、对偶问题

支持向量机的基本型本身是一个 凸二次规划(convex quadratic programming),能直接用现成的优化计算包求解,但其实有更高效的方法

  • 对上式使用拉格朗日乘子法可得到其 “对偶问题”(dual problem) ,具体来说,对每条约束添加拉格朗日乘子 a i ≥ 0 a_i \geq 0 ai0,则该问题的拉格朗日函数可写为
    L ( w , b , a ) = 1 2 ∣ ∣ w ∣ ∣ 2 + ∑ i = 1 m a i ( 1 − y i ( w T x i + b ) ) , L(\pmb w,b ,\pmb a)=\frac{1}{2}||\pmb w||^2 + \sum_{i=1}^m a_i(1-y_i(\pmb w^T\pmb x_i +b)), L(www,b,aaa)=21www2+i=1mai(1yi(wwwTxxxi+b)),
    其中 a = ( a 1 ; a 2 ; ⋯   ; a m ) \pmb a=(a_1;a_2;\cdots;a_m) aaa=(a1;a2;;am),对 w \pmb w www b b b求偏导为0
    w = ∑ i = 1 m a i y i x i 0 = ∑ i = 1 m a i y i \pmb w = \sum_{i=1}^m a_i y_i \pmb x_i\\ 0=\sum_{i=1}^ma_iy_i www=i=1maiyixxxi0=i=1maiyi
    即可将 L ( w , b , a ) L(\pmb w,b ,\pmb a) L(www,b,aaa)中消去 w \pmb w www b b b,再考虑约束,就得到它的对偶问题
    max ⁡ a ∑ i = 1 m a i − 1 2 ∑ i = 1 m ∑ j = 1 m a i a j y i y j x i T x j s . t . ∑ i = 1 m a i y i = 0 a i ≥ 0 , i = 1 , 2 , ⋯   , m \underset {\pmb a}{\operatorname {max}} \sum_{i=1}^m a_i -\frac{1}{2}\sum_{i=1}^m\sum_{j=1}^m a_i a_j y_i y_j \pmb x_i^T\pmb x_j\\ s.t. \sum_{i=1}^m a_iy_i=0\\ a_i \geq 0 ,\quad i=1,2,\cdots,m aaamaxi=1mai21i=1mj=1maiajyiyjxxxiTxxxjs.t.i=1maiyi=0ai0,i=1,2,,m
    解出 a \pmb a aaa后,求出 w \pmb w www b b b即可得到模型
    f ( x ) = w T x + b = ∑ i = 1 m a i y i x i T x + b \begin{aligned} f(x) &= \pmb w^Tx+b\\ &=\sum_{i=1}^ma_iy_i\pmb x_i^T\pmb x +b \end{aligned} f(x)=wwwTx+b=i=1maiyixxxiTxxx+b
    支持向量的基本型有不等约束,因此上述过程需满足KKT(Karush-Kuhn-Tucker)条件,即要求
    { a i ≥ 0 ; y i f ( x i ) − 1 ≥ 0 ; a i ( y i f ( x i ) − 1 ) = 0 \begin{cases} a_i \geq 0;\\ y_if(\pmb x_i) - 1 \geq 0;\\ a_i(y_if(\pmb x_i) - 1)=0 \end{cases} ai0;yif(xxxi)10;ai(yif(xxxi)1)=0
    补充KKT条件资料
  • 显示出支持向量机的一个重要性质:训练完成后,大部分的训练样本都不需要保留,最终模型仅与支持向量相关
  • SMO(Sequential Minimal Optimization)节省计算开销,SMO每次选择两个变量 a i a_i ai a j a_j aj,并固定其他参数,在参数初始化后,SMO不断执行如下两个步骤直至收敛:1.选取一对需更新的变量 a i a_i ai a j a_j aj.2.固定 a i a_i ai a j a_j aj以外的参数,求解对偶问题获得更新后的 a i a_i ai a j a_j aj
  • 直观来看,KKT条件违背的程度越大,则变量更新后可能导致目标函数数值减幅增大。SMO先选取违背KKT条件程度最大的变量,第二个变量应选择一个使目标函数值减小最快的变量(计算复杂度高),SMO采用了一个启发式:使选取的两个变量所对应的样本之间间隔最大,约束可重新写为
    a i y i + a j y j = c , a i ≥ 0 , a j ≥ 0 a_iy_i+a_jy_j=c,\quad a_i \geq 0,a_j \geq 0 aiyi+ajyj=c,ai0,aj0
    其中
    c = − ∑ k = i , j a k y k c=-\sum_{k=i,j}a_ky_k c=k=i,jakyk
    如何确定偏移项 b b b呢?注意到对任意支持想想 ( x s , y s ) (x_s,y_s) (xs,ys)都有 y s f ( x s ) = 1 y_sf(x_s)=1 ysf(xs)=1,即
    y s ( ∑ i ∈ S a i y i x i T x s + b ) = 1 y_s(\sum_{i\in S}a_iy_i\pmb x_i^T \pmb x_s +b)=1 ys(iSaiyixxxiTxxxs+b)=1
    理论上可选取任意支持向量并通过求解上式得到 b b b,但现实任务中常采用一种更鲁棒的做法:使用所有支持向量求解的平均值
    b = 1 ∣ S ∣ ∑ s ∈ S ( y s − ∑ i ∈ S a i y i x i T x s ) b=\frac{1}{|S|}\sum_{s\in S}(y_s - \sum_{i\in S}a_iy_i\pmb x_i^T \pmb x_s) b=S1sS(ysiSaiyixxxiTxxxs)

三、核函数

在这里插入图片描述

  • 问题不一定是线性可分的,对这样的问题,可将样本从原始空间映射到一个更高维的特征空间,使得样本在这个特征空间内线性可分,令 ϕ ( x ) \phi(\pmb x) ϕ(xxx)表示 x \pmb x xxx映射后的特征向量,在特征空间中划分超平面所对应的模型可表示为
    f ( x ) = w T ϕ ( x ) + b f(\pmb x) = \pmb w^T \phi(\pmb x) + b f(xxx)=wwwTϕ(xxx)+b
    并有
    min ⁡ w , b 1 2 ∣ ∣ w ∣ ∣ 2 s . t . y i ( w T ϕ ( x ) + b ) ≥ 1 , i = 1 , 2 , ⋯   , m \underset {w,b}{\operatorname {min}}\frac{1}{2}||\pmb w||^2\\ s.t. \quad y_i(\pmb w^T \phi(\pmb x) + b)\geq 1,\quad i=1,2,\cdots,m w,bmin21www2s.t.yi(wwwTϕ(xxx)+b)1,i=1,2,,m
    其对偶问题是
    max ⁡ a ∑ i = 1 m a i − 1 2 ∑ i = 1 m ∑ j = 1 m a i a j y i y j ϕ ( x i ) T ϕ ( x j ) s . t . ∑ i = 1 m a i y i = 0 a i ≥ 0 , i = 1 , 2 , ⋯   , m \underset {\pmb a}{\operatorname {max}}\sum_{i=1}^ma_i - \frac{1}{2}\sum_{i=1}^m\sum_{j=1}^m a_i a_j y_i y_j\phi(\pmb x_i)^T\phi(\pmb x_j)\\ s.t.\quad \sum_{i=1}^m a_i y_i =0\\ a_i \geq0,\quad i=1,2,\cdots,m aaamaxi=1mai21i=1mj=1maiajyiyjϕ(xxxi)Tϕ(xxxj)s.t.i=1maiyi=0ai0,i=1,2,,m
    κ ( x i , x j ) = < ϕ ( x i , x j ) > = ϕ ( x i ) T ϕ ( x j ) \kappa(\pmb x_i, \pmb x_j)=<\phi(\pmb x_i,\pmb x_j)>=\phi (\pmb x_i)^T \phi (\pmb x_j) κ(xxxi,xxxj)=<ϕ(xxxi,xxxj)>=ϕ(xxxi)Tϕ(xxxj)
    替换式中相关项,求解得到
    f ( x ) = w T ϕ ( x ) + b = ∑ i = 1 m a i y I ϕ ( x i ) T ϕ ( x j ) + b = ∑ i = 1 m a i y i κ ( x i , x j ) + b \begin{aligned} f(\pmb x) &= \pmb w^T\phi (\pmb x) +b\\ &=\sum_{i=1}^m a_i y_I \phi(\pmb x_i)^T\phi(\pmb x_j)+b\\ &=\sum_{i=1}^ma_i y_i\kappa(\pmb x_i, \pmb x_j) + b \end{aligned} f(xxx)=wwwTϕ(xxx)+b=i=1maiyIϕ(xxxi)Tϕ(xxxj)+b=i=1maiyiκ(xxxi,xxxj)+b
    其中 κ ( ⋅ , ⋅ ) \kappa(\cdot,\cdot) κ(,)就是 “核函数”(kernel function),式中显示出模型最优解可通过训练样本的核函数展开,这一展开式亦称“支持向量展开式”(support vector expansion)
  • 定理:令 χ \chi χ为输入空间, κ ( ⋅ , ⋅ ) \kappa(\cdot,\cdot) κ(,)是定义在 χ × χ \chi \times \chi χ×χ上的对称函数,则 κ \kappa κ是核函数当且仅当对于任意 D = { x 1 , x 2 , ⋯   , x m } D=\{\pmb x_1, \pmb x_2,\cdots,\pmb x_m\} D={xxx1,xxx2,,xxxm},“核矩阵”(kernel matrix) K \Kappa K是半正定的:
    K = [ κ ( x 1 , x 1 ) ⋯ κ ( x i , x j ) ⋯ κ ( x 1 , x m ) ⋮ ⋱ ⋮ ⋱ ⋮ κ ( x i , x 1 ) ⋯ κ ( x i , x j ) ⋯ κ ( x i , x m ) ⋮ ⋱ ⋮ ⋱ ⋮ κ ( x m , x 1 ) ⋯ κ ( x m , x j ) ⋯ κ ( x m , x m ) ] \Kappa= \begin{bmatrix} \kappa(\pmb x_1, \pmb x_1)&\cdots&\kappa(\pmb x_i, \pmb x_j)&\cdots&\kappa(\pmb x_1, \pmb x_m)\\ \vdots&\ddots&\vdots&\ddots&\vdots\\ \kappa(\pmb x_i, \pmb x_1)&\cdots&\kappa(\pmb x_i, \pmb x_j)&\cdots&\kappa(\pmb x_i, \pmb x_m)\\ \vdots&\ddots&\vdots&\ddots&\vdots\\ \kappa(\pmb x_m, \pmb x_1)&\cdots&\kappa(\pmb x_m, \pmb x_j)&\cdots&\kappa(\pmb x_m, \pmb x_m)\\ \end{bmatrix} K=κ(xxx1,xxx1)κ(xxxi,xxx1)κ(xxxm,xxx1)κ(xxxi,xxxj)κ(xxxi,xxxj)κ(xxxm,xxxj)κ(xxx1,xxxm)κ(xxxi,xxxm)κ(xxxm,xxxm)
  • 定理表明,只要一个堆成函数所对应的核矩阵半正定,它就能作为核函数使用。事实上,对于一个半正定核矩阵,总能找到一个与之对应的映射 ϕ \phi ϕ。换言之,任何一个核函数都隐式地定义了一个称为 “再生核希尔伯特空间”(Reproducing Kernel Hilbert Space,简称RKHS) 的特殊空间
  • “核函数选择”成为支持向量机的最大变数
    在这里插入图片描述
    此外,还可通过函数组合得到,例如:
  • κ 1 \kappa_1 κ1 κ 2 \kappa_2 κ2为核函数,则对于任意正数 γ 1 \gamma_1 γ1 γ 2 \gamma_2 γ2,其线性组合
    γ 1 κ 1 + γ 2 κ 2 \gamma_1\kappa_1+\gamma_2\kappa_2 γ1κ1+γ2κ2
    也是核函数
    κ 1 ⊗ κ 2 ( x , z ) = κ 1 ( x , z ) κ 2 ( x , z ) \kappa_1 \otimes \kappa_2(\pmb x,\pmb z) =\kappa_1(\pmb x,\pmb z)\kappa_2(\pmb x,\pmb z) κ1κ2(xxx,zzz)=κ1(xxx,zzz)κ2(xxx,zzz)
    直积也是核函数
    对于任意函数 g ( x ) g(x) g(x)
    κ ( x , z ) = g ( x ) κ 1 ( x , z ) g ( z ) \kappa(\pmb x,\pmb z)= g(\pmb x)\kappa_1(\pmb x,\pmb z)g(\pmb z) κ(xxx,zzz)=g(xxx)κ1(xxx,zzz)g(zzz)
    也是核函数

四、软间隔与正则化

在这里插入图片描述

  • 所有样本均满足约束,即所有样本都必须划分正确,成为“硬间隔”(hard margin),而“软间隔”(soft margin)允许某些样本不满足约束
    y i ( w T x i + b ) ≥ 1 y_i(\pmb w^T \pmb x_i +b) \geq 1 yi(wwwTxxxi+b)1
    当然,在最大化间隔的同时,不满足约束的样本应尽可能少,优化目标可写为
    min ⁡ w , b 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 m ℓ 0 / 1 ( y i ( w T x i + b ) − 1 ) , \underset {w,b}{\operatorname {min}}\frac{1}{2}||\pmb w||^2 +C\sum_{i=1}^m \ell_{0/1}(y_i(\pmb w^T\pmb x_i +b )-1), w,bmin21www2+Ci=1m0/1(yi(wwwTxxxi+b)1),
    其中 C > 0 C>0 C>0是一个常数, ℓ 0 / 1 \ell_{0/1} 0/1是”0/1损失函数“
    ℓ 0 / 1 ( z ) = { 1 , i f z < 0 ; 0 , o t h e r w i s e . \ell_{0/1}(z)= \begin{cases} 1, \quad if z<0;\\ 0, \quad otherwise. \end{cases} 0/1(z)={1,ifz<0;0,otherwise.
  • 当C为无穷大时,迫使所有样本均满足约束;当C取有限值时,允许一些样本不满足约束
  • 0/1 不连续,数学性质不好,“替代损失”(surrogate loss) 一般具有较好的数学性质,如它们通常是凸连续函数且是 ℓ 0 / 1 \ell_{0/1} 0/1的上界,三种常用的替代损失函数:
    h i n d g e 损 失 函 数 : ℓ h i n g e ( z ) = m a x ( 0 , 1 − z ) ; 指 数 损 失 ( e x p o n e n t i a l l o s s ) : ℓ e x p ( z ) = e x p ( − z ) 对 率 损 失 ( l o g i s t i c l o s s ) : ℓ l o g ( z ) = l o g ( 1 + e x p ( − z ) ) hindge损失函数:\ell_{hinge}(z)=max(0,1-z);\\ 指数损失(exponential loss):\ell_{exp}(z)=exp(-z)\\ 对率损失(logistic loss): \ell_{log}(z)=log(1+exp(-z)) hindgehinge(z)=max(0,1z);(exponentialloss)exp(z)=exp(z)(logisticloss):log(z)=log(1+exp(z))
    若采用hinge损失,则变成:
    min ⁡ w , b 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 m max ⁡ ( 0 , 1 − y i ( w T x i + b ) ) \underset {w,b}{\operatorname {min}} \frac{1}{2}||\pmb w||^2+C\sum_{i=1}^m\operatorname {max}(0,1-y_i(\pmb w^T \pmb x_i +b)) w,bmin21www2+Ci=1mmax(0,1yi(wwwTxxxi+b))
    在这里插入图片描述

引用“松弛变量”(slack variables) ξ i ≥ 0 \xi_i\geq0 ξi0,可将式重写为
min ⁡ w , b , ξ i 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 m ξ i s . t . y i ( w T x i + b ) ≥ 1 − ξ i ξ i ≥ 0 , i = 1 , 2 , ⋯   , m . \underset {w,b,\xi_i}{\operatorname {min}}\frac{1}{2}||\pmb w||^2+C\sum_{i=1}{m}\pmb \xi_i\\ s.t.\quad y_i(\pmb w^T \pmb x_i + b)\geq1-\xi_i\\ \xi_i \geq0, \quad i=1,2,\cdots,m. w,b,ξimin21www2+Ci=1mξξξis.t.yi(wwwTxxxi+b)1ξiξi0,i=1,2,,m.
这就是常用的“软间隔支持向量机”,仍是一个二次规划问题,类似的,通过拉格朗日乘子法得到
L ( w , b , α , ξ , μ ) = 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 m ξ i + ∑ i = 1 m α i ( 1 − ξ i − y i ( w T x i + b ) ) − ∑ i = 1 m μ i ξ i \begin{aligned} L(\pmb w,b ,\pmb \alpha, \pmb \xi, \pmb \mu)&=\frac{1}{2}||\pmb w||^2+C\sum_{i=1}^m\xi_i\\ &+\sum_{i=1}^m\alpha_i(1-\xi_i-y_i(\pmb w^T \pmb x_i + b))-\sum_{i=1}^m\mu_i\xi_i\\ \end{aligned} L(www,b,ααα,ξξξ,μμμ)=21www2+Ci=1mξi+i=1mαi(1ξiyi(wwwTxxxi+b))i=1mμiξi

推导过程略

对软间隔支持向量机,KKT条件
{ α i ≥ 0 , μ i ≥ 0 , y i f ( x i ) − 1 + ξ i ≥ 0 , α i ( y i f ( x i ) − 1 + ξ i ) = 0 , ξ i ≥ 0 , μ i ξ i = 0. \begin{cases} \alpha_i\geq0,\quad \mu_i\geq0,\\ y_if(\pmb x_i)-1+\xi_i\geq 0,\\ \alpha_i(y_if(\pmb x_i)-1+\xi_i)=0,\\ \xi_i\geq0,\mu_i\xi_i=0. \end{cases} αi0,μi0,yif(xxxi)1+ξi0,αi(yif(xxxi)1+ξi)=0,ξi0,μiξi=0.

  • 软间隔支持向量最终模型仅与支持向量有关,即通过采用hinge损失函数仍保持了稀疏性
  • 如果使用对率损失函数 ℓ l o g \ell_{log} log来替代式中的0/1损失函数,则几何得到了对率回归模型
  • 对率回归的优势主要在于其输出具有自然的概率意义,即在给出预测标记的同时也给出了概率。而支持向量机的输出不具有概率意义,欲得到概率输出需进行特殊处理
  • 对率回归能够直接用于多分类任务,支持向量机为此则需要进行推广
  • 对数回归的解依赖于更多的训练样本,其预测开销更大
  • 可写为一般形式
    min ⁡ f Ω ( f ) + C ∑ i = 1 m ℓ ( f ( x i ) , y i ) , \underset {f}{\operatorname {min}}\Omega(f)+C\sum_{i=1}^m\ell(f(\pmb x_i),y_i), fminΩ(f)+Ci=1m(f(xxxi),yi),
    其中 Ω ( f ) \Omega(f) Ω(f)称为 “结构风险”(structural risk),用于描述模型f的某些性质;第二项 ∑ i = 1 m ℓ ( f ( x i ) , y i ) \sum_{i=1}^m\ell(f(\pmb x_i),y_i) i=1m(f(xxxi),yi)称为 “经验风险”(empirical risk),用于描述模型与训练数据的契合度;C用于对二者进行折中。
  • 从风险最小化的角度来看, Ω ( f ) \Omega(f) Ω(f)表达了我们希望获得具有何种性质的模型,这为引入领域知识和用户意图提供了途径;另一方面,该信息有助于削减假设空间,从而降低最小化训练误差的过拟合风险。从这个角度来说,上式称为 “正则化”(regularization) 问题, Ω ( f ) \Omega(f) Ω(f)称为正则化项,C则称为正则化常数, L ⁡ P \operatorname L_P LP范数(norm)是常用的正则化项
  • 其中L2范数 ∣ ∣ w ∣ ∣ 2 ||\pmb w||^2 www2倾向于 w \pmb w www的分量取值尽量均衡,即非零分量个数尽量稠密,而L0范数 ∣ ∣ w ∣ ∣ 0 ||\pmb w||_0 www0和L1范数 ∣ ∣ w ∣ ∣ 1 ||\pmb w||_1 www1则倾向 w \pmb w www的分量尽量稀疏,即非零向量个数尽量少

五、支持向量回归

  • 支持向量回归(Support Vector Regression,简称SVR)
    在这里插入图片描述SVR 问题可形式化为
    min ⁡ w , b 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 m ℓ ϵ ( f ( x i ) − y i , \underset {w,b}{\operatorname {min}}\frac{1}{2}||\pmb w||^2+C\sum_{i=1}^m\ell_{\epsilon}(f(\pmb x_i)-y_i, w,bmin21www2+Ci=1mϵ(f(xxxi)yi,
    其中C为正则化常数, ℓ ϵ \ell_{\epsilon} ϵ是图中所示的 ϵ \epsilon ϵ-不敏感损失( ϵ \epsilon ϵ-insensitive loss)函数
    ℓ ϵ ( z ) = { 0 , if ⁡ ∣ z ∣ ≤ ϵ ; ∣ z ∣ − ϵ , otherwise ⁡ \ell_{\epsilon}(z)= \begin{cases} 0,\quad \operatorname {if}|z|\leq\epsilon;\\ |z|-\epsilon, \quad \operatorname{otherwise} \end{cases} ϵ(z)={0,ifzϵ;zϵ,otherwise
    在这里插入图片描述
    引入松弛变量 ξ i \xi_i ξi ξ ^ i \hat \xi_i ξ^i,可将式重写为
    min ⁡ w , b , ξ i , ξ ^ i 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 m ( ξ i + ξ ^ i ) s . t . f ( x i ) − y i ≤ ϵ + ξ i y i − f ( x i ) ≤ ϵ + ξ ^ i ξ i ≥ 0 , ξ ^ i ≥ 0 , i = 1 , 2 , ⋯   , m . \underset{w,b,\xi_i,\hat \xi_i}{\operatorname {min}}\frac{1}{2}||\pmb w||^2+C\sum_{i=1}^m(\xi_i+\hat \xi_i)\\ s.t. \quad f(\pmb x_i)-y_i \leq \epsilon + \xi_i\\ y_i- f(\pmb x_i)\leq \epsilon + \hat \xi_i\\ \xi_i\geq0,\hat \xi_i \geq 0,i=1,2,\cdots,m. w,b,ξi,ξ^imin21www2+Ci=1m(ξi+ξ^i)s.t.f(xxxi)yiϵ+ξiyif(xxxi)ϵ+ξ^iξi0,ξ^i0,i=1,2,,m.

推导过程略

KKT条件
{ α i ( f ( x i ) − y i − ϵ − ξ i ) = 0 , α ^ i ( y i − f ( x i ) − ϵ − ξ ^ i ) = 0 , α i α ^ i = 0 , ξ i ξ ^ i = 0 ( C − α i ) ξ i = 0 , ( C − α ^ i ) ξ ^ i = 0. \begin{cases} \alpha_i(f(\pmb x_i)-y_i-\epsilon -\xi_i)=0,\\ \hat \alpha_i(y_i-f(\pmb x_i)-\epsilon -\hat \xi_i)=0,\\ \alpha_i\hat \alpha_i=0,\xi_i\hat \xi_i=0\\ (C-\alpha_i)\xi_i=0,(C-\hat \alpha_i)\hat \xi_i=0. \end{cases} αi(f(xxxi)yiϵξi)=0,α^i(yif(xxxi)ϵξ^i)=0,αiα^i=0,ξiξ^i=0(Cαi)ξi=0,(Cα^i)ξ^i=0.

  • 仅当样本 ( x i , y i ) (\pmb x_i,y_i) (xxxi,yi)不落入 ϵ \epsilon ϵ-间隔带中,相应的 α i \alpha_i αi α ^ i \hat \alpha_i α^i才能取非零值
    SVR可表示为
    f ( x ) = ∑ i = 1 m ( α ^ i − α i ) κ ( x , x i ) + b f(\pmb x)=\sum_{i=1}^m(\hat \alpha_i - \alpha_i)\kappa(\pmb x, \pmb x_i) +b f(xxx)=i=1m(α^iαi)κ(xxx,xxxi)+b
    其中 κ ( x i , x j ) = ϕ ( x i ) T ϕ ( x j ) \kappa(\pmb x_i, \pmb x_j)=\phi(\pmb x_i)^T\phi(\pmb x_j) κ(xxxi,xxxj)=ϕ(xxxi)Tϕ(xxxj)
    这节推导部分很多,省略了很多

六、核方法

  • “表示定理”(representer theorem)令 H \mathbb{H} H为核函数 κ \kappa κ对应的再生核希泊尔特空间, ∣ ∣ h ∣ ∣ H ||h||_{H} hH表示空间中关于h的范数,对于任意单调递增函数 Ω : [ 0 , ∞ ) ↦ R \Omega:[0,\infty)\mapsto \mathbb{R} Ω:[0,)R和任意非损失函数 ℓ : R ↦ [ 0 , ∞ ] \ell:\mathbb{R}\mapsto[0,\infty] :R[0,],优化问题
    min ⁡ h ∈ H F ( h ) = Ω ( ∣ ∣ h ∣ ∣ H ) + ℓ ( h ( x 1 ) , h ( x 2 ) , ⋯   , h ( x m ) ) \underset{h\in \mathbb{H}}{\operatorname {min}}F(h) = \Omega(||h||_H)+\ell(h(\pmb x_1),h(\pmb x_2),\cdots,h(\pmb x_m)) hHminF(h)=Ω(hH)+(h(xxx1),h(xxx2),,h(xxxm))
    解总可以写为
    h ∗ ( x ) = ∑ i = 1 m α i κ ( x , x i ) h^*(\pmb x) = \sum_{i=1}^{m}\alpha_i\kappa(\pmb x,\pmb x_i) h(xxx)=i=1mαiκ(xxx,xxxi)
  • 基于核函数的学习方法,统称为 “核方法”(kernel methods) 最常见的,是通过“核化”(即引入核函数)来将线性学习器拓展为非线性学习器
  • “核线性判别分析”(Kernelized Linear Discriminant Analysis,简称KLDA)
    先假设可通过某种映射 ϕ : χ ↦ F \phi:\chi\mapsto \mathbb{F} ϕ:χF将样本映射到一个特征空间 F \mathbb{F} F,然后在 F \mathbb{F} F中执行线性判别分析,以求得
    h ( x ) = w T ϕ ( x ) h(\pmb x)=\pmb w^T \phi(\pmb x) h(xxx)=wwwTϕ(xxx)
    KLDA的学习目标是
    max ⁡ w J ( w ) = w T S b ϕ w w T S w ϕ w , \underset{w}{\operatorname {max}}J(\pmb w)=\frac{\pmb w^TS_b^{\phi}\pmb w}{\pmb w^TS_w^{\phi}\pmb w}, wmaxJ(www)=wwwTSwϕwwwwwwTSbϕwww,
    S b ϕ S_b^{\phi} Sbϕ S w ϕ S_w^{\phi} Swϕ分别为训练样本在特征空间 F \mathbb{F} F中的类间散度矩阵和类内散度矩阵,令 X i X_i Xi表示第 i ∈ { 0 , 1 } i\in\{0,1\} i{0,1}类样本的集合,其样本数为 m i m_i mi;总样本数 m = m 0 + m 1 m=m_0+m_1 m=m0+m1.第i类样本在特征空间 F \mathbb{F} F中的均值为
    μ i ϕ = 1 m i ∑ x ∈ X i ϕ ( x ) \pmb \mu_i^{\phi}=\frac{1}{m_i}\sum_{x \in X_i}\phi(\pmb x) μμμiϕ=mi1xXiϕ(xxx)
    两个散度矩阵分别为
    S b ϕ = ( μ 1 ϕ − μ 0 ϕ ) ( μ 1 ϕ − μ 0 ϕ ) T S w ϕ = ∑ i = 1 1 ∑ s ∈ X i ( ϕ ( x ) − μ i ϕ ) ( ϕ ( x ) − μ i ϕ ) T S_b^{\phi}=(\pmb \mu_1^{\phi}-\pmb \mu_0^{\phi})(\pmb \mu_1^{\phi}-\pmb \mu_0^{\phi})^T\\ S_w^{\phi}=\sum_{i=1}^1\sum_{s\in X_i}(\phi(\pmb x)-\pmb \mu_i^{\phi})(\phi(\pmb x)-\pmb \mu_i^{\phi})^T Sbϕ=(μμμ1ϕμμμ0ϕ)(μμμ1ϕμμμ0ϕ)TSwϕ=i=11sXi(ϕ(xxx)μμμiϕ)(ϕ(xxx)μμμiϕ)T
    通常我们难以知道映射 ϕ 的 具 体 形 式 , 因 此 \phi的具体形式,因此 ϕ使用核函数 κ ( x , x i ) = ϕ ( x i ) T ϕ ( x ) \kappa(\pmb x,\pmb x_i)=\phi(\pmb x_i)^T\phi(\pmb x) κ(xxx,xxxi)=ϕ(xxxi)Tϕ(xxx)来隐式表达这个映射和特征空间 F \mathbb{F} F
    由表示定理,函数 h ( x ) h(\pmb x) h(xxx)可写为
    h ( x ) = ∑ i = 1 m α i κ ( x , x i ) = ∑ i = 1 m α i ϕ ( x i ) T ϕ ( x ) = ( ∑ i = 1 m α i ϕ ( x i ) ) T ϕ ( x ) \begin{aligned} h(\pmb x) &= \sum_{i=1}^m\alpha_i\kappa(\pmb x,\pmb x_i)\\ &=\sum_{i=1}^m\alpha_i\phi(\pmb x_i)^T\phi(\pmb x)\\ &=(\sum_{i=1}^m\alpha_i\phi(\pmb x_i))^T\phi(\pmb x) \end{aligned} h(xxx)=i=1mαiκ(xxx,xxxi)=i=1mαiϕ(xxxi)Tϕ(xxx)=(i=1mαiϕ(xxxi))Tϕ(xxx)
    可得
    w = ∑ i = 1 m α i ϕ ( x i ) \pmb w = \sum_{i=1}^m\alpha_i\phi(\pmb x_i) www=i=1mαiϕ(xxxi)
    K ∈ R m × m \pmb K \in \mathbb R^{m\times m} KKKRm×m为核函数 κ \kappa κ所对应的核矩阵, ( K ) i j = κ ( x i , x j ) (\pmb K)_{ij}=\kappa(\pmb x_i,\pmb x_j) (KKK)ij=κ(xxxi,xxxj).令 1 i ∈ { 1 , 0 } m × 1 1_i\in\{1,0\}^{m\times 1} 1i{1,0}m×1为第i类样本的指示向量,即 1 i 1_i 1i的第j个分量为1当且仅当 x j ∈ X i \pmb x_j\in X_i xxxjXi,否则 1 i 1_i 1i的第j个分量为0.再令
    μ ^ 0 = 1 m 0 K 1 0 , μ ^ 1 = 1 m 1 K 1 1 , M = ( μ ^ 0 − μ ^ 1 ) ( μ ^ 0 − μ ^ 1 ) T N = K K T − ∑ i = 0 1 m i μ ^ i μ ^ i T \hat \mu_0 = \frac{1}{m_0}\pmb K1_0,\\ \hat \mu_1 = \frac{1}{m_1}\pmb K1_1,\\ \pmb M = (\hat \mu_0 - \hat \mu_1)(\hat \mu_0 - \hat \mu_1)^T\\ \pmb N = \pmb K\pmb K^T - \sum_{i=0}^1m_i\hat \mu_i\hat \mu_i^T μ^0=m01KKK10,μ^1=m11KKK11,MMM=(μ^0μ^1)(μ^0μ^1)TNNN=KKKKKKTi=01miμ^iμ^iT
    于是有
    max ⁡ α J ( α ) = α T M α α T N α \underset{\alpha}{\operatorname{max}}J(\pmb \alpha)= \frac{\pmb \alpha^T\pmb M \pmb \alpha}{\pmb \alpha^T\pmb N \pmb \alpha} αmaxJ(ααα)=αααTNNNααααααTMMMααα
    显然,使用线性判别分析求解方法即可得到 α \pmb \alpha ααα,进而可得到投影函数 h ( x ) h(\pmb x) h(xxx)

总结

本节推导内容较多,省略了部分内容。

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值