【AI】机器学习——支持向量机(线性模型)

支持向量机是一种二分类算法,通过在高维空间中构建超平面实现对样本的分类

文章目录

    • 5.1 SVM概述
      • 5.1.1 分类
    • 5.2 线性可分SVM
      • 5.2.1 线性可分SVM基本思想
      • 5.2.2 策略
        • 函数间隔
        • 几何间隔
        • 硬间隔最大化
      • 5.2.3 原始算法
        • 支持向量
      • 5.2.4 对偶形式
        • 算法
          • 1. 构造并求解对偶问题
          • 2. 计算参数
          • 3. 求得分离超平面
        • 优点
        • 例题

5. 支持向量机(非线性SVM)


线性可分SVM通过硬间隔最大化求出划分超平面,解决线性分类问题

线性SVM通过软间隔最大化求出划分超平面,解决线性分类问题

5.1 SVM概述

解决的问题:二分类问题

目标:通过间隔最大化策略,找一个超平面 ω ∗ ⋅ x + b ∗ = 0 \omega^*\cdot x+b^*=0 ωx+b=0 ,将特征空间划分为两部分 { + 1 , − 1 } \{+1,-1\} {+1,1}

模型:定义在特征空间上的 间隔最大 的线性分类器

  • 间隔最大是与感知机有区别的地方
  • 通过核技巧,使SVM成为非线性分类器/回归器

策略:间隔最大化 → \rightarrow 凸二次化(加约束项)

  • 正则化的合页损失函数最小化

算法:求解凸二次规划的最优化算法

5.1.1 分类

支持向量机 { S V C ( 支持向量分类机 ) { 线性支持向量机 { 线性可分:硬间隔最大化 近似线性可分:软间隔最大化 非线性支持向量机:核技巧 + 软间隔最大化 S V R ( 支持向量回归机 ) 支持向量机\begin{cases} SVC(支持向量分类机)\begin{cases} 线性支持向量机\begin{cases} 线性可分:硬间隔最大化\\ 近似线性可分:软间隔最大化 \end{cases}\\ 非线性支持向量机:核技巧+软间隔最大化 \end{cases}\\ SVR(支持向量回归机) \end{cases} 支持向量机 SVC(支持向量分类机) 线性支持向量机{线性可分:硬间隔最大化近似线性可分:软间隔最大化非线性支持向量机:核技巧+软间隔最大化SVR(支持向量回归机)

数据集
D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯ , ( x N , y N ) } , x i ∈ X ⊆ R n , y ∈ { + 1 , − 1 } , i = 1 , 2 , ⋯ , N D=\{(x_1,y_1),(x_2,y_2),\cdots,(x_N,y_N)\},x_i\in\mathcal{X}\subseteq R^n,y\in \{+1,-1\},i=1,2,\cdots,N D={(x1,y1),(x2,y2),,(xN,yN)},xiXRn,y{+1,1},i=1,2,,N

5.2 线性可分SVM

eg:SVM解决二分类问题的思路

线性可分的数据集可以简化为二维平面上的点集。

在直角坐标系中,如果有若干个点位于 x x x 轴下方,另外若干个点位于 x x x 轴上方,这两个点集共同构成了一个线性可分的训练数据集,而 x x x 轴就是将它们区别开的一维超平面,也就是直线。

假设 x x x 轴上方的点全部位于直线 y = 1 y=1 y=1 上及其上方, x x x 轴下方的点全部位于直线 y = − 2 y=-2 y=2 上及其下方。则任何平行于 x x x 轴且在 ( − 2 , 1 ) (-2,1) (2,1) 之间的直线都可以将这个训练集分开。但此时面临选择哪一条直线分类效果最好的问题。

直观上看 y = − 0.5 y=-0.5 y=0.5 最好,这条分界线正好位于两个边界中间,与两个类别的间隔 可以同时达到最大。当训练集中的数据因为噪音干扰而移动时,这个最优划分超平面的划分精确度受到的影响最小,具有很强的泛化能力

5.2.1 线性可分SVM基本思想

在这里插入图片描述

在高维的特征空间上,划分超平面可以用简单的线性方程描述
ω ⋅ x + b = 0 \omega\cdot x+b=0 ωx+b=0

  • n n n 维向量 ω \omega ω 为法向量,决定了超平面的方向
  • b b b 为截距,决定了超平面与高维空间中原点的距离

划分超平面将特征空间分为两部分

  • 法向量所指一侧——正例, y = + 1 y=+1 y=+1
  • 法向量反方向恻——负例, y = − 1 y=-1 y=1

决策函数:
f ( x ) = s i g n ( ω ⋅ x + b ) f(x)=sign(\omega \cdot x+b) f(x)=sign(ωx+b)

5.2.2 策略

硬间隔最大化策略 ——使距离超平面最近的两个点之间的间距最大

在这里插入图片描述

函数间隔

超平面 ( ω , b ) (\omega,b) (ω,b) 关于 ( x i , y i ) (x_i,y_i) (xi,yi) 的函数间隔
γ i = y i ( ω ⋅ x i + b ) \gamma_i=y_i(\omega\cdot x_i+b) γi=yi(ωxi+b)

  • 符号:是否分类正确
  • 大小:确信程度—— ∣ ω ⋅ x i + b ∣ \vert \omega\cdot x_i+b\vert ωxi+b 表示点到超平面的远近程度

超平面关于数据集 D D D 的函数间隔
γ ^ = min ⁡ x i ∈ X γ i ^ = min ⁡ x i ∈ X y i ( ω ⋅ + b ) \hat{\gamma}=\min\limits_{x_i\in \mathcal{X}}\hat{\gamma_i}=\min\limits_{x_i\in \mathcal{X}}y_i(\omega\cdot+b) γ^=xiXminγi^=xiXminyi(ω+b)
可用函数间隔表示分类的正确性和确信程度

几何间隔

给定超平面后,特征空间中的样本点 x i x_i xi 到超平面的距离可以表示为
+ 1 类到超平面的距离: γ i = ω ⋅ x i + b ∥ ω ∥ 2 − 1 类到超平面的距离: γ i = − ω ⋅ x i + b ∥ ω ∥ 2 +1类到超平面的距离:\gamma_i=\frac{\omega\cdot x_i+b}{\Vert \omega\Vert_2}\\ -1类到超平面的距离:\gamma_i=-\frac{\omega\cdot x_i+b}{\Vert \omega\Vert_2} +1类到超平面的距离:γi=ω2ωxi+b1类到超平面的距离:γi=ω2ωxi+b
即点被正确分类时,到超平面几何距离
γ i = y i ( ω ⋅ x i + b ∥ ω ∥ 2 ) \gamma_i=y_i\left(\frac{\omega\cdot x_i+b}{\Vert \omega\Vert_2}\right) γi=yi(ω2ωxi+b)

  • 这个距离是一个归一化距离——几何间隔

数据集 D D D 到超平面 ( ω , b ) (\omega,b) (ω,b) 的几何距离
γ = min ⁡ x i ∈ X ω T ⋅ x i + b ∥ ω ∥ 2 = min ⁡ x i ∈ X γ ^ i ∥ ω ∥ 2 \begin{aligned} \gamma&=\min\limits_{x_i\in \mathcal{X}}\frac{\omega^T\cdot x_i+b}{\Vert \omega\Vert_2}\\ &=\min\limits_{x_i\in \mathcal{X}}\frac{\hat{\gamma}_i}{\Vert \omega\Vert_2} \end{aligned} γ=xiXminω2ωTxi+b=xiXminω2γ^i

硬间隔最大化

定理 :最大分离超平面存在且唯一
{ max ⁡ ω , b γ = max ⁡ ω , b min ⁡ x i ∈ X ω ⋅ x i + b ∥ ω ∥ 2 = max ⁡ ω , b min ⁡ x i ∈ X γ ^ i ∥ ω ∥ 2 s . t . y i ( ω ⋅ x i + b ∥ ω ∥ ) ≥ γ \begin{cases} \max\limits_{\omega,b}\gamma=\max\limits_{\omega,b}\min\limits_{x_i\in \mathcal{X}}\frac{\omega\cdot x_i+b}{\Vert \omega\Vert_2}=\max\limits_{\omega,b}\min\limits_{x_i\in \mathcal{X}}\frac{\hat{\gamma}_i}{\Vert \omega\Vert_2}\\ s.t.\quad y_i\left(\frac{\omega\cdot x_i+b}{\Vert \omega\Vert}\right)\ge \gamma \end{cases} ω,bmaxγ=ω,bmaxxiXminω2ωxi+b=ω,bmaxxiXminω2γ^is.t.yi(ωωxi+b)γ

可通过等比例调整参数 ω \omega ω b b b ,可以使每个样本到达最优划分超平面的函数距离都不小于 1 1 1
λ i ( ω ⋅ x i + b ) ≥ 1 , y i = + 1 λ i ( ω ⋅ x i + b ) ≤ − 1 , y i = − 1 \lambda_i(\omega\cdot x_i+b)\ge 1,y_i=+1\\ \lambda_i(\omega\cdot x_i+b)\le -1,y_i=-1\\ λi(ωxi+b)1,yi=+1λi(ωxi+b)1,yi=1
λ i = 1 ω x i + b \lambda_i=\frac{1}{\omega x_i+b} λi=ωxi+b1 ,有
∣ γ ^ ′ ∣ = ∣ λ γ ^ ∣ ≥ 1 \vert \hat{\gamma}'\vert=\vert \lambda \hat{\gamma}\vert\ge 1\\ γ^=λγ^1
问题变为
{ max ⁡ ω , b γ ′ = max ⁡ ω , b min ⁡ x i ∈ X λ y i ( ω ⋅ x i + b ) ∥ λ ω ∥ 2 ≥ max ⁡ ω , b 1 ∥ ω ′ ∥ 2 s . t . λ y i ( ω ⋅ x i + b ) ∥ λ ω ∥ 2 = y i ( ω ′ ⋅ x i + b ) ∥ ω ′ ∥ 2 ≥ γ ′ ⇒ { max ⁡ ω , b γ = max ⁡ ω , b 1 ∥ ω ∥ 2 s . t . y i ( ω ⋅ x i + b ) ≥ 1 , i = 1 , 2 , ⋯ , N ⟺ 便于凸二次规划 { min ⁡ ω , b 1 γ = min ⁡ ω , b ∥ ω ∥ 2 2 2 s . t . y i ( ω ⋅ x i + b ) − 1 ≥ 0 , i = 1 , 2 , ⋯ , N ⟺ { min ⁡ ω , b ∥ ω ∥ 2 2 2 s . t . 1 − y i ( ω ⋅ x i + b ) ≤ 0 , i = 1 , 2 , ⋯ , N \begin{aligned} &\begin{cases} \max\limits_{\omega,b}\gamma'=\max\limits_{\omega,b}\min\limits_{x_i\in \mathcal{X}}\frac{\lambda y_i(\omega\cdot x_i+b)}{\Vert \lambda\omega\Vert_2}\ge \max\limits_{\omega,b}\frac{1}{\Vert \omega'\Vert_2}\\ s.t.\quad \frac{\lambda y_i(\omega\cdot x_i+b)}{\Vert \lambda\omega\Vert_2}=\frac{y_i(\omega'\cdot x_i+b)}{\Vert \omega'\Vert_2}\ge \gamma' \end{cases}\\ \Rightarrow &\begin{cases} \max\limits_{\omega,b}\gamma=\max\limits_{\omega,b}\frac{1}{\Vert \omega\Vert_2}\\ s.t.\quad y_i(\omega\cdot x_i+b)\ge 1,i=1,2,\cdots,N \end{cases}\\ \overset{便于凸二次规划}{\iff} &\begin{cases} \min\limits_{\omega,b}\frac{1}{\gamma}=\min\limits_{\omega,b}\frac{\Vert \omega\Vert_2^2}{2}\\ s.t.\quad y_i(\omega\cdot x_i+b)-1\ge 0,i=1,2,\cdots,N \end{cases}\\ \iff&\begin{cases} \min\limits_{\omega,b}\frac{\Vert \omega\Vert_2^2}{2}\\ s.t.\quad 1-y_i(\omega\cdot x_i+b)\le 0,i=1,2,\cdots,N \end{cases} \end{aligned} 便于凸二次规划 ω,bmaxγ=ω,bmaxxiXminλω2λyi(ωxi+b)ω,bmaxω21s.t.λω2λyi(ωxi+b)=ω2yi(ωxi+b)γ ω,bmaxγ=ω,bmaxω21s.t.yi(ωxi+b)1,i=1,2,,N ω,bminγ1=ω,bmin2ω22s.t.yi(ωxi+b)10,i=1,2,,N ω,bmin2ω22s.t.1yi(ωxi+b)0,i=1,2,,N

5.2.3 原始算法

输入 :线性可分的数据集
D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯ , ( x N , y N ) } , x i ∈ X ⊆ R n , y i ∈ Y = { + 1 , − 1 } , i = 1 , 2 , ⋯ , N \begin{aligned} D=\{(x_1,y_1),(x_2,y_2),\cdots,(x_N,y_N)\},x_i\in \mathcal{X}\subseteq R^n,y_i\in \mathcal{Y}=\{+1,-1\},i=1,2,\cdots,N \end{aligned} D={(x1,y1),(x2,y2),,(xN,yN)},xiXRn,yiY={+1,1},i=1,2,,N
输出 :最大分离超平面和决策函数

步骤

  1. 构造并求解最优化问题
    { min ⁡ ω , b ∥ ω ∥ 2 2 2 s . t . 1 − y i ( ω ⋅ x i + b ) ≤ 0 , i = 1 , 2 , ⋯ , N \begin{cases} \min\limits_{\omega,b}\frac{\Vert \omega\Vert_2^2}{2}\\ s.t.\quad 1-y_i(\omega\cdot x_i+b)\le 0,i=1,2,\cdots,N \end{cases} ω,bmin2ω22s.t.1yi(ωxi+b)0,i=1,2,,N
    凸二次规划可得最优解 ω ∗ , b ∗ \omega^*,b^* ω,b

  2. 可得分类超平面
    ω ∗ ⋅ x + b ∗ = 0 \omega^*\cdot x+b^*=0 ωx+b=0
    决策函数 f ( x ) = s i g n ( ω ∗ ⋅ x + b ∗ ) f(x)=sign(\omega^*\cdot x+b^*) f(x)=sign(ωx+b)

支持向量

在特征空间中,距离划分超平面最近的样本点能让函数间隔取等号,这些样本点称为 支持向量 ,即有点 x k + , x k − x_{k^+},x_{k^-} xk+,xk
ω ⋅ x k + + b = 1 , y k + = + 1 ω ⋅ x k − + b = − 1 , y k − = − 1 \omega\cdot x_{k^+}+b= 1,y_{k^+}=+1\\ \omega\cdot x_{k^-}+b= -1,y_{k^-}=-1\\ ωxk++b=1,yk+=+1ωxk+b=1,yk=1
在这里插入图片描述

  • H 1 , H 2 H_1,H_2 H1,H2 为分类间隔边界; S S S 为分离超平面

两个异类支持向量到超平面的距离之和为 2 ∥ ω ∥ \frac{2}{\Vert \omega\Vert} ω2

因而对于线性可分的SVM任务就是:在满足上述不等式的条件下,寻找 2 ∥ ω ∥ \frac{2}{\Vert \omega\Vert} ω2 的最大值,最大化 2 ∥ ω ∥ \frac{2}{\Vert \omega\Vert} ω2 等效于最小化 1 2 ∥ ω ∥ 2 \frac{1}{2}\Vert \omega\Vert^2 21ω2

5.2.4 对偶形式

输入:
D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯ , ( x N , y N ) } ∈ X ∈ R n , y i ∈ Y ∈ { + 1 , − 1 } , i = 1 , ⋯ , N D=\{(x_1,y_1),(x_2,y_2),\cdots,(x_N,y_N)\}\in \mathcal{X}\in R^n,y_i\in \mathcal{Y}\in \{+1,-1\},i=1,\cdots,N D={(x1,y1),(x2,y2),,(xN,yN)}XRn,yiY{+1,1},i=1,,N
输出:分离超平面和决策函数

算法
1. 构造并求解对偶问题

由原始算法,可得 Lagrange 函数
L ( ω , b , α ) = 1 2 ∥ ω ∥ 2 2 + ∑ i = 1 N α i [ 1 − y i ( ω i ⋅ x i + b ) ] , α i ≥ 0 L(\omega,b,\alpha)=\frac{1}{2}\Vert \omega\Vert_2^2+\sum\limits_{i=1}^N\alpha_i[1-y_i(\omega_i\cdot x_i+b)],\alpha_i\ge 0 L(ω,b,α)=21ω22+i=1Nαi[1yi(ωixi+b)],αi0
1 2 ∥ ω ∥ 2 2 \frac{1}{2}\Vert \omega\Vert_2^2 21ω22 为凸函数,约束范围为凸集,则有 局部最优解 = 全局最优解 局部最优解=全局最优解 局部最优解=全局最优解
最优解 ∈ 约束域 , 即 1 − y i ( ω i ⋅ x i + b ) < 0 最优解 ∉ 约束域 , 即最优解在约束边界上,有 1 − y i ( ω i ⋅ x i + b ) = 0 } ⇒ max ⁡ α i α i [ 1 − y i ( ω i ⋅ x i + b ) ] = 0 \left. \begin{aligned} 最优解\in 约束域,即1-y_i(\omega_i\cdot x_i+b)<0\\ 最优解\notin 约束域,即最优解在约束边界上,有1-y_i(\omega_i\cdot x_i+b)=0 \end{aligned} \right\}\Rightarrow \max\limits_{\alpha_i}\alpha_i[1-y_i(\omega_i\cdot x_i+b)]=0 最优解约束域,1yi(ωixi+b)<0最优解/约束域,即最优解在约束边界上,有1yi(ωixi+b)=0}αimaxαi[1yi(ωixi+b)]=0
可知 max ⁡ α L ( ω , b , α ) = 1 2 ∥ ω ∥ 2 2 \max\limits_{\alpha}L(\omega,b,\alpha)=\frac{1}{2}\Vert \omega\Vert_2^2 αmaxL(ω,b,α)=21ω22 ,即
min ⁡ ω 1 2 ∥ ω ∥ 2 2 = min ⁡ ω max ⁡ α L ( ω , α ) \min\limits_{\omega}\frac{1}{2}\Vert \omega\Vert_2^2=\min\limits_{\omega}\max\limits_{\alpha}L(\omega,\alpha) ωmin21ω22=ωminαmaxL(ω,α)
又由于 min ⁡ ω max ⁡ α L ( ω , b , α ) \min\limits_{\omega}\max\limits_{\alpha}L(\omega,b,\alpha) ωminαmaxL(ω,b,α) max ⁡ α min ⁡ ω L ( ω , b , α ) \max\limits_{\alpha}\min\limits_{\omega}L(\omega,b,\alpha) αmaxωminL(ω,b,α) 是对偶问题,有相同的最优解

  • 对偶问题(极小中求极大),相当于求原问题(极大中求极小)的下界

最优解满足KKT条件
{ ∂ L ∂ ω = 0 ∂ L ∂ b = 0 ∂ L ∂ α i = 0 α i ≥ 0 α i [ 1 − y i ( ω i ⋅ x i + b ) ] ≤ 0 ⇒ { ω − ∑ i = 1 N α i y i x i = 0 − ∑ i = 1 N α i y i = 0 1 − y i ( ω i ⋅ x i + b ) = 0 α i ≥ 0 α i [ 1 − y i ( ω i ⋅ x i + b ) ] ≤ 0 \begin{cases} \frac{\partial L}{\partial \omega}=0\\ \frac{\partial L}{\partial b}=0\\ \frac{\partial L}{\partial \alpha_i}=0\\ \alpha_i\ge 0\\ \alpha_i[1-y_i(\omega_i\cdot x_i+b)]\le 0 \end{cases}\Rightarrow \begin{cases} \omega-\sum\limits_{i=1}^N\alpha_iy_ix_i=0\\ -\sum\limits_{i=1}^N\alpha_iy_i=0\\ 1-y_i(\omega_i\cdot x_i+b)=0\\ \alpha_i\ge 0\\ \alpha_i[1-y_i(\omega_i\cdot x_i+b)]\le 0 \end{cases} ωL=0bL=0αiL=0αi0αi[1yi(ωixi+b)]0 ωi=1Nαiyixi=0i=1Nαiyi=01yi(ωixi+b)=0αi0αi[1yi(ωixi+b)]0
即有 ω ∗ = ∑ i = 1 N α i y i x i \omega^*=\sum\limits_{i=1}^N\alpha_iy_ix_i ω=i=1Nαiyixi ,代入 L ( ω , b , α ) L(\omega,b,\alpha) L(ω,b,α)

min ⁡ ω , b L ( α ) = 1 2 ( ω ∗ ) T ω ∗ + ∑ i = 1 N α i − ∑ i = 1 N α i y i ω ∗ ⋅ x i − ∑ i = 1 N α i y i b = 1 2 ∑ j = 1 N α j y j x j ∑ i = 1 N α i y i x i + ∑ i = 1 N α i − ∑ i = 1 N α i y i ∑ j = 1 N α j y j x j = x j ⋅ , x i 为向量点积,其余部分为标量 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j x i ⋅ x j − ∑ i = 1 N ∑ j = 1 N α i α j y i y j x i ⋅ x j + ∑ i = 1 N α i = ∑ i = 1 N α i − 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j x i ⋅ x j \begin{aligned} \min\limits_{\omega,b}L(\alpha)&=\frac{1}{2}(\omega^*)^T\omega^*+\sum\limits_{i=1}^N\alpha_i-\sum\limits_{i=1}^N\alpha_iy_i\omega^*\cdot x_i-\sum\limits_{i=1}^N\alpha_iy_i b\\ &=\frac{1}{2}\sum\limits_{j=1}^N\alpha_jy_jx_j\sum\limits_{i=1}^N\alpha_iy_ix_i+\sum\limits_{i=1}^N\alpha_i-\sum\limits_{i=1}^N\alpha_iy_i\sum\limits_{j=1}^N\alpha_jy_jx_j\\ &\xlongequal{x_j\cdot,x_i为向量点积,其余部分为标量}\frac{1}{2}\sum\limits_{i=1}^N\sum\limits_{j=1}^N\alpha_i\alpha_jy_iy_jx_i\cdot x_j-\sum\limits_{i=1}^N\sum\limits_{j=1}^N\alpha_i\alpha_jy_iy_jx_i\cdot x_j+\sum\limits_{i=1}^N\alpha_i\\ &=\sum\limits_{i=1}^N\alpha_i-\frac{1}{2}\sum\limits_{i=1}^N\sum\limits_{j=1}^N\alpha_i\alpha_jy_iy_jx_i\cdot x_j \end{aligned} ω,bminL(α)=21(ω)Tω+i=1Nαii=1Nαiyiωxii=1Nαiyib=21j=1Nαjyjxji=1Nαiyixi+i=1Nαii=1Nαiyij=1Nαjyjxjxj,xi为向量点积,其余部分为标量 21i=1Nj=1Nαiαjyiyjxixji=1Nj=1Nαiαjyiyjxixj+i=1Nαi=i=1Nαi21i=1Nj=1Nαiαjyiyjxixj
对偶问题
{ max ⁡ α L ( α ) = ∑ i = 1 N α i − 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j x i ⋅ x j s . t . α i ≥ 0 ∑ i = 1 N α i y i = 0 \begin{cases} \max\limits_{\alpha}L(\alpha)=\sum\limits_{i=1}^N\alpha_i-\frac{1}{2}\sum\limits_{i=1}^N\sum\limits_{j=1}^N\alpha_i\alpha_jy_iy_jx_i\cdot x_j\\ s.t. \quad \alpha_i\ge 0\\ \qquad \sum\limits_{i=1}^N\alpha_iy_i=0\\ \end{cases} αmaxL(α)=i=1Nαi21i=1Nj=1Nαiαjyiyjxixjs.t.αi0i=1Nαiyi=0
求解对偶问题,可得 α ∗ = ( α 1 ∗ α 2 ∗ ⋮ α N ∗ ) \alpha^*=\left(\begin{aligned}\alpha_1^*\\\alpha_2^*\\\vdots\\\alpha_N^*\end{aligned}\right) α= α1α2αN

2. 计算参数

α ∗ \alpha^* α 可得 ω ∗ = ∑ i = 1 N α i ∗ y i x i \omega^*=\sum\limits_{i=1}^N\alpha^*_iy_ix_i ω=i=1Nαiyixi

  • 结论:对于支持向量,有 α j ∗ > 0 \alpha_j^*>0 αj>0 ,其余点 α ∗ = 0 \alpha^*=0 α=0

间隔边界上的点,满足
y ( ω ⋅ x + b ) = 1 y 2 ( ω ⋅ x + b ) = y ⇒ ω ⋅ x + b = y \begin{aligned} &y(\omega\cdot x+b)=1\\ &y^2(\omega\cdot x+b)=y\\ \Rightarrow &\omega\cdot x+b=y \end{aligned} y(ωx+b)=1y2(ωx+b)=yωx+b=y
ω ∗ \omega^* ω 代入支持向量
ω ∗ x j + b ∗ = y j ⇒ b ∗ = y j − ω ∗ x j = y j − ∑ i = 1 N α i ∗ y i ( x i ⋅ x j ) \begin{aligned} &\omega^*x_j+b^*=y_j\\ \Rightarrow&b^*=y_j-\omega^*x_j=y_j-\sum\limits_{i=1}^N\alpha_i^*y_i(x_i\cdot x_j) \end{aligned} ωxj+b=yjb=yjωxj=yji=1Nαiyi(xixj)

3. 求得分离超平面

{ ω ∗ x + b ∗ = 0 分类决策函数 f ( x ) = s i g n ( ω ∗ x + b ) ⇒ { ∑ i = 1 N α i y i x i ⋅ x + ( y j − ∑ i = 1 N α i ∗ y i ( x i ⋅ x j ) ) = 0 f ( x ) = s i g n ( ∑ i = 1 N α i y i x i ⋅ x + y j − ∑ i = 1 N α i ∗ y i ( x i ⋅ x j ) ) \begin{cases} \omega^* x+b^*=0\\ 分类决策函数 f(x)=sign(\omega^* x+b) \end{cases}\Rightarrow\begin{cases} \sum\limits_{i=1}^N\alpha_iy_ix_i\cdot x+\left(y_j-\sum\limits_{i=1}^N\alpha_i^*y_i(x_i\cdot x_j)\right)=0\\ f(x)=sign\left(\sum\limits_{i=1}^N\alpha_iy_ix_i\cdot x+y_j-\sum\limits_{i=1}^N\alpha_i^*y_i(x_i\cdot x_j)\right) \end{cases} {ωx+b=0分类决策函数f(x)=sign(ωx+b) i=1Nαiyixix+(yji=1Nαiyi(xixj))=0f(x)=sign(i=1Nαiyixix+yji=1Nαiyi(xixj))

优点
  • 对偶问题易于求解
  • 引入核函数,推广到非线性分类问题
例题

有样本 + 1 : x 1 = ( 3 , 3 ) , x 2 = ( 4 , 3 ) +1:x_1=(3,3),x_2=(4,3) +1:x1=(3,3),x2=(4,3) − 1 : x 3 = ( 1 , 1 ) -1:x_3=(1,1) 1:x3=(1,1)

由对偶算法
{ min ⁡ α ( 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j x i ⋅ x j − ∑ i = 1 N α i ) s . t . α i ≥ 0 ∑ i = 1 N α i y i = 0 , i = 1 , 2 , ⋯ , N \begin{cases} \min\limits_{\alpha}\left(\frac{1}{2}\sum\limits_{i=1}^N\sum\limits_{j=1}^N\alpha_i\alpha_jy_iy_jx_i\cdot x_j-\sum\limits_{i=1}^N\alpha_i\right)\\ s.t.\quad \alpha_i\ge 0\\ \qquad \sum\limits_{i=1}^N\alpha_iy_i=0,i=1,2,\cdots,N \end{cases} αmin(21i=1Nj=1Nαiαjyiyjxixji=1Nαi)s.t.αi0i=1Nαiyi=0,i=1,2,,N
代入后有
{ min ⁡ α L ( α ) = 1 2 ( 18 α 1 2 + 25 α 2 2 + 2 α 3 2 + 42 α 1 α 2 − 12 α 1 α 3 − 14 α 2 α 3 ) − ( α 1 + α 2 + α 3 ) s . t . α 1 + α 2 − α 3 = 0 α i ≥ 0 \begin{cases} \begin{equation}\tag{1} \min\limits_{\alpha}L(\alpha)=\frac{1}{2}(18\alpha_1^2+25\alpha_2^2+2\alpha_3^2+42\alpha_1\alpha_2-12\alpha_1\alpha_3-14\alpha_2\alpha_3)-(\alpha_1+\alpha_2+\alpha_3) \end{equation} \\ s.t.\quad \alpha_1+\alpha_2-\alpha_3=0 \\ \qquad \alpha_i\ge 0 \end{cases} αminL(α)=21(18α12+25α22+2α32+42α1α212α1α314α2α3)(α1+α2+α3)(1)s.t.α1+α2α3=0αi0
α 3 = α 1 + α 2 \alpha_3=\alpha_1+\alpha_2 α3=α1+α2 代入 ( 1 ) (1) (1)
S ( α 1 , α 2 ) = 4 α 1 2 + 13 2 α 2 2 + 10 α 1 α 2 − 2 α 1 − 2 α 2 S(\alpha_1,\alpha_2)=4\alpha_1^2+\frac{13}{2}\alpha_2^2+10\alpha_1\alpha_2-2\alpha_1-2\alpha_2 S(α1,α2)=4α12+213α22+10α1α22α12α2
∂ S ∂ α 1 = 0 \frac{\partial S}{\partial \alpha_1}=0 α1S=0 ∂ S ∂ α 2 = 0 \frac{\partial S}{\partial \alpha_2}=0 α2S=0 可得 ( α 1 , α 2 ) T = ( 3 2 , − 1 ) T (\alpha_1,\alpha_2)^T=(\frac{3}{2},-1)^T (α1,α2)T=(23,1)T ,但不满足约束条件

可知最优解在约束边界上
若 α 1 = 0 ,令 ∂ S ∂ α 2 = 0 ⇒ α 2 = 2 13 ⇒ S ( 0 , 2 13 ) = − 2 13 α 2 = 0 ,令 ∂ S ∂ α 1 = 0 ⇒ α 1 = 1 4 ⇒ S ( 1 4 , 0 ) = − 1 4 若\alpha_1=0,令 \frac{\partial S}{\partial \alpha_2}=0\Rightarrow \alpha_2=\frac{2}{13}\Rightarrow S(0,\frac{2}{13})=-\frac{2}{13}\\ \alpha_2=0,令\frac{\partial S}{\partial \alpha_1}=0\Rightarrow \alpha_1=\frac{1}{4}\Rightarrow S(\frac{1}{4},0)=-\frac{1}{4} α1=0,令α2S=0α2=132S(0,132)=132α2=0,令α1S=0α1=41S(41,0)=41
∴ \therefore S ( α 1 , α 2 ) S(\alpha_1,\alpha_2) S(α1,α2) ( 1 4 , 0 ) T (\frac{1}{4},0)^T (41,0)T 上取最小, α 3 = α 1 + α 2 = 1 4 \alpha_3=\alpha_1+\alpha_2=\frac{1}{4} α3=α1+α2=41

由于 α 1 = α 3 = 1 4 ≠ 0 \alpha_1=\alpha_3=\frac{1}{4}\neq 0 α1=α3=41=0 ,故 x 1 , x 3 x_1,x_3 x1,x3 为支持向量
ω ∗ = α 1 y 1 x 1 + α 3 y 3 x 3 = 1 4 ( 3 3 ) + 1 4 ( − 1 ) ( 1 1 ) = ( 1 2 1 2 ) b ∗ = y 3 − ∑ i = 1 3 α i y i ( x i ⋅ x 3 ) = − 2 \begin{aligned} \omega^*&=\alpha_1y_1x_1+\alpha_3y_3x_3\\ &=\frac{1}{4}\left(\begin{aligned} 3\\3 \end{aligned}\right)+\frac{1}{4}(-1)\left(\begin{aligned} 1\\1 \end{aligned}\right)=\left(\begin{aligned} \frac{1}{2}\\\frac{1}{2} \end{aligned}\right)\\ b^*&=y_3-\sum\limits_{i=1}^3\alpha_iy_i(x_i\cdot x_3)=-2 \end{aligned} ωb=α1y1x1+α3y3x3=41(33)+41(1)(11)= 2121 =y3i=13αiyi(xix3)=2
所以有分离超平面 1 2 x ( 1 ) + 1 2 x ( 2 ) − 2 = 0 \frac{1}{2}x^{(1)}+\frac{1}{2}x^{(2)}-2=0 21x(1)+21x(2)2=0 ,决策函数 f ( x ) = s i g n ( 1 2 x ( 1 ) + 1 2 x ( 2 ) − 2 ) f(x)=sign(\frac{1}{2}x^{(1)}+\frac{1}{2}x^{(2)}-2) f(x)=sign(21x(1)+21x(2)2)

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/137016.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

帝国EmpireCMS_7.5_SC_UTF8漏洞复现

一、漏洞说明 EmpireCMS 7.5版本及之前版本在后台备份数据库时&#xff0c;未对数据库表名做验证&#xff0c;通过修改数据库表名 二、搭建环境 下载地址&#xff1a;http://www.phome.net/download/ 然后执行&#xff1a;http://127.0.0.1/EmpireCMS_7.5_SC_UTF8/upload/e/ins…

安卓内部存储不需要申请权限,外部文件需要申请权限

内部存储和外部存储的访问权限区别&#xff1a; 内部路径&#xff1a;/data/user/0/com.xxx.xxx/ getExternalFilesDir可以获取到属于 App 自身的文件路径&#xff0c;通常是~/Android/data/<package-name>/**/。在该目录中读写文件均不需要申请权限,随着APP卸载就会删…

暨南大学旅游管理《乡村振兴战略下传统村落文化旅游设计》许少辉校友——2023学生开学季辉少许

暨南大学旅游管理《乡村振兴战略下传统村落文化旅游设计》许少辉校友——2023学生开学季辉少许

【系统美化】快速打开鼠标样式切换的对话框

从 间谍过家家阿尼亚鼠标指针 v19 这个网址下载的鼠标样式中,提取出这样一句: rundll32.exe shell32.dll,Control_RunDLL main.cpl终于费劲巴力的找到快速打开鼠标样式对话框的方式了。 方法1:windows R 打开运行 main.cpl 0,1方法2:创建桌面快捷方式 桌面->右键->创…

ctf web基础php

1.preg_match函数绕过 1.数组绕过 <?php $pass$_GET[zx]; if(!preg_match("/admin/",$zx)false){die(hacker); } echo flag; ?> ?zx[]admin 2.换行符绕过 <?php $pass$_GET[zx]; if(!preg_match("/^.(admin).$/",$zx)false){die(hacker)…

行业追踪,2023-09-20

自动复盘 2023-09-20 凡所有相&#xff0c;皆是虚妄。若见诸相非相&#xff0c;即见如来。 k 线图是最好的老师&#xff0c;每天持续发布板块的rps排名&#xff0c;追踪板块&#xff0c;板块来开仓&#xff0c;板块去清仓&#xff0c;丢弃自以为是的想法&#xff0c;板块去留让…

R绘制箱线图

代码大部分来自boxplot()函数的帮助文件&#xff0c;可以通过阅读帮助文件&#xff0c;调整代码中相应参数看下效果&#xff0c;进而可以理解相应的作用&#xff0c;帮助快速掌握barplot()函数的用法。 语法 Usage(来自帮助文件) barplot(height, ...)## Default S3 method: …

分析key原理

总结&#xff1a; key是虚拟dom对象的标识&#xff0c;当数据发生变化时&#xff0c;vue会根据新数据生成新的虚拟dom&#xff0c;随后vue进行新虚拟dom与旧虚拟dom的差异比较 比较规则&#xff1a; ①旧虚拟dom中找到了与新虚拟dom相同的key 若虚拟dom中的内容没变&#xff0c…

两阶段鲁棒优化matlab实现——CCG和benders

目录 1 主要内容 2 部分代码 3 程序结果 4 程序链接 1 主要内容 程序采用matlab复现经典论文《Solving two-stage robust optimization problems using a column-and-constraint generation method》算例&#xff0c;实现了C&CG和benders算法两部分内容&#xff0c;通过…

SpringMVC系列(六)之JSON数据返回以及异常处理机制

目录 前言 一. JSON概述 二. JSON数据返回 1. 导入pom依赖 2. 添加配置文件&#xff08;spring-mvc.xml&#xff09; 3. ResponseBody注解使用 4. 效果展示 5. Jackson介绍 三. 全局异常处理 1. 为什么要全局异常处理 2. 异常处理思路 3. 异常处理方式一 4. 异常处…

【内网穿透】Python一行代码实现文件共享,并实现公网访问

目录 1.前言 2.本地文件服务器搭建 2.1.python的安装和设置 2.2.cpolar的安装和注册 3.本地文件服务器的发布 3.1.Cpolar云端设置 3.2.Cpolar本地设置 4.公网访问测试 5.结语 1.前言 数据共享作为和连接作为互联网的基础应用&#xff0c;不仅在商业和办公场景有广泛的…

无涯教程-JavaScript - POWER函数

描述 POWER函数返回加到幂的数字的输出。 语法 POWER (number, power)争论 Argument描述Required/OptionalNumber 基数。 它可以是任何实数。 RequiredPowerThe exponent to which the base number is raised.Required Notes 可以使用" ^"运算符代替POWER来指示…

SpringBoot中级开发--事务配置管理(10)

事务在整个开发框架中是一个非常常用的功能&#xff0c;特别涉及到数据库操作。像Mysql&#xff0c;就有4个数据库级别: (1) READ UNCOMMITTED&#xff08;读未提交&#xff09;&#xff1a;允许读取未提交的数据。这种级别的事务可以读取到其他事务未提交的数据&#xff0c;可…

windows下C++的反射功能

概述 c/c如果在日志中查看某个结构体/类的每个变量名&#xff0c;变量值信息&#xff0c;只能通过printf逐个格式化&#xff0c;非常繁琐&#xff0c;如何做到类似protobuff转json的序列化功能呢&#xff1f;该dll库先通过分析pdb文件获取结构体/类的变量名称、变量地址&#…

某计费管理系统任意文件读取漏洞

文章目录 声明一、漏洞描述二、漏洞复现声明 请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用。 一、漏洞描述 蓝海…

使用JQ获取并渲染三级联动分类数据

数据JSON格式 代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title> </he…

普中51-矩阵按键

矩阵按键 原理图如下&#xff1a; 行列扫描 行列扫描法检测时&#xff0c;先送一列为低电平&#xff0c;其余几列全为高电平(此时我们确 定了列数)&#xff0c;然后立即轮流检测一次各行是否有低电平&#xff0c;若检测到某一行为低电 平(这时我们又确定了行数)&#xff0c;…

卓越领先!安全狗入选2023年福建省互联网综合实力50强

近日&#xff0c;福建省互联网协会在2023年东南科技论坛——智能算力助力数字经济产业融合发展论坛上正式发布2023年福建省互联网综合实力前50家企业最终评定结果。 作为国内云原生安全领导厂商&#xff0c;安全狗凭借突出的竞争力和市场表现入选综合实力50强。 厦门服云信息科…

Cesium 空间量算——高度量算

高度量算 需求分析 需求 测量两个点之间的高度 分析 直线,水平,垂直测量我们也叫高度的测量,大概原理就是空间两点垂直与地面画一个直角三角形,分别标出每条线的长度 // 添加标签 addLabel(centerPosition, text) {return this.viewer.entities.add(new Cesium.Entity({pos…

创邻科技,位居IDC MarketScape中国图数据库市场领导者类别

图数据库&#xff0c;正进入市场发展的新阶段。 随着中国经济社会数字化转型加速&#xff0c;数据成为新型生产要素。如何存储并管理海量数据&#xff0c;挖掘数据价值&#xff0c;打破原有增长天花板&#xff0c;成为企业重塑商业价值的关键。存量经济时代更需要深层关系挖掘&…