04_DeepLearning_SVM

Outline

  • 线性SVM
  • 非线性SVM

线性SVM

线性分类器的主要目的是:寻找一个超平面可以准确的并且具有较高置信度的对数据进行二分类。

其数学表达式为:

w T x + b = 0 \mathbf{w}^T \mathbf{x} + b = 0 wTx+b=0

其中 w T \mathbf{w}^T wT 为法向量, b b b 为偏置项。

因此,SVM的目标可以转化为:寻找到使分类间隔最大化的超平面。此超平面可以作为最优超平面。

推导公式如下:

g ( x ) = w T x + b g(x)=\mathbf{w}^T \mathbf{x} + b g(x)=wTx+b

不同类别的数据为:

w T x + b ≥ 1 for d = + 1 \mathbf{w}^T \mathbf{x} + b \geq 1 \quad \text{for } d = +1 wTx+b≥1for d=+1

w T x + b ≤ − 1 for d = − 1 \mathbf{w}^T \mathbf{x} + b \leq -1 \quad \text{for } d = -1 wTx+b≤−1for d=−1

由图可知:

x = x p + ( x − x p ) = x p + r w ∥ w ∥ \mathbf{x} = \mathbf{x}_p + (\mathbf{x} - \mathbf{x}_p) = \mathbf{x}_p + r \frac{\mathbf{w}}{\|\mathbf{w}\|} x=xp+(x−xp)=xp+r∥w∥w

其中: x p \mathbf{x}_p xp 是 x \mathbf{x} x 在超平面的投影,而 r r r 表示其到超平面的距离

因此将其带入 g ( x ) g(x) g(x) 可得:

g ( x ) = w T x + b = w T ( x p + r w ∥ w ∥ ) + b = w T x p + b + r w T w ∥ w ∥ = g ( x p ) + r ∥ w ∥ \begin{aligned} g(\mathbf{x}) &= \mathbf{w}^T \mathbf{x} + b \\ &= \mathbf{w}^T \left( \mathbf{x}_p + r \frac{\mathbf{w}}{\|\mathbf{w}\|} \right) + b \\ &= \mathbf{w}^T \mathbf{x}_p + b + r \frac{\mathbf{w}^T \mathbf{w}}{\|\mathbf{w}\|} \\ &= g(\mathbf{x}_p) + r \|\mathbf{w}\| \end{aligned} g(x)=wTx+b=wT(xp+r∥w∥w)+b=wTxp+b+r∥w∥wTw=g(xp)+r∥w∥

因为 g ( x p ) = 0 g(\mathbf{x}_p)=0 g(xp)=0 因此可得到:

r = g ( x ) ∥ w ∥ r = \frac{g(\mathbf{x})}{\|\mathbf{w}\|} r=∥w∥g(x)

因此可得到:

r = g ( x ( s ) ) ∥ w ∥ = { 1 ∥ w ∥ , for d ( s ) = + 1 − 1 ∥ w ∥ , for d ( s ) = − 1 r = \frac{g(\mathbf{x}^{(s)})}{\|\mathbf{w}\|} = \begin{cases} \frac{1}{\|\mathbf{w}\|}, & \text{for } d^{(s)} = +1 \\ \frac{-1}{\|\mathbf{w}\|}, & \text{for } d^{(s)} = -1 \end{cases} r=∥w∥g(x(s))={∥w∥1,∥w∥−1,for d(s)=+1for d(s)=−1

所以两个分类的间隔为:

ρ = 2 ∥ w ∥ \rho = \frac{2}{\|\mathbf{w}\|} ρ=∥w∥2

综上:最大化分类间隔 \\rho 也就是最小化 ∥ w ∥ \|\mathbf{w}\| ∥w∥

故SVM可转化为优化问题:

MIN J ( w ) = 1 2 w T w \text{MIN} \ J(\mathbf{w}) = \frac{1}{2} \mathbf{w}^T \mathbf{w} MIN J(w)=21wTw

S . t . d ( i ) × [ w T x ( i ) + b ] ≥ 1 for i = 1 , 2 , ... , N S.t. \ \ d(i) \times \left[ \mathbf{w}^T \mathbf{x}(i) + b \right] \geq 1 \quad \text{for } i = 1,2, \dots, N S.t. d(i)×[wTx(i)+b]≥1for i=1,2,...,N

根据拉格朗日乘子(Lagrange Multipliers)计算得到:

w ∗ = ∑ i = 1 N α ( i ) d ( i ) x ( i ) \mathbf{w}^* = \sum_{i=1}^{N} \alpha(i) d(i) \mathbf{x}(i) w∗=i=1∑Nα(i)d(i)x(i)

b ∗ = 1 − ( w ∗ ) T x ( s ) b^* = 1 - (\mathbf{w}^*)^T \mathbf{x}^{(s)} b∗=1−(w∗)Tx(s)

Soft Marigin

软间隔SVM允许一定程度的分类错误,以适应数据中可能存在的噪声和不可分数据点。其数学公式转化为:

d ( i ) × [ w T x ( i ) + b ] ≥ 1 − ξ ( i ) d(i) \times \left[ \mathbf{w}^T \mathbf{x}(i) + b \right] \geq 1 - \xi(i) d(i)×[wTx(i)+b]≥1−ξ(i)

其最优解为:

w ∗ = ∑ i = 1 N α ( i ) d ( i ) x ( i ) \mathbf{w}^* = \sum_{i=1}^{N} \alpha(i) d(i) \mathbf{x}(i) w∗=i=1∑Nα(i)d(i)x(i)

b ∗ = 1 − ( w ∗ ) T x ( s ) b^* = 1 - (\mathbf{w}^*)^T \mathbf{x}^{(s)} b∗=1−(w∗)Tx(s)

Kernel SVM

核心是将数据 x \mathbf{x} x 通过非线性映射到高维线性空间,后应用SVM处理。

Cover's Theorem 科夫定理:

在一个多维输入空间内,如果数据模式是非线性可分的,那么可以将一个非线性映射将其投影至更高维的特征空间,使得数据具有更高的概率变的线性可分。

  • 映射必须为非线性的
  • 特征空间的维度足够高。即如果特征空间足够高,每个样本都具有足够的自由度进行分离。这也是为什么深度学习通常在高维空间表现的更好。

计算方法类似线性SVM 可得到:

w = ∑ i = 1 N α ( i ) d ( i ) φ [ x ( i ) ] \mathbf{w} = \sum_{i=1}^{N} \alpha(i) d(i) \boldsymbol{\varphi} \left[ \mathbf{x}(i) \right] w=i=1∑Nα(i)d(i)φ[x(i)]

上述公式仍需显示的求 φ \boldsymbol{\varphi} φ 的表达式。但在高维空间内,显式计算的计算量很大甚至不可行。因此引入kernel SVM.

核矩阵公式:

K [ x , x ( i ) ] = φ ( x ) T φ [ x ( i ) ] = ∑ j = 0 m φ j ( x ) φ j [ x ( i ) ] K \left[ \mathbf{x}, \mathbf{x}(i) \right] = \boldsymbol{\varphi} (\mathbf{x})^T \boldsymbol{\varphi} \left[ \mathbf{x}(i) \right] = \sum_{j=0}^{m} \varphi_j (\mathbf{x}) \varphi_j \left[ \mathbf{x}(i) \right] K[x,x(i)]=φ(x)Tφ[x(i)]=j=0∑mφj(x)φj[x(i)]

Mercer's Theorem 默瑟定理

对于任意有限个样本点 x ( 1 ) , x ( 2 ) , . . . , x ( N ) x(1), x(2),..., x(N) x(1),x(2),...,x(N), 核矩阵 K K K 是对称的并且是半正定的,则 K K K 是一个有效的核函数。

半正定矩阵

∀ v ∈ R N , v T K v ≥ 0 \forall \mathbf{v} \in \mathbb{R}^{N}, \quad \mathbf{v}^T K \mathbf{v} \geq 0 ∀v∈RN,vTKv≥0

转换后,无需显示计算 w \mathbf{w} w ,其表达式转化为:

f ( x ) = w T φ ( x ) + b = ( ∑ i = 1 N α i d i φ ( x i ) ) T φ ( x ) + b = ∑ i = 1 N α i d i ( φ ( x i ) T φ ( x ) ) + b = ∑ i = 1 N α i d i K ( x i , x ) + b \begin{aligned} f(\mathbf{x}) &= \mathbf{w}^T \boldsymbol{\varphi}(\mathbf{x}) + b \\ &= \left( \sum_{i=1}^{N} \alpha_i d_i \boldsymbol{\varphi}(\mathbf{x}i) \right)^T \boldsymbol{\varphi}(\mathbf{x}) + b \\ &= \sum{i=1}^{N} \alpha_i d_i \left( \boldsymbol{\varphi}(\mathbf{x}i)^T \boldsymbol{\varphi}(\mathbf{x}) \right) + b \\ &= \sum{i=1}^{N} \alpha_i d_i K(\mathbf{x}_i, \mathbf{x}) + b \end{aligned} f(x)=wTφ(x)+b=(i=1∑Nαidiφ(xi))Tφ(x)+b=i=1∑Nαidi(φ(xi)Tφ(x))+b=i=1∑NαidiK(xi,x)+b

常见的核函数包括:

  • 多项式核函数

    K ( x , z ) = ( 1 + x T z ) p K(\mathbf{x}, \mathbf{z}) = (1 + \mathbf{x}^T \mathbf{z})^p K(x,z)=(1+xTz)p

    其中, p p p 通常取 2 或 3

  • 高斯核函数

    K ( x , z ) = exp ⁡ ( − ∥ x − z ∥ 2 2 σ 2 ) K(\mathbf{x}, \mathbf{z}) = \exp\left( - \frac{\|\mathbf{x} - \mathbf{z}\|^2}{2\sigma^2} \right) K(x,z)=exp(−2σ2∥x−z∥2)

相关推荐
大写-凌祁2 小时前
零基础入门深度学习:从理论到实战,GitHub+开源资源全指南(2025最新版)
人工智能·深度学习·开源·github
焦耳加热2 小时前
阿德莱德大学Nat. Commun.:盐模板策略实现废弃塑料到单原子催化剂的高值转化,推动环境与能源催化应用
人工智能·算法·机器学习·能源·材料工程
深空数字孪生2 小时前
储能调峰新实践:智慧能源平台如何保障风电消纳与电网稳定?
大数据·人工智能·物联网
wan5555cn3 小时前
多张图片生成视频模型技术深度解析
人工智能·笔记·深度学习·算法·音视频
格林威4 小时前
机器视觉检测的光源基础知识及光源选型
人工智能·深度学习·数码相机·yolo·计算机视觉·视觉检测
今天也要学习吖4 小时前
谷歌nano banana官方Prompt模板发布,解锁六大图像生成风格
人工智能·学习·ai·prompt·nano banana·谷歌ai
Hello123网站4 小时前
glean-企业级AI搜索和知识发现平台
人工智能·产品运营·ai工具
AKAMAI4 小时前
Queue-it 为数十亿用户增强在线体验
人工智能·云原生·云计算
索迪迈科技4 小时前
INDEMIND亮相2025科技创变者大会,以机器人空间智能技术解锁具身智能新边界
人工智能·机器人·扫地机器人·空间智能·陪伴机器人
栒U4 小时前
一文从零部署vLLM+qwen0.5b(mac本地版,不可以实操GPU单元)
人工智能·macos·vllm