《机器学习》西瓜书第六章 支持向量机(南瓜书辅助)

6.1 间隔与支持向量

对于线性可分数据集,支持向量机就是找距离正负样本都最远的超平面,相比于感知机,其解是唯一的,且不偏不倚,泛化性能更好。

6.1.1 超平面

n n n 维空间的超平面 ( w T x + b = 0 \left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b=0\right. (wTx+b=0, 其中 w , x ∈ R n ) \left.\boldsymbol{w}, \boldsymbol{x} \in \mathbb{R}^{n}\right) w,xRn)

任意点 x x x 到超平面的距离公式为
r = ∣ w T x + b ∣ ∥ w ∥ r=\frac{\left|\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b\right|}{\|\boldsymbol{w}\|} r=wwTx+b
【证明】:对于任意一点 x 0 = ( x 1 0 , x 2 0 , … , x n 0 ) T \boldsymbol{x}_{0}=\left(x_{1}^{0}, x_{2}^{0}, \ldots, x_{n}^{0}\right)^{\mathrm{T}} x0=(x10,x20,,xn0)T ,设其在超平面 w T x + b = 0 \boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b=0 wTx+b=0 上的投影点为 x 1 = ( x 1 1 , x 2 1 , … , x n 1 ) T \boldsymbol{x}_{1}=\left(x_{1}^{1}, x_{2}^{1}, \ldots, x_{n}^{1}\right)^{\mathrm{T}} x1=(x11,x21,,xn1)T ,则 w T x + b = 0 \boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b=0 wTx+b=0 ,且向量 x 1 x 0 → \overrightarrow{\boldsymbol{x}_{1} \boldsymbol{x}_{0}} x1x0 与法向量 w \boldsymbol{w} w 平行, r r r 是任意一点到法平面的距离

将法向量与任意一点到超平面的向量相乘

第一种表达:
∣ w ⋅ x 1 x 0 → ∣ = ∣ ∥ w ∥ ⋅ cos ⁡ π ⋅ ∥ x 1 x 0 → ∥ ∣ = ∥ w ∥ ⋅ ∥ x 1 x 0 → ∥ = ∥ w ∥ ⋅ r \left|\boldsymbol{w} \cdot \overrightarrow{\boldsymbol{x}_{1} \boldsymbol{x}_{0}}\right|=\left|\|\boldsymbol{w}\| \cdot \cos \pi \cdot\left\|\overrightarrow{\boldsymbol{x}_{1} \boldsymbol{x}_{0}}\right\|\right|=\|\boldsymbol{w}\| \cdot\left\|\overrightarrow{\boldsymbol{x}_{1} \boldsymbol{x}_{0}}\right\|=\|\boldsymbol{w}\| \cdot r wx1x0 =wcosπx1x0 =wx1x0 =wr
第二种表达:
w ⋅ x 1 x 0 → = w 1 ( x 1 0 − x 1 1 ) + w 2 ( x 2 0 − x 2 1 ) + … + w n ( x n 0 − x n 1 ) = w 1 x 1 0 + w 2 x 2 0 + … + w n x n 0 − ( w 1 x 1 1 + w 2 x 2 1 + … + w n x n 1 ) = w T x 0 − w T x 1 = w T x 0 + b \begin{aligned} \boldsymbol{w} \cdot \overrightarrow{\boldsymbol{x}_{1} \boldsymbol{x}_{0}} &=w_{1}\left(x_{1}^{0}-x_{1}^{1}\right)+w_{2}\left(x_{2}^{0}-x_{2}^{1}\right)+\ldots+w_{n}\left(x_{n}^{0}-x_{n}^{1}\right) \\ &=w_{1} x_{1}^{0}+w_{2} x_{2}^{0}+\ldots+w_{n} x_{n}^{0}-\left(w_{1} x_{1}^{1}+w_{2} x_{2}^{1}+\ldots+w_{n} x_{n}^{1}\right) \\ &=\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{0}-\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{1} \\ &=\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{0}+b \end{aligned} wx1x0 =w1(x10x11)+w2(x20x21)++wn(xn0xn1)=w1x10+w2x20++wnxn0(w1x11+w2x21++wnxn1)=wTx0wTx1=wTx0+b
可以得到距离表达式
∣ w T x 0 + b ∣ = ∥ w ∥ ⋅ r ⇒ r = ∣ w T x + b ∣ ∥ w ∥ \left|\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{0}+b\right|=\|\boldsymbol{w}\| \cdot r \Rightarrow r=\frac{\left|\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b\right|}{\|\boldsymbol{w}\|} wTx0+b=wrr=wwTx+b

6.1.2 几何间隔

对于给定的数据集 X X X 和超平面 w T x + b = 0 \boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b=0 wTx+b=0 ,定义数据集中的任意一个样本点 ( x i , y i ) \left(\boldsymbol{x}_{i}, y_{i}\right) (xi,yi) y i ∈ { − 1 , 1 } , i = 1 , 2 , … y_{i} \in\{-1,1\}, i=1,2, \ldots yi{1,1},i=1,2, m m m 关于超平面的几何间隔为
γ i = y i ( w T x i + b ) ∥ w ∥ \gamma_{i}=\frac{y_{i}\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{i}+b\right)}{\|\boldsymbol{w}\|} γi=wyi(wTxi+b)

  • 正确分类时(几何间隔此时也等价于点到超平面的距离), γ i > 0 \gamma_{i}>0 γi>0

    • 正样本在正空间: y i = 1 > 0 y_{i}= 1 >0 yi=1>0 w T x + b > 0 \boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b>0 wTx+b>0
    • 负样本在负空间: y i = − 1 < 0 y_{i}=-1<0 yi=1<0 w T x + b < 0 \boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b<0 wTx+b<0
  • 没有正确分类时, γ i < 0 \gamma_{i}<0 γi<0

    • 正样本在负空间: y i = 1 > 0 y_{i}=1>0 yi=1>0 w T x + b < 0 \boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b<0 wTx+b<0
    • 负样本在正空间: y i = − 1 < 0 y_{i}=-1<0 yi=1<0 w T x + b > 0 \boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b>0 wTx+b>0

对于给定的数据集 X X X 和超平面 w T x + b = 0 \boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b=0 wTx+b=0 ,定义数据集 X X X 关于超平面的几何间隔
为:数据集 X X X 中所有样本点的几何间隔最小值
γ = min ⁡ i = 1 , 2 , … , m γ i \gamma=\min _{i=1,2, \ldots, m} \gamma_{i} γ=i=1,2,,mminγi

6.1.3 支持向量机

模型:给定线性可分数据集 X X X,支持向量机模型希望求得数据集关 X X X 于超平面的几何间隔 γ \gamma γ 达到最大的那个超平面,然后套上一个 sign ⁡ \operatorname{sign} sign​ 函数实现分类功能

img
y = sign ⁡ ( w T x + b ) = { 1 , w T x + b > 0 − 1 , w T x + b < 0 y=\operatorname{sign}\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b\right)=\left\{\begin{array}{rr} 1, & \boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b>0 \\ -1, & \boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b<0 \end{array}\right. y=sign(wTx+b)={1,1,wTx+b>0wTx+b<0
所以其本质和感知机一样,仍然是在求一个超平面。

问:几何间隔最大的超平面就一定是我们前面所说的那个“距离正负样本都最远的超平面”吗?

答:是的,原因有以下两点:

  • 当超平面没有正确划分正负样本时:几何间隔最小的为误分类点,此时所有的误分类点的几何间隔都小于0,即 γ i < 0 \gamma_{i}<0 γi<0 ,所以 γ < 0 \gamma<0 γ<0。不考虑这种情况。

  • 当超平面正确划分超平面时:几何间隔就是点到超平面的距离, γ ⩾ 0 \gamma \geqslant 0 γ0,超平面越靠近中心,离超平面最近的点的直线距离越远,即 γ \gamma γ 越大。

策略:给定线性可分数据集 X X X ,设 X X X 中几何间隔最小的样本为 ( x min ⁡ , y min ⁡ ) \left(\boldsymbol{x}_{\min }, y_{\min }\right) (xmin,ymin),那么支持向量机找超平面的过程可以转化为以下带约束条件的优化问题
max ⁡ γ  s.t.  γ i ⩾ γ , i = 1 , 2 , … , m max ⁡ w , b y min ⁡ ( w T x min ⁡ + b ) ∥ w ∥  s.t.  y i ( w T x i + b ) ∥ w ∥ ⩾ y min ⁡ ( w T x min ⁡ + b ) ∥ w ∥ , i = 1 , 2 , … , m max ⁡ w , b y min ⁡ ( w T x min ⁡ + b ) ∥ w ∥  s.t.  y i ( w T x i + b ) ⩾ y min ⁡ ( w T x min ⁡ + b ) , i = 1 , 2 , … , m \begin{aligned} &\begin{array}{cl} \max & \gamma \\ \text { s.t. } & \gamma_{i} \geqslant \gamma, \quad i=1,2, \ldots, m \end{array}\\ &\max _{\boldsymbol{w}, b} \frac{y_{\min }\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{\min }+b\right)}{\|\boldsymbol{w}\|}\\ &\text { s.t. } \frac{y_{i}\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{i}+b\right)}{\|\boldsymbol{w}\|} \geqslant \frac{y_{\min }\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{\min }+b\right)}{\|\boldsymbol{w}\|}, \quad i=1,2, \ldots, m\\ &\max _{\boldsymbol{w}, b} \frac{y_{\min }\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{\min }+b\right)}{\|\boldsymbol{w}\|}\\ &\text { s.t. } \quad y_{i}\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{i}+b\right) \geqslant y_{\min }\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{\min }+b\right), \quad i=1,2, \ldots, m \end{aligned} max s.t. γγiγ,i=1,2,,mw,bmaxwymin(wTxmin+b) s.t. wyi(wTxi+b)wymin(wTxmin+b),i=1,2,,mw,bmaxwymin(wTxmin+b) s.t. yi(wTxi+b)ymin(wTxmin+b),i=1,2,,m
假设该问题的最优解为 ( x ∗ , y ∗ ) \left(\boldsymbol{x}^{*}, y^{*}\right) (x,y),那么 ( α x ∗ , α y ∗ ) \left(\alpha\boldsymbol{x}^{*}, \alpha y^{*}\right) (αx,αy) α ∈ R + \alpha \in \mathbb{R}^{+} αR+(若为负则会反向),且超平面也不变(上下约掉)。因此还需要对 w , b \boldsymbol{w},b w,b 做一定限制才能使得上述优化问题有可解的唯一解。

在支持向量机里,固定分子,令 y min ⁡ ( w T x min ⁡ + b ) = 1 y_{\min }\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{\min }+b\right)=1 ymin(wTxmin+b)=1 ,因为给定数据集的情况下, ( x min ⁡ , y min ⁡ ) \left(\boldsymbol{x}_{\min }, y_{\min }\right) (xmin,ymin) 也固定,未知的只有 w T , b \boldsymbol{w}^\mathrm{T},b wT,b ,当1也固定的时候,能使得 y min ⁡ ( w T x min ⁡ + b ) = 1 y_{\min }\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{\min }+b\right)=1 ymin(wTxmin+b)=1 α \alpha α 有且仅有一个。因此上述优化问题进一步转化为
max ⁡ w , b 1 ∥ w ∥  s.t.  y i ( w T x i + b ) ⩾ 1 , i = 1 , 2 , … , m \begin{array}{ll} \max _{\boldsymbol{w}, b} & \frac{1}{\|\boldsymbol{w}\|} \\ \text { s.t. } & y_{i}\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{i}+b\right) \geqslant 1, \quad i=1,2, \ldots, m \end{array} maxw,b s.t. w1yi(wTxi+b)1,i=1,2,,m
为了方便后续计算,再进一步进行恒等变换
min ⁡ w , b 1 2 ∥ w ∥ 2  s.t.  1 − y i ( w T x i + b ) ⩽ 0 , i = 1 , 2 , … , m \begin{array}{ll} \min _{\boldsymbol{w}, b} & \frac{1}{2}\|\boldsymbol{w}\|^{2} \\ \text { s.t. } & 1-y_{i}\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{i}+b\right) \leqslant 0, \quad i=1,2, \ldots, m \end{array} minw,b s.t. 21w21yi(wTxi+b)0,i=1,2,,m
支持向量机通常采用拉格朗日对偶来求解含不等式约束的优化问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值