支持向量机 task3

本文详细介绍了支持向量机(SVM),包括间隔与支持向量的概念,如何寻找最大间隔的超平面,以及对偶问题的解决方法。通过拉格朗日乘子法,展示了SVM如何通过核函数处理线性不可分问题,最终形成只与支持向量相关的模型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

支持向量机 ——周志华西瓜书 笔记

  1. 间隔与支持向量

    给点训练样本集D={(x1,y2,...,(xm,ym))},y∈{−1,+1}D=\{(x_1, y_2, ..., (x_m, y_m))\}, y\in \{-1, +1\}D={(x1,y2,...,(xm,ym))},y{1,+1}, 分类学习最基本的想法就是基于训练集DDD在样本空间中找到一个划分超平面,将不同类别的样本分开。需要划分超平面对训练样本局部扰动的“容忍”性最好,最鲁棒的, 对未见示例的泛化能力 最强。
    在这里插入图片描述
    ​ 在样本空间中, 划分超平面可通过如下线性方程来描述:
    (1)wTx+b=0 w^Tx+b=0 \tag{1} wTx+b=0(1)
    其中w=(w1,w2,...;wd)w=(w_1, w_2, ...;w_d)w=(w1,w2,...;wd)为法向量, 决定了超平面的方向, bbb为位移项, 决定了超平面与原点之间的距离。
    (2)r=∣wTx+b∣∣∣w∣∣ r=\frac{|w^Tx+b|}{||w||}\tag{2} r=wwTx+b(2)
    ​ 假设超平面(w,b)(w,b)(w,b)能将训练样本正确分类,即对于(xi,yi)∈D(x_i, y_i) \in D(xi,yi)D, 若yi=+1y_i = +1yi=+1, 则有wTxi+b&gt;0w^Tx_i +b&gt; 0wTxi+b>0; 若yi=−1y_i = -1yi=1, 则有wTxi+b&lt;0w^Tx_i +b &lt; 0wTxi+b<0, 令
    (3)wTxi+b≥+1,yi=+1;wTxi+b≤−1,yi=−1 w^Tx_i +b \geq +1, y_i=+1;\\ w^Tx_i +b \leq -1, y_i = -1 \tag{3} wTxi+b+1,yi=+1;wTxi+b1,yi=1(3)
    如下图所示,距离超平面最近的几个训练样本点使式(3)的等号成立, 他们被称为“支持向量”, 两个异类支持向量到超平面的距离之和为
    (4)γ=2∣∣w∣∣ \gamma = \frac{2}{||w||} \tag{4} γ=w2(4)
    它被称为“间隔”

​ 欲找到具有"最大间隔"的划分超平面,也就是要找到满足式(3)中约束的参数www和b, 使得$\gamma $最大, 即
(5)maxw,b2∣∣w∣∣s.t.  yi(wTxi+b)≥1, i=1,2,...,m. max_{w, b}\frac{2}{||w||} \\ s.t.\ \ y_i(w^Tx_i+b)\geq 1,\ i =1,2,...,m.\tag{5} maxw,bw2s.t.  yi(wTxi+b)1, i=1,2,...,m.(5)
​ 显然,为了最大化间隔, 仅需最大化∣∣w∣∣−1||w||^{-1}w1, 这等价于最小化∣∣w∣∣2||w||^2w2, 于是上式可重写为
(6)minw,b12∣∣w∣∣2s.t. yi(wTxi+b)≥1,  i=1,2,...,m min_{w, b} \frac{1}{2} ||w||^2\\ s.t. \ y_i(w^Tx_i +b) \geq 1, \ \ i=1, 2, ...,m\tag{6} minw,b21w2s.t. yi(wTxi+b)1,  i=1,2,...,m(6)
​ **这就是支持向量机(Support Vector Machine , 简称SVM)**的基本型。

  1. 对偶问题

    最大间隔划分超平面所对应的模型为:
    (7)f(x)=wTx+b f(x) = w^Tx +b \tag{7} f(x)=wTx+b(7)
    其中wwwbbb是模型参数, 注意到式(6)本身是一个凸二次规划问题, 能直接用现成的优化计算包求解, 到我们可以有更高效的方法。

    ​ 对式(6)使用拉格朗日乘子法可得到其"对偶问题"。具体来说, 对式(6)的每条约束添加拉格朗日乘子αi≥0\alpha_i \geq 0αi0, 则该问题的拉个朗日函数可写为:
    (8)L(w,b,α)=12∣∣w∣∣2+∑i=1mαi(1−yi(wTxi+b)) L(w, b, \alpha) = \frac{1}{2}||w||^2+ \sum_{i=1}^m \alpha_i(1- y_i(w^Tx_i+b)) \tag{8} L(w,b,α)=21w2+i=1mαi(1yi(wTxi+b))(8)
    其中α=(α1;α2;...;αm)\alpha = (\alpha_1; \alpha_2;...;\alpha_m)α=(α1;α2;...;αm), 令L(w,b,α)L(w, b ,\alpha)L(w,b,α)wwwbbb的偏导为零可得:
    (9)w=∑i=1mαiyixi, w=\sum_{i=1}^m \alpha_i y_i x_i, \tag{9} w=i=1mαiyixi,(9)

(10)0=∑i=1mαiyi 0=\sum_{i=1}^m \alpha_i y_i \tag{10} 0=i=1mαiyi(10)

将式(9)(10)代入式(8)中即可将L(w,b,α)L(w, b, \alpha)L(w,b,α)中的wwwbbb消去, 再考虑式(10)的约束, 就可以得到式(6)的对偶问题
(11)maxα∑i=1mαi−12∑i=1m∑i=1mαiαjyiyjxiTxjs.t. ∑i=1mαiyi=0αi≥0 i=1,2,...,m. max_{\alpha}\sum_{i=1}^m\alpha_i - \frac{1}{2}\sum_{i=1}^m\sum_{i=1}^m \alpha_i \alpha_j y_i y_jx^T_i x_j\tag{11}\\ s.t. \ \sum_{i=1}^m \alpha_i y_i=0 \\ \alpha_i\geq 0 \ i=1,2,..., m. maxαi=1mαi21i=1mi=1mαiαjyiyjxiTxjs.t. i=1mαiyi=0αi0 i=1,2,...,m.(11)
解出α\alphaα后, 求出wwwbbb即可得到模型:
(12)f(x)=wTx+b=∑i=1mαiyixiT+b f(x)=w^Tx+b\\ =\sum_{i=1}^m \alpha_i y_ix^T_i+b\tag{12} f(x)=wTx+b=i=1mαiyixiT+b(12)
从对偶问题解出αi\alpha_iαi 是式(8)中的拉格朗日乘子, 它恰好对应着训练样本(xi,yi)(x_i, y_i)(xi,yi), 注意到式(6)中有不等式约束, 因此上述过程需满足**KKT(Karush-kuhn-Tucker)**条件, 既要求
(13)αi≥0yif(xi)−1≥0α(yif(xi)−1)=0 \alpha_i\geq 0\\ y_if(x_i)-1 \geq 0\\ \tag{13} \alpha(y_if(x_i)-1)=0 αi0yif(xi)10α(yif(xi)1)=0(13)
于是, 对任意样本(xi,yi)(x_i, y_i)(xi,yi), 总有αi=0\alpha_i=0αi=0或者yif(xi)=1y_if(x_i)=1yif(xi)=1.若α=0\alpha =0α=0,则该样本将不会再式(12)的求和中出现, 也就不会对f(x)f(x)f(x)有任何影响。 若αi&gt;0\alpha_i&gt;0αi>0,则必有yif(x)=1y_if(x)=1yif(x)=1,所对应的样本点位于最大间隔边界上, 是一个支持向量, 这显示出支持向量机的一个重要的性质:训练完成后, 大部分的训练样本都不需要保留,最终模型仅与支持向量有关。

  1. 核函数

    在现实任务中, 原始样本空间内也许并不存在一个能正确划分两类样本的超平面,即线性不可分。 我们可以将样本从原始空间映射到一个更高维的特征空间,使得样本在这个特征空间内线性可分。

    ​ 令ϕ(x)\phi(x)ϕ(x)表示将xxx映射后的特征向量, 于是在特征空间中划分超平面所对应的模型可表示为
    (14)f(x)=wTϕ(x)+b f(x) = w^T\phi(x) +b\tag{14} f(x)=wTϕ(x)+b(14)
    其中wwwbbb是模型参数, 类似有
    (15)minw,b12∣∣w∣∣3s.t. yi(wTϕ(x)+b)≥1,i=1,2,...,m. min_{w, b} \frac{1}{2}||w||^3\tag{15} \\ s.t. \ y_i(w^T\phi(x)+b) \geq 1 , i =1,2,...,m. minw,b21w3s.t. yi(wTϕ(x)+b)1,i=1,2,...,m.(15)
    其对偶问题是:
    (16)maxα∑i=1mαi−12∑i=1m∑i=1mαiαjyiyjϕ(xi)Tϕ(xj)s.t.∑i=1mαiyi=0αi≥0,i=1,2,...,m. max_{\alpha}\sum_{i=1}^m \alpha_i -\frac{1}{2}\sum_{i=1}^m\sum_{i=1}^m \alpha_i \alpha_j y_i y_j \phi(x_i)^T\phi^(x_j)\tag{16} \\ s.t. \sum_{i=1}^m \alpha_i y_i=0\\ \alpha_i\geq0, i=1,2,..., m. maxαi=1mαi21i=1mi=1mαiαjyiyjϕ(xi)Tϕ(xj)s.t.i=1mαiyi=0αi0,i=1,2,...,m.(16)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值