线性可分情况下,支持向量机寻找最佳超平面的优化问题可以表示为:
最 小 化 ( M i n i m i z e ) : 1 2 ∥ ω ∥ 2 限 制 条 件 : y i ( ω T x i + b ) ≥ 1 , ( i = 1 ∼ N ) \begin{aligned} 最小化 (Minimize): & \quad \frac{1}{2} \left\| \omega \right\| ^2 \\ 限制条件: & \quad y_i(\omega^Tx_i + b ) \geq 1 , (i = 1 \sim N) \end{aligned} 最小化(Minimize):限制条件:21∥ω∥2yi(ωTxi+b)≥1,(i=1∼N)
如果训练样本集是线性不可分的,那么以上优化问题的解,是什么呢?
在稍微思考下,以上的问题,是没有解的。
即:不存在 ω 和 b \omega \ 和 \ b ω 和 b 满足上面所有的 N N N 个限制条件。
对于线性不可分的情况,我们要适当的放松限制条件。使上面的最优化问题变得有解。
放 松 限 制 条 件 的 基 本 思 路 ⇓ 对 每 个 训 练 样 本 及 标 签 ( X i , Y i ) ⇓ 松 弛 变 量 δ i ( s l a c k v a r i a b l e ) \begin{aligned} 放松限制&条件的基本思路 \\ &\Downarrow \\ 对每个训练样&本及标签(X_i,Y_i) \\ &\Downarrow \\ 松弛&变量\delta_i \\ (slack \ \ &variable) \end{aligned} 放松限制对每个训练样松弛(slack 条件的基本思路⇓本及标签(Xi,Yi)⇓变量δivariable)
于是,我们可以将上面的 N N N 个不等式的限制条件放松为如下的 N N N 个不等式。
限 制 条 件 改 写 : y i ( ω T X i + b ) ≥ 1 − δ i , ( i = 1 ∼ N ) 限制条件改写: \quad y_i(\omega^TX_i + b) \geq 1 - \delta_i , (i = 1 \sim N ) 限制条件改写:yi(ωTXi+b)≥1−δi,(i=1∼N)
只要松弛变量足够的大,上面的N个不等式的限制条件,是一定能够成立的。
当然,我们还要加入一些新的限制。阻止 δ i \delta_i δi 无限制的扩大,让他限制在一定的合理范围之内。。
最终的优化版本
最 小 化 : 1 2 ∣ ∣ ω ∣ ∣ 2 + C ∑ i = 1 N δ i 或 1 2 ∣ ∣ ω ∣ ∣ 2 + C ∑ i = 1 N δ i 2 限 制 条 件 : ( 1 ) δ i ≥ 0 , ( i = 1 ∼ N ) ( 2 ) y i ( w T X i + b ) ≥ 1 − δ i , ( i = 1 ∼ N ) \begin{aligned} 最小化: &\quad \frac{1}{2} \left|| \omega \right|| ^2 + C\sum^N_{i=1} \delta_i \ 或 \ \frac{1}{2} \left|| \omega \right||^2 + C \sum^N_{i=1}\delta_i^2 \\ 限制条件: &\\ &(1)\quad \delta_i \geq 0 , (i = 1\sim N) \\ &(2)\quad y_i(w^TX_i +b) \geq 1- \delta_i,(i=1\sim N) \end{aligned} 最小化:限制条件:21∣∣ω∣∣2+Ci=1∑Nδi 或 21∣∣ω∣∣2+Ci=1∑Nδi2(1)δi≥0,(i=1∼N)(2)yi(wTXi+b)≥1−δi,(i=1∼N)
限制条件一,保证了每个δi是大于等于零的;限制条件二,使以前难以达到的不等式变得容易达到。
以 前 的 目 标 函 数 只 需 要 最 小 化 1 2 ∣ ∣ ω ∣ ∣ 2 现 在 的 目 标 函 数 增 加 了 一 项 所 有 δ i 的 和 \begin{aligned} 以前的目标函数只需要最小化 \ \ & \frac{1}{2} \left|| \omega \right||^2 \\ 现在的目标函数增加了一项 \ \ \ & 所有 \delta_i 的和 \end{aligned} 以前的目标函数只需要最小化 现在的目标函数增加了一项 21∣∣ω∣∣2所有δi的和
既要让 ω \omega ω 越小越好,同时也要让 δ i \delta_i δi 越小越好。
其中,有一个比例因子 C C C ,起到了平衡两项权重的作用。
在实际的应用当中,也可以取另一种目标函数,用 δ i 2 \delta_i^2 δi2 代替 δ i \delta_i δi ,二者间的差距很小,可以看出,他们都是凸优化问题,都可以被高效的求解
其中比例因子 C C C 是人为设定的,我们把人为设定的参数叫做算法的超参数(HYPER PARAMETER)。
在实验中,我们会不断变化 C C C 的值,同时测试算法的识别率,选取效果最好的值作为超参数 C C C 的取值。
可以看出,如果一个算法的超参数越多,那么手动调参的时间也就越多。这样,算法的自动性也会降低。
支持向量机是超参数很少的算法模型。
超参数很多的模型有人工神经网络,卷积神经网络等等。
以下,是在线性不可分的情况下应用支持向量机的例子。
这里, C C C 取了 10000,让 δ \delta δ 的权重别的很大,使得它本身的值在优化过程中变得很小,接近于零,使得超平面和线性可分情况保持基本一致。
在 线 性 不 可 分 情 况 下 应 用 支 持 向 量 机 取 目 标 函 数 : 1 2 ∣ ∣ ω ∣ ∣ 2 + C ∑ i = 1 N δ i , C = 10000 超 平 面 和 线 性 可 分 情 况 保 持 基 本 一 致 \begin{aligned} 在线性不可分情&况下应用支持向量机 \\ &取目标函数: \frac{1}{2} \left|| \omega \right|| ^2 + C\sum^N_{i=1} \delta_i \ , C = 10000 \\ &超平面和线性可分情况保持基本一致 \end{aligned} 在线性不可分情况下应用支持向量机取目标函数:21∣∣ω∣∣2+Ci=1∑Nδi ,C=10000超平面和线性可分情况保持基本一致
虽然支持向量机求出了一个超平面,但是这个解远远不能让人满意。分错了将近一半的训练样本,跟瞎猜没有区别。
那么问题出在哪里?
我们的算法模型是线性的,也就说我们假设分开两类的函数是直线或超平面,我们是在一簇直线或超平面中选择最适合分开两类样本的一条直线或超平面,但是线性模型的表现力是不够的,在这个例子中,很明显,能分开他们的是某种曲线,例如中间这个椭圆。
如果我们坚持分开两类的必须是直线,无论我们怎么选择,最终的结果都是不能使人满意的,因此,我们只能扩大可选的函数范围。
使他超越线性,才能使他应对各种复杂的线性不可分的情况。
一个模型中的训练样本如下图所示,问能否对 X 1 , X 2 X_1,X_2 X1,X2 两个向量做某种非线性变换,把本来线性不可分的训练样本集变为线性可分?
如何扩大可选函数的范围,从而提高支持向量机处理非线性可分问题的能力?
支持向量机在这方面是独树一帜的,其他的算法比如人工神经网络、决策树等是直接产生更多可选函数。
例如在人工神经网络中,通过多层非线性函数的组合,能够产生类似于椭圆这样的曲线,从而分开这幅图中圆圈和叉。
支持向量机却不是直接产生,而是通过将特征空间由低维映射到高维,然后在高维的特征空间中,仍然用线性的超平面对数据进行分类。下面给出两张直观的图片。
再给一个具体的例子,这是一个在低维线性不可分,而在高维中线性可分的例子。考察如下图所示的训练样本。
x 1 = [ 0 0 ] ∈ C 1 x 2 = [ 1 1 ] ∈ C 1 x 3 = [ 1 0 ] ∈ C 2 x 4 = [ 0 1 ] ∈ C 2 x_1 = \begin{bmatrix} 0 \\ 0 \end{bmatrix} \in C_1 \qquad x_2 = \begin{bmatrix} 1 \\ 1 \end{bmatrix} \in C_1 \qquad x_3 = \begin{bmatrix} 1 \\ 0 \end{bmatrix} \in C_2 \qquad x_4 = \begin{bmatrix} 0 \\ 1 \end{bmatrix} \in C_2 \qquad x1=[00]∈C1x2=[11]∈C1x3=[10]∈C2x4=[01]∈C2
构造一个二维到五维的映射 φ ( x ) \varphi(x) φ(x)
φ ( x ) : x = [ a b ] → φ ( x ) = [ a 2 b 2 a b a b ] \varphi(x) : x = \begin{bmatrix} a \\ b \end{bmatrix} \rightarrow \varphi(x) = \begin{bmatrix} a^2 \\ b^2 \\a \\ b \\ ab \end{bmatrix} φ(x):x=[ab]→φ(x)=⎣⎢⎢⎢⎢⎡a2b2abab⎦⎥⎥⎥⎥⎤
那么,可以得到如下经过变换的四个样本:
φ ( x 1 ) = [ 0 0 0 0 0 ] φ ( x 2 ) = [ 1 1 1 1 1 ] φ ( x 3 ) = [ 1 0 1 0 0 ] φ ( x 4 ) = [ 0 1 0 1 0 ] \varphi(x_1) = \begin{bmatrix} 0 \\ 0 \\0 \\ 0 \\ 0 \end{bmatrix} \qquad \varphi(x_2) = \begin{bmatrix} 1 \\ 1\\1 \\ 1 \\ 1 \end{bmatrix} \qquad \varphi(x_3) = \begin{bmatrix} 1 \\ 0 \\1 \\ 0 \\ 0 \end{bmatrix} \qquad \varphi(x_4) = \begin{bmatrix} 0 \\ 1 \\0 \\ 1 \\ 0 \end{bmatrix} \qquad φ(x1)=⎣⎢⎢⎢⎢⎡00000⎦⎥⎥⎥⎥⎤φ(x2)=⎣⎢⎢⎢⎢⎡11111⎦⎥⎥⎥⎥⎤φ(x3)=⎣⎢⎢⎢⎢⎡10100⎦⎥⎥⎥⎥⎤φ(x4)=⎣⎢⎢⎢⎢⎡01010⎦⎥⎥⎥⎥⎤
经过此变换,原问题变得线性可分。
设 : ω = [ − 1 − 1 − 1 − 1 6 ] b = 1 ω T φ ( x 1 ) + b = 1 ≥ 0 ω T φ ( x 2 ) + b = 3 ≥ 0 ω T φ ( x 3 ) + b = − 1 < 0 ω T φ ( x 4 ) + b = − 1 < 0 经 由 二 维 到 五 维 的 映 射 φ ( x ) 线 性 不 可 分 ⇓ 线 性 可 分 \begin{aligned} 设: \omega = \begin{bmatrix} -1 \\ -1 \\ -1 \\-1 \\ 6 \end{bmatrix} & \qquad b=1 \\ \omega^T\varphi(x_1)+b=1 \geq 0 & \qquad \omega^T\varphi(x_2)+b=3 \geq 0 \\ \omega^T\varphi(x_3)+b=-1 \lt 0 & \qquad \omega^T\varphi(x_4)+b=-1 \lt 0 \\ \\ 经由二维到&五维的映射\varphi(x) \\ 线性&不可分 \\ &\Downarrow \\ 线&性可分 \end{aligned} 设:ω=⎣⎢⎢⎢⎢⎡−1−1−1−16⎦⎥⎥⎥⎥⎤ωTφ(x1)+b=1≥0ωTφ(x3)+b=−1<0经由二维到线性线b=1ωTφ(x2)+b=3≥0ωTφ(x4)+b=−1<0五维的映射φ(x)不可分⇓性可分
我们这里不加证明的给出一个定理。
定理: 在 一 个 M 维 空 间 上 随 机 取 N 个 训 练 样 本 , 随 机 的 对 每 个 训 练 样 本 赋 予 标 签 + 1 或 − 1 假 设 : 这 些 训 练 样 本 线 性 可 分 的 概 率 为 P ( M ) 当 M → ∞ 时 , P ( M ) = 1 \begin{aligned} &\textbf{定理:} \newline \\ &&&在一个M维空间上随机取N个训练样本,随机的对每个训练样本赋予标签 +1 或 -1 \newline \\ &假设: \newline \\ &&&这些训练样本线性可分的概率为P(M) \newline \\ &&&当 \quad M \rightarrow \infty \quad 时,\quad P(M)=1 \end{aligned} 定理:假设:在一个M维空间上随机取N个训练样本,随机的对每个训练样本赋予标签+1或−1这些训练样本线性可分的概率为P(M)当M→∞时,P(M)=1
当特征空间的维度 M M M 增加时,待估计参数 ( ω , b ) (\omega , b ) (ω,b) 的维度也在跟随增加。
同时,整个算法模型的自由度也随之增加。
当然,这就更有可能分开低维空间无法分开的数据。
将 训 练 样 本 由 低 维 映 射 到 高 维 ⇓ 增 大 线 性 可 分 的 概 率 \begin{aligned} 将训练样本&由低维映射到高维 \newline \\ &\Downarrow \newline \\ 增大线性&可分的概率 \end{aligned} 将训练样本增大线性由低维映射到高维⇓可分的概率
那么如何设计这个 φ ( x ) \varphi(x) φ(x) 就成为最关键的问题。
我们先放下对 φ ( x ) \varphi(x) φ(x) 的具体形式的探讨,先假设 φ ( x ) \varphi(x) φ(x) 已经确定。
来观察支持向量机优化问题将会做什么样的改变。
低 维 : 最 小 化 : 1 2 ∣ ∣ ω ∣ ∣ 2 + C ∑ i = 1 N δ i 或 1 2 ∣ ∣ ω ∣ ∣ 2 + C ∑ i = 1 N δ i 2 限 制 条 件 : ( 1 ) δ i ≥ 0 , ( i = 1 ∼ N ) ( 2 ) y i ( w T X i + b ) ≥ 1 − δ i , ( i = 1 ∼ N ) ⇓ x → φ ( x ) 高 维 : 最 小 化 : 1 2 ∣ ∣ ω ∣ ∣ 2 + C ∑ i = 1 N δ i 或 1 2 ∣ ∣ ω ∣ ∣ 2 + C ∑ i = 1 N δ i 2 限 制 条 件 : ( 1 ) δ i ≥ 0 , ( i = 1 ∼ N ) ( 2 ) y i [ w T φ ( X i ) + b ] ≥ 1 − δ i , ( i = 1 ∼ N ) X i ⇒ 被 φ ( X i ) 替 代 ω 维 度 与 X i 维 度 相 同 ⇒ ω 维 度 与 φ ( X i ) 维 度 相 同 \begin{aligned} &低维: \\ &最小化: && \frac{1}{2} \left|| \omega \right|| ^2 + C\sum^N_{i=1} \delta_i \ 或 \ \frac{1}{2} \left|| \omega \right||^2 + C \sum^N_{i=1}\delta_i^2 \\ &限制条件: \\ &&&(1)\ \delta_i \geq 0 , (i = 1\sim N) \\ &&&(2)\ y_i(w^TX_i +b) \geq 1- \delta_i,(i=1\sim N) \\ \\ &&\Downarrow x \rightarrow \varphi(x) \\ \\ &高维: \\ &最小化: && \frac{1}{2} \left|| \omega \right|| ^2 + C\sum^N_{i=1} \delta_i \ 或 \ \frac{1}{2} \left|| \omega \right||^2 + C \sum^N_{i=1}\delta_i^2 \\ &限制条件: \\ &&&(1)\ \delta_i \geq 0 , (i = 1\sim N) \\ &&&(2)\ y_i[w^T\varphi(X_i) +b] \geq 1- \delta_i,(i=1\sim N) \\ \\ &&&X_i \Rightarrow 被\varphi(X_i)替代 \\ &&&\omega维度与 X_i维度相同 \Rightarrow \omega维度与 \varphi(X_i)维度相同 \end{aligned} 低维:最小化:限制条件:高维:最小化:限制条件:⇓x→φ(x)21∣∣ω∣∣2+Ci=1∑Nδi 或 21∣∣ω∣∣2+Ci=1∑Nδi2(1) δi≥0,(i=1∼N)(2) yi(wTXi+b)≥1−δi,(i=1∼N)21∣∣ω∣∣2+Ci=1∑Nδi 或 21∣∣ω∣∣2+Ci=1∑Nδi2(1) δi≥0,(i=1∼N)(2) yi[wTφ(Xi)+b]≥1−δi,(i=1∼N)Xi⇒被φ(Xi)替代ω维度与Xi维度相同⇒ω维度与φ(Xi)维度相同
高维情况下,优化问题的解法与低维情况下优化问题的解法是完全类似的,都可以利用凸优化问题进行求解。
在支持向量机中,低维到高维的映射 φ ( x ) \varphi(x) φ(x) 具体取什么样的形式呢?
引入了映射 φ ( x ) \varphi(x) φ(x) 后,就需要去研究它的具体形式,而支持向量机的提出者( V l a d i m i r N a u m o v i c h V a p n i k Vladimir Naumovich Vapnik VladimirNaumovichVapnik)关于 φ ( x ) \varphi(x) φ(x) 的形式是富有创意的。
我们不用知道 φ ( x ) \varphi(x) φ(x) 的具体形式,取而代之,如果对任意两个向量 X 1 , X 2 X_1,X_2 X1,X2 满足下列公式,那么我们仍然能够通过一些技巧来获得样本 X X X 的类别信息,从而完成对测试样本类别的预测。
K ( X 1 , X 2 ) = φ ( X 1 ) T φ ( X 2 ) ⇓ 核 函 数 ( K e r n e l F u n c t i o n ) \begin{aligned} K( & X_1,X_2) = \varphi(X_1)^T\varphi(X_2) \\ & \Downarrow \\ 核 & 函数 (Kernel \ Function) \\ \end{aligned} K(核X1,X2)=φ(X1)Tφ(X2)⇓函数(Kernel Function)
核函数是一个实数,这一点也可以从等式的右边看出来,它是两个向量的内积。
举两个例子,来说明核函数预计低维到高维的映射 φ ( x ) \varphi(x) φ(x) 之间的相互关系。
1.已知映射 φ ( x ) \varphi(x) φ(x) ,求核函数 K ( X 1 , X 2 ) K(X_1,X_2) K(X1,X2)
假设 φ ( x ) \varphi(x) φ(x) 是一个将二维向量映射为三维向量的映射。
X = [ x 1 , x 2 ] T φ ( X ) = φ ( [ x 1 , x 2 ] T ) = [ x 1 2 , x 1 x 2 , x 2 2 ] T X 1 = [ x 11 , x 12 ] T X 2 = [ x 21 , x 22 ] T φ ( X 1 ) = [ x 11 2 , x 11 x 12 , x 12 2 ] T φ ( X 2 ) = [ x 21 2 , x 21 x 22 , x 22 2 ] T K ( X 1 , X 2 ) = φ ( X 1 ) T φ ( X 2 ) = [ x 11 2 , x 11 x 12 , x 12 2 ] [ x 21 2 , x 21 x 22 , x 22 2 ] T = x 11 2 x 22 2 + x 11 x 12 x 21 x 22 + x 12 2 x 22 2 \begin{aligned} X &= [x_1,x_2]^T \newline \\ \varphi(X)=\varphi([x_1,x_2]^T)&=[\ x_1^2,\ x_1x_2,\ x_2^2]^T \newline \newline \\ \\ X_1 = [x_{11},x_{12}]^T & \qquad X_2 = [x_{21},x_{22}]^T \newline \newline \\ \\ \varphi(X_1)&=[x_{11}^2,x_{11}x_{12},x_{12}^2]^T \newline \\ \varphi(X_2)&=[x_{21}^2,x_{21}x_{22},x_{22}^2]^T \newline \newline \\ \\ K(X_1,X_2) &= \varphi(X_1)^T\varphi(X_2) \newline \\ & = [x_{11}^2,x_{11}x_{12},x_{12}^2][x_{21}^2,x_{21}x_{22},x_{22}^2]^T \newline \\ & = x_{11}^2x_{22}^2+x_{11}x_{12}x_{21}x_{22}+x_{12}^2x_{22}^2 \end{aligned} Xφ(X)=φ([x1,x2]T)X1=[x11,x12]Tφ(X1)φ(X2)K(X1,X2)=[x1,x2]T=[ x12, x1x2, x22]TX2=[x21,x22]T=[x112,x11x12,x122]T=[x212,x21x22,x222]T=φ(X1)Tφ(X2)=[x112,x11x12,x122][x212,x21x22,x222]T=x112x222+x11x12x21x22+x122x222
2.已知核函数 K ( X 1 , X 2 ) K(X_1,X_2) K(X1,X2) 求映射 φ ( x ) \varphi(x) φ(x)
假设 X X X 是一个二维向量,且核函数 K ( X 1 , X 2 ) K(X_1,X_2) K(X1,X2) 已知。
X 1 = [ x 11 , x 12 ] T X 2 = [ x 21 , x 22 ] T K ( X 1 , X 2 ) = ( x 11 x 21 + x 12 x 22 + 1 ) 2 = x 11 2 x 21 2 + x 12 2 x 22 2 + 1 + 2 x 11 x 21 x 12 x 22 + 2 x 11 x 21 + 2 x 12 x 22 = φ ( X 1 ) T φ ( X 2 ) 假 设 : X = [ x 1 , x 2 ] T 则 : φ ( X ) = φ ( [ x 1 , x 2 ] T ) = [ x 1 2 , x 2 2 , 1 , 2 x 1 x 2 , 2 x 1 , 2 x 2 ] T K ( X 1 , X 2 ) 就 是 上 面 那 个 形 式 \begin{aligned} X_1 = [x_{11},x_{12}]^T &\qquad X_2 = [x_{21},x_{22}]^T \newline \newline \\ \\ K(X_1,X_2) &= (x_{11}x_{21} + x_{12}x_{22} + 1)^2 \newline \\ & = x_{11}^2x_{21}^2 + x_{12}^2x_{22}^2 + 1 + 2x_{11}x_{21}x_{12}x_{22} + 2x_{11}x_{21} + 2x_{12}x_{22} \newline \\ & = \varphi(X_1)^T\varphi(X_2) \newline \newline \\ \\ 假设:X &= [x_1,x_2]^T \newline \\ 则: \varphi(X) & = \varphi([x_1,x_2]^T) \newline \\ & = [x_1^2,x_2^2,1,\sqrt{2}x_1x_2,\sqrt{2}x_1,\sqrt{2}x_2]^T \newline \\ & K(X_1,X_2)就是上面那个形式 \end{aligned} X1=[x11,x12]TK(X1,X2)假设:X则:φ(X)X2=[x21,x22]T=(x11x21+x12x22+1)2=x112x212+x122x222+1+2x11x21x12x22+2x11x21+2x12x22=φ(X1)Tφ(X2)=[x1,x2]T=φ([x1,x2]T)=[x12,x22,1,2x1x2,2x1,2x2]TK(X1,X2)就是上面那个形式
核函数 K ( X 1 , X 2 ) K(X_1,X_2) K(X1,X2) 和映射 φ ( x ) \varphi(x) φ(x) 是一一对应的关系,核函数的形式不能随意的取,需满足一定的条件——两个 φ \varphi φ 内积的形式。
K ( X 1 , X 2 ) 能 写 成 φ ( X 1 ) T φ ( X 2 ) 的 充 要 条 件 ① K ( X 1 , X 2 ) = K ( X 1 , X 2 ) ( 交 换 性 ) ② ∀ C i ( i = 1 ∼ N ) , ∀ N 有 ∑ i = 1 N ∑ j = 1 N C i C j K ( X i , X j ) ≥ 0 ( 半 正 定 性 ) K 满 足 交 换 性 和 半 正 定 性 ⇒ φ 内 积 的 形 式 \begin{aligned} &K(X_1,X_2)能写成\varphi(X_1)^T\varphi(X_2) 的充要条件 \newline \\ &① \quad K(X_1,X_2) = K(X_1,X_2) \quad (交换性) \newline \\ &② \quad \forall C_i(i=1\sim N),\forall N \ 有 \sum^N_{i=1}\sum^N_{j=1}C_iC_jK(X_i,X_j) \geq 0 \quad (半正定性) \newline \\ & K满足交换性和半正定性 \Rightarrow \varphi 内积的形式 \end{aligned} K(X1,X2)能写成φ(X1)Tφ(X2)的充要条件①K(X1,X2)=K(X1,X2)(交换性)②∀Ci(i=1∼N),∀N 有i=1∑Nj=1∑NCiCjK(Xi,Xj)≥0(半正定性)K满足交换性和半正定性⇒φ内积的形式
例如, 可以证明高斯核函数满足 M e r c e r ′ s T h e o r e m Mercer's Theorem Mercer′sTheorem
K ( X 1 , X 2 ) = e − ∣ ∣ X 1 − X 2 ∣ ∣ 2 2 σ 2 K(X_1,X_2) = e^{- \frac{\left|| X_1 - X_2 \right||^2}{2\sigma^2}} K(X1,X2)=e−2σ2∣∣X1−X2∣∣2
虽然我们无法知道 φ ( x ) \varphi(x) φ(x) 的具体形式,但是我们却可以通过一些方法,知道 ω T φ ( x ) + b \omega^T\varphi(x)+b ωTφ(x)+b 的值,进而我们可以知道测试样本 X X X 的类别。
最 小 化 ( M i n i m i z e ) : f ( ω ) 限 制 条 件 ( S u b j e c t t o ) : g i ( ω ) ≤ 0 i = 1 ∼ K h i ( ω ) = 0 i = 1 ∼ m \begin{aligned} &最小化(Minimize): & f(\omega) \newline \\ &限制条件(Subject to): & g_i(\omega) \leq 0 \quad i=1\sim K \newline \\ & \ & h_i(\omega) = 0 \quad i=1\sim m \end{aligned} 最小化(Minimize):限制条件(Subjectto): f(ω)gi(ω)≤0i=1∼Khi(ω)=0i=1∼m
自 变 量 为 ω ⇐ 多 维 向 量 目 标 函 数 是 f ( ω ) 自变量为 \omega \Leftarrow 多维向量 \newline \\ 目标函数是 f(\omega) 自变量为ω⇐多维向量目标函数是f(ω)
定 义 函 数 : L ( ω , α , β ) = f ( ω ) + ∑ i = 1 K α i g i ( ω ) + ∑ i = 1 K β i h i ( ω ) = f ( ω ) + α T g ( ω ) + β T h ( ω ) 其 中 α = [ α 1 , α 2 , ⋯ , α K ] T β = [ β 1 , β 2 , ⋯ , β M ] T g ( ω ) = [ g 1 ( ω ) , g 2 ( ω ) , ⋯ , g K ( ω ) ] T h ( ω ) = [ h 1 ( ω ) , h 2 ( ω ) , ⋯ , h M ( ω ) ] T \begin{aligned} 定义函数: L(\omega,\alpha,\beta) &= f(\omega) + \sum^K_{i=1}\alpha_ig_i(\omega) + \sum^K_{i=1}\beta_ih_i(\omega) \newline \\ &= f(\omega) + \alpha^Tg(\omega) + \beta^Th(\omega) \newline \newline \\ \\ 其中 \qquad \alpha &= [\alpha_1,\alpha_2,\cdots,\alpha_K]^T \newline \\ \beta &= [\beta_1,\beta_2,\cdots,\beta_M]^T \newline \\ g(\omega) &= [g_1(\omega),g_2(\omega),\cdots,g_K(\omega)]^T \newline \\ h(\omega) &= [h_1(\omega),h_2(\omega),\cdots,h_M(\omega)]^T \newline \\ \end{aligned} 定义函数:L(ω,α,β)其中αβg(ω)h(ω)=f(ω)+i=1∑Kαigi(ω)+i=1∑Kβihi(ω)=f(ω)+αTg(ω)+βTh(ω)=[α1,α2,⋯,αK]T=[β1,β2,⋯,βM]T=[g1(ω),g2(ω),⋯,gK(ω)]T=[h1(ω),h2(ω),⋯,hM(ω)]T
在定义了 函数 L ( ω , α , β ) L(\omega,\alpha,\beta) L(ω,α,β) 的基础上,对偶问题如下:
最 大 化 : θ ( α , β ) = inf L ( ω , α , β ) , 所 有 定 义 域 内 的 ω 限 制 条 件 : α i ≥ 0 , i = 1 ∼ K inf : 下 确 界 整 个 公 式 清 晰 明 了 , 即 为 取 使 得 L 最 大 化 最 小 值 的 θ , α , β \begin{aligned} 最大化: & \quad\theta(\alpha,\beta) = \inf L(\omega,\alpha,\beta) ,所有定义域内的 \omega \newline \\ 限制条件 : &\quad\alpha_i \geq 0 , i = 1 \sim K \newline \newline \inf : &\quad 下确界 \newline \\ 整个公式&清晰明了,即为取使得 L 最大化最小值的\theta,\alpha,\beta \end{aligned} 最大化:限制条件:整个公式θ(α,β)=infL(ω,α,β),所有定义域内的ωαi≥0,i=1∼Kinf:清晰明了,即为取使得L最大化最小值的θ,α,β下确界
综合原问题和对偶问题的定义得到:
如果 ω ∗ \omega^\ast ω∗ 是原问题的解, ( α ∗ , β ∗ ) (\alpha^\ast,\beta^\ast) (α∗,β∗) 是对偶问题的解则有:
f ( ω ∗ ) ≥ θ ( α ∗ , β ∗ ) f(\omega^*) \geq \theta(\alpha^*,\beta^*) f(ω∗)≥θ(α∗,β∗)
证明:
θ ( α ∗ , β ∗ ) = inf L ( ω , α ∗ , β ∗ ) ≤ L ( ω ∗ , α ∗ , β ∗ ) = f ( ω ∗ ) + α ∗ T g ( ω ∗ ) + β ∗ T h ( ω ∗ ) ≤ f ( ω ∗ ) 其 中 : g ( ω ∗ ) ≤ 0 h ( ω ∗ ) = 0 α ( ω ∗ ) ≥ 0 \begin{aligned} \theta (\alpha^*,\beta^*) &= \inf L(\omega , \alpha^* ,\beta^*) \newline \\ & \leq L(\omega^* , \alpha^* ,\beta^*)\newline \\ & = f(\omega^*) + \alpha^{*T}g(\omega^*) + \beta^{*T}h(\omega^*)\newline \\ & \leq f(\omega^*) \newline \newline \\ 其中: \qquad g(\omega^*) & \leq 0 \newline \\ h(\omega^*) & = 0 \newline \\ \alpha(\omega^*) & \geq 0 \newline \\ \end{aligned} θ(α∗,β∗)其中:g(ω∗)h(ω∗)α(ω∗)=infL(ω,α∗,β∗)≤L(ω∗,α∗,β∗)=f(ω∗)+α∗Tg(ω∗)+β∗Th(ω∗)≤f(ω∗)≤0=0≥0
这个定理 ( 1 ) (1) (1)告诉我们:原问题的解总是大于等于对偶问题的。
同时,定义对偶差距(Duality Gap):
f ( ω ∗ ) − θ ( α ∗ , β ∗ ) f(\omega^*) - \theta(\alpha^*,\beta^*) f(ω∗)−θ(α∗,β∗)
显然,对偶差距是一个大于等于零的实数。
如 果 g ( ω ) = A ω + b , h ( ω ) = C ω + b , f ( ω ) 为 凸 函 数 , 则 有 f ( ω ∗ ) = θ ( α ∗ , β ∗ ) , 且 对 偶 差 距 为 0 。 \quad 如果\ g(\omega) = A\omega+b , \ h(\omega)=C\omega+b,\ f(\omega) \ 为凸函数,则有 \ f(\omega^*)=\theta(\alpha^*,\beta^*) \ ,且对偶差距为\ 0\ 。 如果 g(ω)=Aω+b, h(ω)=Cω+b, f(ω) 为凸函数,则有 f(ω∗)=θ(α∗,β∗) ,且对偶差距为 0 。
简单来说,如果:
原问题的目标函数是凸函数,且限制条件是线性函数,则 f ( ω ∗ ) = θ ( α ∗ , β ∗ ) f(\omega^\ast)=\theta(\alpha^\ast,\beta^\ast) f(ω∗)=θ(α∗,β∗) ,且对偶差距为 0。(证明参照:《Convex Optimization》)
根据定理一推出的不等式:
若 f ( ω ∗ ) = θ ( α ∗ , β ∗ ) f(\omega^\ast)=\theta(\alpha^\ast,\beta^\ast) f(ω∗)=θ(α∗,β∗) ,则定理 ( 1 ) (1) (1)中必然能够推出:对于所有的 i = 1 ∼ K i=1\sim K i=1∼K 要么 α i = 0 \alpha_i=0 αi=0 ,要么 g i ( ω ∗ ) = 0 g_i(\omega^\ast)=0 gi(ω∗)=0 。这个条件称为 KKT 条件。
将支持向量机模型转化为对偶问题,首先要证明支持向量机的原问题满足强对偶问题。
回顾目前支持向量机的优化问题:
最 小 化 : 1 2 ∣ ∣ ω ∣ ∣ 2 + C ∑ i = 1 N δ i 或 1 2 ∣ ∣ ω ∣ ∣ 2 + C ∑ i = 1 N δ i 2 限 制 条 件 : ( 1 ) δ i ≥ 0 , ( i = 1 ∼ N ) ( 2 ) y i [ w T φ ( X i ) + b ] ≥ 1 − δ i , ( i = 1 ∼ N ) \begin{aligned} &最小化: && \frac{1}{2} \left|| \omega \right|| ^2 + C\sum^N_{i=1} \delta_i \ 或 \ \frac{1}{2} \left|| \omega \right||^2 + C \sum^N_{i=1}\delta_i^2 \\ &限制条件:& \\ &&&(1)\ \delta_i \geq 0 , (i = 1\sim N) \\ &&&(2)\ y_i[w^T\varphi(X_i) +b] \geq 1- \delta_i,(i=1\sim N) \\ \\ \end{aligned} 最小化:限制条件:21∣∣ω∣∣2+Ci=1∑Nδi 或 21∣∣ω∣∣2+Ci=1∑Nδi2(1) δi≥0,(i=1∼N)(2) yi[wTφ(Xi)+b]≥1−δi,(i=1∼N)
原问题(Prime problem):
最 小 化 ( M i n i m i z e ) : f ( ω ) 限 制 条 件 ( S u b j e c t t o ) : g i ( ω ) ≤ 0 i = 1 ∼ K h i ( ω ) = 0 i = 1 ∼ m \begin{aligned} &最小化(Minimize): & f(\omega) \newline \\ &限制条件(Subject to): & g_i(\omega) \leq 0 \quad i=1\sim K \newline \\ & \ & h_i(\omega) = 0 \quad i=1\sim m \newline \\ \end{aligned} 最小化(Minimize):限制条件(Subjectto): f(ω)gi(ω)≤0i=1∼Khi(ω)=0i=1∼m
原问题中,限制条件是小于等于0跟等于零,两种情况,所以我们要转换一下。
首 先 将 δ i ≥ 0 ( i = 1 ∼ N ) 转 换 成 δ i ≤ 0 ( i = 1 ∼ N ) 得 到 最 小 化 : 1 2 ∣ ∣ ω ∣ ∣ 2 − C ∑ i = 1 N δ i 限 制 条 件 : ( 1 ) δ i ≤ 0 , ( i = 1 ∼ N ) ( 2 ) y i [ w T φ ( X i ) + b ] ≥ 1 + δ i , ( i = 1 ∼ N ) \begin{aligned} &首先将 \newline \\ &&&\delta_i \geq 0 \ (i=1\sim N)\ 转换成\ \delta_i \leq 0 \ (i=1\sim N) \ \newline \\ &得到 \newline \\ &最小化: &&\frac{1}{2} \left|| \omega \right|| ^2 - C\sum^N_{i=1} \delta_i \newline \\ &限制条件: \newline \\ &&&(1)\ \delta_i \leq 0 , (i = 1\sim N) \\ &&&(2)\ y_i[w^T\varphi(X_i) +b] \geq 1+ \delta_i,(i=1\sim N) \\ \\ \end{aligned} 首先将得到最小化:限制条件:δi≥0 (i=1∼N) 转换成 δi≤0 (i=1∼N) 21∣∣ω∣∣2−Ci=1∑Nδi(1) δi≤0,(i=1∼N)(2) yi[wTφ(Xi)+b]≥1+δi,(i=1∼N)
在整理一下得:
最 小 化 : 1 2 ∣ ∣ ω ∣ ∣ 2 − C ∑ i = 1 N δ i 或 1 2 ∣ ∣ ω ∣ ∣ 2 + C ∑ i = 1 N δ i 2 ⇑ 情 况 一 ⇑ 情 况 二 限 制 条 件 : ( 1 ) δ i ≤ 0 , ( i = 1 ∼ N ) ( 2 ) 1 + δ i − y i w T φ ( X i ) − y i b ≤ 0 , ( i = 1 ∼ N ) 其 中 自 变 量 ω 原 = ( ω 现 , b , δ i ) \begin{aligned} &最小化: &&\frac{1}{2} \left|| \omega \right|| ^2 - C\sum^N_{i=1} \delta_i \qquad或 &\frac{1}{2} \left|| \omega \right||^2 + C \sum^N_{i=1}\delta_i^2 \newline \\ &&&\Uparrow 情况一 &\Uparrow情况二 \newline \\ &限制条件: \newline \\ &&&(1)\ \delta_i \leq 0 ,& (i = 1\sim N) \\ &&&(2)\ 1+ \delta_i - y_iw^T\varphi(X_i) - y_ib \leq 0,&(i=1\sim N) \\ \\ &&&其中自变量 \omega_原 =(\omega_现,b,\delta_i) \end{aligned} 最小化:限制条件:21∣∣ω∣∣2−Ci=1∑Nδi或⇑情况一(1) δi≤0,(2) 1+δi−yiwTφ(Xi)−yib≤0,其中自变量ω原=(ω现,b,δi)21∣∣ω∣∣2+Ci=1∑Nδi2⇑情况二(i=1∼N)(i=1∼N)
显然,限制条件是线性的,且目标函数是凸函数,满足强对偶定理。
其中,限制条件的一二两条属于 g i ( ω ) g_i(\omega) gi(ω) ,不存在 h i ( ω ) h_i(\omega) hi(ω) 。
根据以上信息写成对偶问题的形式:
最 大 化 : θ ( α , β ) = inf ω , δ i , b { 1 2 ∣ ∣ ω ∣ ∣ 2 − C ∑ i = 1 N δ i + ∑ i = 1 N α i [ 1 + δ i − y i ω T φ ( X i ) − y i b ] + ∑ i = 1 N β i δ i } 限 制 条 件 : ( 1 ) α i ≥ 0 ( 2 ) β i ≥ 0 \begin{aligned} & 最大化: && \theta(\alpha,\beta) = \inf_{\omega,\delta_i,b} \{\ \frac{1}{2}\left|| \omega \right||^2 -C\sum^N_{i=1}\delta_i + \sum^N_{i=1}\alpha_i[ \ 1+ \delta_i - y_i\omega^T\varphi(X_i) - y_ib\ ] + \sum^N_{i=1}\beta_i\delta_i \ \} \newline \\ &限制条件 : \newline &&& (1) \quad \alpha_i \geq 0 \newline \\ &&& (2) \quad \beta_i \geq 0 \newline \\ \end{aligned} 最大化:限制条件:θ(α,β)=ω,δi,binf{ 21∣∣ω∣∣2−Ci=1∑Nδi+i=1∑Nαi[ 1+δi−yiωTφ(Xi)−yib ]+i=1∑Nβiδi }(2)βi≥0(1)αi≥0
如何化为对偶问题:
对 ( ω , b , δ i ) (\omega,b,\delta_i) (ω,b,δi) 求导并令导数为0。
( 1 ) ∂ θ ∂ ω = ω − ∑ i = 1 N α i y i φ ( X i ) = 0 ⇒ ω = ∑ i = 1 N α i y i φ ( X i ) 向 量 的 求 导 法 则 ( 2 ) ∂ θ ∂ δ i = − C + α i + β i = 0 ⇒ α i + β i = C 常 规 的 自 变 量 求 导 ( 3 ) ∂ θ ∂ b = − ∑ i = 1 N α i y i = 0 ⇒ ∑ i = 1 N α i y i = 0 常 规 的 自 变 量 求 导 \begin{aligned} &(1) \frac{\partial \theta}{\partial \omega} = \omega - \sum^N_{i=1}\alpha_i y_i\varphi(X_i) = 0 \qquad &\Rightarrow &&\qquad \omega = \sum^N_{i=1}\alpha_i y_i\varphi(X_i) &&向量的求导法则 \newline \\ &(2) \frac{\partial \theta}{\partial \delta_i} = -C +\alpha_i + \beta_i = 0 \quad &\Rightarrow && \alpha_i + \beta_i = C && 常规的自变量求导 \newline \\ &(3) \frac{\partial \theta}{\partial b} = - \sum^N_{i=1}\alpha_i y_i = 0 &\Rightarrow &&\sum^N_{i=1}\alpha_i y_i = 0 &&常规的自变量求导 \newline \\ \end{aligned} (1)∂ω∂θ=ω−i=1∑Nαiyiφ(Xi)=0(2)∂δi∂θ=−C+αi+βi=0(3)∂b∂θ=−i=1∑Nαiyi=0⇒⇒⇒ω=i=1∑Nαiyiφ(Xi)αi+βi=Ci=1∑Nαiyi=0向量的求导法则常规的自变量求导常规的自变量求导
将上述三个式子带入到等式中,得支持向量机的对偶问题:
最 大 化 : θ ( α , β ) = ∑ i = 1 N α i − 1 2 ∑ i = 1 N ∑ j = 1 N y i y j α i α j φ ( X i ) T φ ( X j ) 限 制 条 件 : ( 1 ) 0 ≤ α i ≤ C , ( i = 1 ∼ N ) ( 2 ) ∑ i = 1 N α i y i = 0 , ( i = 1 ∼ N ) 其 中 : φ ( X i ) T φ ( X j ) 就 是 核 函 数 K ( X i , X j ) \begin{aligned} & 最大化: & \theta(\alpha,\beta) = \sum^N_{i=1}\alpha_i -\frac{1}{2}\sum^N_{i=1}\sum^N_{j=1}y_iy_j\alpha_i\alpha_j\varphi(X_i)^T\varphi(X_j) \newline \\ &限制条件 : \newline \\ && (1) \quad 0 \leq \alpha_i \leq C ,\quad (i=1\sim N) \newline \\ && (2) \sum^N_{i=1}\alpha_i y_i = 0 ,\quad (i=1\sim N) \newline \newline \\ &其中: &\varphi(X_i)^T\varphi(X_j) 就是核函数K(X_i,X_j) \end{aligned} 最大化:限制条件:其中:θ(α,β)=i=1∑Nαi−21i=1∑Nj=1∑Nyiyjαiαjφ(Xi)Tφ(Xj)(1)0≤αi≤C,(i=1∼N)(2)i=1∑Nαiyi=0,(i=1∼N)φ(Xi)Tφ(Xj)就是核函数K(Xi,Xj)
根据已知条件,解出所有的 α i ( i = 1 ∼ N ) , ω = ∑ i = 1 N α i y i φ ( X i ) \alpha_i\ (i=1\sim N) \quad ,\quad \omega=\sum^N_{i=1}\alpha_iy_i\varphi(X_i) αi (i=1∼N),ω=∑i=1Nαiyiφ(Xi) 。由于 φ ( x ) \varphi(x) φ(x) 不知道是否具有显示表达,所以 ω \omega ω 也不知道是否具有显示表达。但无需知道 ω \omega ω 的显示表达。因为求 ω \omega ω 的目的是得到 ω T φ ( X i ) + b \omega^T\varphi(X_i) +b ωTφ(Xi)+b ,而该式子是为了得到 y i [ ω T φ ( X i ) + b ] y_i[\omega^T\varphi(X_i) +b] yi[ωTφ(Xi)+b] 的值,从而判定样本的类比。而通过核函数 K ( X i , X j ) K(X_i,X_j) K(Xi,Xj) ,能够越过求 ω \omega ω 的这步,直接得到 ω T φ ( X i ) + b \omega^T\varphi(X_i) +b ωTφ(Xi)+b 的值,从而判定样本的类别。那么剩下的问题就是如何求 b b b。
由 于 ω = ∑ j = 1 N α j y j φ ( X j ) 则 ω T φ ( X i ) = ∑ j = 1 N α j y j φ ( X j ) T φ ( X i ) = ∑ j = 1 N α j y j K ( X j , X i ) \begin{aligned} &由于& \omega &= \sum^N_{j=1}\alpha_jy_j\varphi(X_j) \newline \\ &则 & \omega^T\varphi(X_i) &= \sum^N_{j=1}\alpha_jy_j\varphi(X_j)^T\varphi(X_i) \newline \\ & & &= \sum^N_{j=1}\alpha_jy_jK(X_j,X_i) \end{aligned} 由于则ωωTφ(Xi)=j=1∑Nαjyjφ(Xj)=j=1∑Nαjyjφ(Xj)Tφ(Xi)=j=1∑NαjyjK(Xj,Xi)
由 KKT 条件,可得:
α i [ 1 + δ i − y i ω T φ ( X i ) − y i b ] = 0 β i δ i = 0 ⇒ ( C − α i ) δ i = 0 \begin{aligned} & \alpha_i[ \ 1+ \delta_i - y_i\omega^T\varphi(X_i) - y_ib\ ] =0 \newline \\ &\beta_i\delta_i = 0 \quad \Rightarrow \quad (C-\alpha_i)\delta_i = 0 \newline \\ \end{aligned} αi[ 1+δi−yiωTφ(Xi)−yib ]=0βiδi=0⇒(C−αi)δi=0
如果对某个 i i i , α i ≠ 0 \alpha_i \neq 0 αi=0 且 α i ≠ C \alpha_i \neq C αi=C ,则根据 KKT 条件,必有 δ i = 0 \delta_i =0 δi=0 ;
∵ α i ≠ 0 , α i ≠ C ∴ C − α i ≠ 0 , 1 + δ i − y i ω T φ ( X i ) − y i b = 0 又 ∵ α i + β i = C ∴ 0 < α i < C 又 ∵ y i ω T φ ( X i ) = y i ∑ j = 1 N α j y j K ( X j , X i ) ∴ b = 1 − ∑ j = 1 N α j y i y j K ( X j , X i ) y i \begin{aligned} &\because \quad \alpha_i \neq 0 \quad ,\quad \alpha_i \neq C \newline \\ &\therefore \quad C-\alpha_i \neq 0 \quad , \quad 1+ \delta_i - y_i\omega^T\varphi(X_i) - y_ib= 0 \newline \\ 又&\because \quad \alpha_i+\beta_i=C \newline \\ &\therefore \quad 0 \lt \alpha_i \lt C \newline \\ 又&\because \quad y_i\omega^T\varphi(X_i) = y_i\sum^N_{j=1}\alpha_jy_jK(X_j,X_i) \newline \\ &\therefore \quad b = \frac{ 1 - \sum^N_{j=1}\alpha_jy_iy_jK(X_j,X_i) }{y_i} \newline \\ \end{aligned} 又又∵αi=0,αi=C∴C−αi=0,1+δi−yiωTφ(Xi)−yib=0∵αi+βi=C∴0<αi<C∵yiωTφ(Xi)=yij=1∑NαjyjK(Xj,Xi)∴b=yi1−∑j=1NαjyiyjK(Xj,Xi)
随便取一个满足条件的 α i \alpha_i αi ,便能求出 b b b。
假定有一测试样本 X X X
ω T φ ( X ) + b ω = ∑ j = 1 N α j y j φ ( X j ) ω T φ ( X i ) + b = ∑ j = 1 N α j y j φ ( X j ) T φ ( X i ) + b = ∑ j = 1 N α j y j K ( X j , X i ) + b \begin{aligned} &\omega^T\varphi(X) +b \newline \\ \omega &= \sum^N_{j=1}\alpha_jy_j\varphi(X_j) \newline \\ \omega^T\varphi(X_i) + b &= \sum^N_{j=1}\alpha_jy_j\varphi(X_j)^T\varphi(X_i) + b \newline \\ &= \sum^N_{j=1}\alpha_jy_jK(X_j,X_i) + b \end{aligned} ωωTφ(Xi)+bωTφ(X)+b=j=1∑Nαjyjφ(Xj)=j=1∑Nαjyjφ(Xj)Tφ(Xi)+b=j=1∑NαjyjK(Xj,Xi)+b
如 果 ∑ j = 1 N α j y j K ( X j , X ) + b ≥ 0 , 那 么 X ∈ C 1 如 果 ∑ j = 1 N α j y j K ( X j , X ) + b < 0 , 那 么 X ∈ C 2 \begin{aligned} 如果 \sum^N_{j=1}\alpha_jy_jK(X_j,X) + b \geq 0 \quad , \quad 那么 X \in C_1 \newline \\ 如果 \sum^N_{j=1}\alpha_jy_jK(X_j,X) + b \lt 0 \quad , \quad 那么 X \in C_2 \newline \\ \end{aligned} 如果j=1∑NαjyjK(Xj,X)+b≥0,那么X∈C1如果j=1∑NαjyjK(Xj,X)+b<0,那么X∈C2
输入训练数据 { ( X i , y i ) } , i = 1 ∼ N \{(X_i,y_i)\} ,\ i = 1\sim N {(Xi,yi)}, i=1∼N ,其中 y i = ± 1 y_i = \pm 1 yi=±1 。
最 大 化 : θ ( α ) = ∑ i = 1 N α i − 1 2 ∑ i = 1 N ∑ j = 1 N y i y j α i α j φ ( X i ) T φ ( X j ) 限 制 条 件 : ( 1 ) 0 ≤ α i ≤ C , ( i = 1 ∼ N ) ( 2 ) ∑ i = 1 N α i y i = 0 , ( i = 1 ∼ N ) 其 中 : φ ( X i ) T φ ( X j ) 就 是 核 函 数 K ( X i , X j ) \begin{aligned} & 最大化: && \theta(\alpha) = \sum^N_{i=1}\alpha_i -\frac{1}{2}\sum^N_{i=1}\sum^N_{j=1}y_iy_j\alpha_i\alpha_j\varphi(X_i)^T\varphi(X_j) \newline \\ &限制条件 : \newline \\ &&& (1) \quad 0 \leq \alpha_i \leq C ,\quad (i=1\sim N) \newline \\ &&& (2) \sum^N_{i=1}\alpha_i y_i = 0 ,\quad (i=1\sim N) \newline \newline \\ \\ &其中: &&\varphi(X_i)^T\varphi(X_j) 就是核函数K(X_i,X_j) \end{aligned} 最大化:限制条件:其中:θ(α)=i=1∑Nαi−21i=1∑Nj=1∑Nyiyjαiαjφ(Xi)Tφ(Xj)(1)0≤αi≤C,(i=1∼N)(2)i=1∑Nαiyi=0,(i=1∼N)φ(Xi)Tφ(Xj)就是核函数K(Xi,Xj)
找 一 个 α i ≠ 0 , α i ≠ C 则 b = 1 − ∑ j = 1 N α j y i y j K ( X j , X i ) y i 找一个 \quad \alpha_i \neq 0 \quad , \quad \alpha_i \neq C \qquad 则 \quad b = \frac{ 1 - \sum^N_{j=1}\alpha_jy_iy_jK(X_j,X_i) }{y_i} \newline \\ 找一个αi=0,αi=C则b=yi1−∑j=1NαjyiyjK(Xj,Xi)
求出了 α \alpha α 与 b b b ,则完成了训练过程。
考察测试数据 X X X ,预测它的类别 y y y 。
如 果 ∑ j = 1 N α j y j K ( X j , X ) + b ≥ 0 , 那 么 y = + 1 如 果 ∑ j = 1 N α j y j K ( X j , X ) + b < 0 , 那 么 y = − 1 \begin{aligned} 如果 \sum^N_{j=1}\alpha_jy_jK(X_j,X) + b \geq 0 \quad , \quad 那么 y=+1 \newline \\ 如果 \sum^N_{j=1}\alpha_jy_jK(X_j,X) + b \lt 0 \quad , \quad 那么 y=-1 \newline \\ \end{aligned} 如果j=1∑NαjyjK(Xj,X)+b≥0,那么y=+1如果j=1∑NαjyjK(Xj,X)+b<0,那么y=−1
以上所有的讨论均基于最小化公式的前者,而后者同样也可以,其证明可自己推导。