• 数据挖掘与分析课程笔记(Chapter 21)


    数据挖掘与分析课程笔记

    • 参考教材:Data Mining and Analysis : MOHAMMED J.ZAKI, WAGNER MEIRA JR.

    文章目录

    1. 数据挖掘与分析课程笔记(目录)
    2. 数据挖掘与分析课程笔记(Chapter 1)
    3. 数据挖掘与分析课程笔记(Chapter 2)
    4. 数据挖掘与分析课程笔记(Chapter 5)
    5. 数据挖掘与分析课程笔记(Chapter 7)
    6. 数据挖掘与分析课程笔记(Chapter 14)
    7. 数据挖掘与分析课程笔记(Chapter 15)
    8. 数据挖掘与分析课程笔记(Chapter 20)
    9. 数据挖掘与分析课程笔记(Chapter 21)


    Chapter 21: Support Vector Machines (SVM)

    21.1 支撑向量与余量

    Set up D = { ( x i , y i ) } i = 1 n , x i ∈ R d , y i ∈ { − 1 , 1 } \mathbf{D}=\{(\mathbf{x}_i,y_i) \}_{i=1}^n,\mathbf{x}_i \in \mathbb{R}^d,y_i \in \{-1,1 \} D={(xi,yi)}i=1n,xiRd,yi{1,1},仅两类数据。

    • 超平面 (hyperplanes, d − 1 d-1 d1 维): h ( x ) : = w T x + b = w 1 x 1 + ⋯ + w d x d + b h(\mathbf{x}):=\mathbf{w}^T\mathbf{x}+b=w_1x_1+ \cdots +w_dx_d+b h(x):=wTx+b=w1x1++wdxd+b

      其中, w \mathbf{w} w 是法向量, − b w i -{b\over w_i} wib x i x_i xi 轴上的截距。

    • D \mathbf{D} D 称为是线性可分的,如果存在 h ( x ) h(\mathbf{x}) h(x) 使得对所有 y i = 1 y_i=1 yi=1 的点 x i \mathbf{x}_i xi h ( x i ) > 0 h(\mathbf{x}_i)>0 h(xi)>0 ,且对所有 y i = − 1 y_i=-1 yi=1 的点 x i \mathbf{x}_i xi h ( x i ) < 0 h(\mathbf{x}_i)<0 h(xi)<0 ,并将此 h ( x ) h(\mathbf{x}) h(x) 称为分离超平面。

      Remark:对于线性可分的 D \mathbf{D} D ,分离超平面有无穷多个。

    • 点到超平面的距离:
      x = x p + x r = x p + r ⋅ w ∣ ∣ w ∣ ∣ h ( x ) = h ( x p + r w ∥ w ∥ ) = w T ( x p + r w ∥ w ∥ ) + b = w T x p + b ⏟ h ( x p ) + r w T w ∥ w ∥ = h ( x p ) ⏟ 0 + r ∥ w ∥ = r ∥ w ∥ \mathbf{x}=\mathbf{x}_p+\mathbf{x}_r=\mathbf{x}_p+r\cdot\frac{\mathbf{w}}{||\mathbf{w}||}\\

      h(x)=h(xp+rww)=wT(xp+rww)+b=wTxp+bh(xp)+rwTww=h(xp)0+rw=rw" role="presentation">h(x)=h(xp+rww)=wT(xp+rww)+b=wTxp+bh(xp)+rwTww=h(xp)0+rw=rw
      x=xp+xr=xp+r∣∣w∣∣wh(x)=h(xp+rww)=wT(xp+rww)+b=h(xp) wTxp+b+rwwTw=0 h(xp)+rw=rw

      ∴ r = h ( x ) ∥ w ∥ , ∣ r ∣ = ∣ h ( x ∣ ) ∥ w ∥ \therefore r=\frac{h(\mathbf{x})}{\|\mathbf{w}\|},|r|=\frac{|h(\mathbf{x}|)}{\|\mathbf{w}\|} r=wh(x),r=wh(x)

    ∀ x i ∈ D \forall \mathbf{x}_i \in \mathbf{D} xiD h ( x ) h(\mathbf{x}) h(x) 的距离是 y i h ( x i ) ∥ w ∥ y_i\frac{h(\mathbf{x}_i)}{\|\mathbf{w}\|} yiwh(xi)

    在这里插入图片描述

    • 给定线性可分的 D \mathbf{D} D ,及分离超平面 h ( x ) h(\mathbf{x}) h(x) ,定义余量:
      δ ∗ = min ⁡ x i { y i ( w T x i + b ) ∥ w ∥ } \delta^*=\min\limits_{\mathbf{x}_i}\{\frac{y_i(\mathbf{w}^T\mathbf{x}_i+b)}{\|\mathbf{w}\|} \} δ=ximin{wyi(wTxi+b)}
      D \mathbf{D} D 中点到 h ( x ) h(\mathbf{x}) h(x) 距离的最小值,使得该 δ ∗ \delta^* δ 取到的数据点 x i \mathbf{x}_i xi 被称为支撑向量(可能不唯一)。

    • 标准超平面:对 ∀ h ( x ) = w T x + b \forall h(\mathbf{x})=\mathbf{w}^T\mathbf{x}+b h(x)=wTx+b,以及任意 s ∈ R ∖ { 0 } s\in \mathbb{R}\setminus \{0\} sR{0} s ( w T x + b ) = 0 s(\mathbf{w}^T\mathbf{x}+b)=0 s(wTx+b)=0 h ( x ) = 0 h(\mathbf{x})=0 h(x)=0 是同一超平面。

      x ∗ \mathbf{x}^* x 是支撑向量,若 s y ∗ ( w T x ∗ + b ) = 1   ( 1 ) sy^*(\mathbf{w}^T\mathbf{x}^*+b)=1\ (1) sy(wTx+b)=1 (1) ,则称 s h ( x ) = 0 sh(\mathbf{x})=0 sh(x)=0 是标准超平面。

      ( 1 ) (1) (1) 可得: s = 1 y ∗ ( w T x ∗ + b ) = 1 y ∗ h ( x ∗ ) s=\frac{1}{y^*(\mathbf{w}^T\mathbf{x}^*+b)}=\frac{1}{y^*h(\mathbf{x}^*)} s=y(wTx+b)1=yh(x)1

      此时,对于 s h ( x ) = 0 sh(\mathbf{x})=0 sh(x)=0 ,余量 δ ∗ = y ∗ h ( x ∗ ) ∥ w ∥ = 1 ∥ w ∥ \delta^*=\frac{y^*h(\mathbf{x}^*)}{\|\mathbf{w}\|}=\frac{1}{\|\mathbf{w}\|} δ=wyh(x)=w1

    事实:如果 w T x + b = 0 \mathbf{w}^T\mathbf{x}+b=0 wTx+b=0 是标准超平面,对 ∀ x i \forall \mathbf{x}_i xi ,一定有 y i ( w T x i + b ) ≥ 1 y_i(\mathbf{w}^T\mathbf{x}_i+b)\ge1 yi(wTxi+b)1

    21.2 SVM: 线性可分情形

    目标:寻找标准分离超平面使得其余量最大,即 h ∗ = arg ⁡ max ⁡ w , b { 1 w } h^*=\arg\max\limits_{\mathbf{w},b}\{\frac{1}{\mathbf{w}} \} h=argw,bmax{w1}

    转为优化问题:
    min ⁡ w , b   { ∥ w ∥ 2 2 } s.t.  y i ( w T x i + b ) ≥ 1 , ∀ ( x i , y i ) ∈ D

    minw,b {w22}s.t. yi(wTxi+b)1,(xi,yi)D" role="presentation">minw,b {w22}s.t. yi(wTxi+b)1,(xi,yi)D
    w,bmin {2w2}s.t. yi(wTxi+b)1,(xi,yi)D
    引入 Lagrange 乘子 α i ≥ 0 \alpha_i\ge0 αi0 与 KKT 条件:
    α i ( y i ( w T x i + b ) − 1 ) = 0 \alpha_i(y_i(\mathbf{w}^T\mathbf{x}_i+b)-1)=0 αi(yi(wTxi+b)1)=0
    定义:
    L ( w ) = 1 2 ∥ w ∥ 2 − ∑ i = 1 n α i ( y i ( w T x i + b ) − 1 )   ( 2 ) L(\mathbf{w})=\frac{1}{2}\|\mathbf{w}\|^2-\sum\limits_{i=1}^{n}\alpha_i(y_i(\mathbf{w}^T\mathbf{x}_i+b)-1)\ (2) L(w)=21w2i=1nαi(yi(wTxi+b)1) (2)

    ∂ ∂ w L = w − ∑ i = 1 n α i y i x i = 0   ( 3 ) ∂ ∂ b L = ∑ i = 1 n α i y i = 0   ( 4 )

    wL=wi=1nαiyixi=0 (3)bL=i=1nαiyi=0 (4)" role="presentation">wL=wi=1nαiyixi=0 (3)bL=i=1nαiyi=0 (4)
    wL=wi=1nαiyixi=0 (3)bL=i=1nαiyi=0 (4)

    将 (3)(4) 代入 (2) 得:
    L d u a l = 1 2 w T w − w T ( ∑ i = 1 n α i y i x i ⏟ w ) − b ∑ i = 1 n α i y i ⏟ 0 + ∑ i = 1 n α i = − 1 2 w T w + ∑ i = 1 n α i = ∑ i = 1 n α i − 1 2 ∑ i = 1 n ∑ j = 1 n α i α j y i y j x i T x j

    Ldual=12wTwwT(i=1nαiyixiw)bi=1nαiyi0+i=1nαi=12wTw+i=1nαi=i=1nαi12i=1nj=1nαiαjyiyjxiTxj" role="presentation">Ldual=12wTwwT(i=1nαiyixiw)bi=1nαiyi0+i=1nαi=12wTw+i=1nαi=i=1nαi12i=1nj=1nαiαjyiyjxiTxj
    Ldual=21wTwwT(w i=1nαiyixi)b0 i=1nαiyi+i=1nαi=21wTw+i=1nαi=i=1nαi21i=1nj=1nαiαjyiyjxiTxj
    故对偶问题为:
    max ⁡ α L d u a l = ∑ i = 1 n α i − 1 2 ∑ i = 1 n ∑ j = 1 n α i α j y i y j x i T x j s.t.  ∑ i = 1 n α i y i = 0 , α i ≥ 0 , ∀ i
    maxαLdual=i=1nαi12i=1nj=1nαiαjyiyjxiTxjs.t. i=1nαiyi=0,αi0,i" role="presentation">maxαLdual=i=1nαi12i=1nj=1nαiαjyiyjxiTxjs.t. i=1nαiyi=0,αi0,i
    αmaxLdual=i=1nαi21i=1nj=1nαiαjyiyjxiTxjs.t. i=1nαiyi=0,αi0,i

    利用二次规划解出 Dual: α 1 , ⋯   , α n \alpha_1,\cdots,\alpha_n α1,,αn

    代入 (3) 可得: w = ∑ i = 1 n α i y i x i \mathbf{w}=\sum\limits_{i=1}^{n} \alpha_{i} y_{i} \mathbf{x}_{i} w=i=1nαiyixi

    使得 α i > 0 \alpha_i>0 αi>0 的数据 x i \mathbf{x}_i xi 给出支撑向量。

    对于每一个支撑向量: y i ( w T x i + b ) − 1 ⇒ b = 1 y i − w T x i y_i(\mathbf{w}^T\mathbf{x}_i+b)-1\Rightarrow b=\frac{1}{y_i}-\mathbf{w}^T\mathbf{x}_i yi(wTxi+b)1b=yi1wTxi

    b = a v g α i > 0 { b i } b=\mathop{avg}_{\alpha_i>0}\{b_i\} b=avgαi>0{bi}


  • 相关阅读:
    高等教育学:师生关系
    常用工具类----HttpClient
    Redis 缓存过期淘汰策略
    免费1年服务器,部署个ChatGPT专属网页版
    vue项目 API接口封装
    图书管理系统代码实现
    Type Script的变量类型
    如何理解数字工厂管理系统的本质
    JSP学生选课管理系统myeclipse开发sql数据库BS模式java编程网页结构
    深度!程序员生涯的垃圾时间(上)
  • 原文地址:https://blog.csdn.net/yyywxk/article/details/127671966