支持向量机(SVM)的数学推导与核函数应用
字数 2922 2025-10-27 08:13:40

支持向量机(SVM)的数学推导与核函数应用

题目描述
支持向量机(SVM)是一种经典的二分类模型,其核心思想是找到一个最优超平面,使得两类数据点到该平面的间隔最大化。本题要求:

  1. 推导线性可分SVM的数学形式,包括间隔定义、优化目标建立和对偶问题转化;
  2. 解释核函数的作用,并说明如何通过核方法处理非线性分类问题。

解题过程

1. 间隔的定义与优化目标

(1)超平面与函数间隔

  • 超平面表达式为 \(\mathbf{w}^T \mathbf{x} + b = 0\),其中 \(\mathbf{w}\) 是法向量,\(b\) 是偏置。
  • 对于样本点 \((\mathbf{x}_i, y_i)\)\(y_i \in \{-1, +1\}\)),其函数间隔定义为:

\[ \hat{\gamma}_i = y_i (\mathbf{w}^T \mathbf{x}_i + b) \]

函数间隔可反映分类的正确性和置信度,但存在缩放不变性问题(例如等比例放大 \(\mathbf{w}\)\(b\) 时间隔会变大但超平面不变)。

(2)几何间隔与最大化目标

  • 几何间隔是函数间隔除以 \(\|\mathbf{w}\|\),即:

\[ \gamma_i = \frac{\hat{\gamma}_i}{\|\mathbf{w}\|} = \frac{y_i (\mathbf{w}^T \mathbf{x}_i + b)}{\|\mathbf{w}\|} \]

  • SVM的目标是找到使最小几何间隔最大的超平面。假设所有样本分类正确,优化问题可写为:

\[ \max_{\mathbf{w}, b} \min_i \gamma_i \quad \text{s.t.} \quad y_i (\mathbf{w}^T \mathbf{x}_i + b) \geq \hat{\gamma}, \ \forall i \]

通过固定函数间隔 \(\hat{\gamma}=1\)(不影响优化效果),问题转化为:

\[ \max_{\mathbf{w}, b} \frac{1}{\|\mathbf{w}\|} \quad \text{s.t.} \quad y_i (\mathbf{w}^T \mathbf{x}_i + b) \geq 1, \ \forall i \]

等价于更简洁的凸优化问题:

\[ \min_{\mathbf{w}, b} \frac{1}{2} \|\mathbf{w}\|^2 \quad \text{s.t.} \quad y_i (\mathbf{w}^T \mathbf{x}_i + b) \geq 1, \ \forall i \]


2. 拉格朗日对偶问题

(1)引入拉格朗日乘子

  • 为处理约束条件,构建拉格朗日函数:

\[ L(\mathbf{w}, b, \boldsymbol{\alpha}) = \frac{1}{2} \|\mathbf{w}\|^2 - \sum_{i=1}^n \alpha_i \left[ y_i (\mathbf{w}^T \mathbf{x}_i + b) - 1 \right] \]

其中 \(\alpha_i \geq 0\) 是拉格朗日乘子。

(2)转化为对偶问题

  • 先求 \(L\)\(\mathbf{w}\)\(b\) 的极小值:

\[ \frac{\partial L}{\partial \mathbf{w}} = 0 \Rightarrow \mathbf{w} = \sum_{i=1}^n \alpha_i y_i \mathbf{x}_i \]

\[ \frac{\partial L}{\partial b} = 0 \Rightarrow \sum_{i=1}^n \alpha_i y_i = 0 \]

  • 将结果代回 \(L\),消去 \(\mathbf{w}\)\(b\),得到对偶问题:

\[ \max_{\boldsymbol{\alpha}} \sum_{i=1}^n \alpha_i - \frac{1}{2} \sum_{i,j} \alpha_i \alpha_j y_i y_j \mathbf{x}_i^T \mathbf{x}_j \]

\[ \text{s.t.} \quad \alpha_i \geq 0, \ \sum_{i=1}^n \alpha_i y_i = 0 \]

  • 关键性质:只有支持向量(满足 \(y_i (\mathbf{w}^T \mathbf{x}_i + b) = 1\) 的样本)对应的 \(\alpha_i > 0\),其余样本的 \(\alpha_i=0\)

3. 核函数处理非线性问题

(1)线性不可分情况

  • 若数据线性不可分,可引入松弛变量 \(\xi_i \geq 0\),将约束放宽为:

\[ y_i (\mathbf{w}^T \mathbf{x}_i + b) \geq 1 - \xi_i \]

优化目标变为 \(\min \frac{1}{2} \|\mathbf{w}\|^2 + C \sum_i \xi_i\),其中 \(C\) 是惩罚参数。

(2)核技巧(Kernel Trick)

  • 对偶问题中出现了内积 \(\mathbf{x}_i^T \mathbf{x}_j\)。通过映射 \(\phi(\mathbf{x})\) 将数据映射到高维空间,内积变为 \(\phi(\mathbf{x}_i)^T \phi(\mathbf{x}_j)\)
  • 核函数 \(K(\mathbf{x}_i, \mathbf{x}_j) = \phi(\mathbf{x}_i)^T \phi(\mathbf{x}_j)\) 直接计算映射后的内积,避免显式构造 \(\phi(\cdot)\)(维数可能无限)。
  • 常用核函数:
    • 多项式核: \(K(\mathbf{x}, \mathbf{z}) = (\mathbf{x}^T \mathbf{z} + c)^d\)
    • 高斯核(RBF): \(K(\mathbf{x}, \mathbf{z}) = \exp(-\gamma \|\mathbf{x} - \mathbf{z}\|^2)\)

(3)最终分类决策函数

  • 利用核函数,决策函数表示为:

\[ f(\mathbf{x}) = \sum_{i \in SV} \alpha_i y_i K(\mathbf{x}_i, \mathbf{x}) + b \]

其中 \(SV\) 是支持向量集合。只需计算支持向量与新样本的核函数,即可实现非线性分类。


总结
SVM通过最大化间隔提高泛化能力,对偶形式使问题更易求解,核技巧巧妙解决了非线性分类问题。实际应用中需注意核函数选择和参数调优(如 \(C\)\(\gamma\))。

支持向量机(SVM)的数学推导与核函数应用 题目描述 支持向量机(SVM)是一种经典的二分类模型,其核心思想是找到一个最优超平面,使得两类数据点到该平面的间隔最大化。本题要求: 推导线性可分SVM的数学形式,包括间隔定义、优化目标建立和对偶问题转化; 解释核函数的作用,并说明如何通过核方法处理非线性分类问题。 解题过程 1. 间隔的定义与优化目标 (1)超平面与函数间隔 超平面表达式为 \( \mathbf{w}^T \mathbf{x} + b = 0 \),其中 \(\mathbf{w}\) 是法向量,\(b\) 是偏置。 对于样本点 \((\mathbf{x}_ i, y_ i)\)(\(y_ i \in \{-1, +1\}\)),其 函数间隔 定义为: \[ \hat{\gamma}_ i = y_ i (\mathbf{w}^T \mathbf{x}_ i + b) \] 函数间隔可反映分类的正确性和置信度,但存在缩放不变性问题(例如等比例放大 \(\mathbf{w}\) 和 \(b\) 时间隔会变大但超平面不变)。 (2)几何间隔与最大化目标 几何间隔 是函数间隔除以 \(\|\mathbf{w}\|\),即: \[ \gamma_ i = \frac{\hat{\gamma}_ i}{\|\mathbf{w}\|} = \frac{y_ i (\mathbf{w}^T \mathbf{x}_ i + b)}{\|\mathbf{w}\|} \] SVM的目标是找到使 最小几何间隔 最大的超平面。假设所有样本分类正确,优化问题可写为: \[ \max_ {\mathbf{w}, b} \min_ i \gamma_ i \quad \text{s.t.} \quad y_ i (\mathbf{w}^T \mathbf{x} i + b) \geq \hat{\gamma}, \ \forall i \] 通过固定函数间隔 \(\hat{\gamma}=1\)(不影响优化效果),问题转化为: \[ \max {\mathbf{w}, b} \frac{1}{\|\mathbf{w}\|} \quad \text{s.t.} \quad y_ i (\mathbf{w}^T \mathbf{x} i + b) \geq 1, \ \forall i \] 等价于更简洁的凸优化问题: \[ \min {\mathbf{w}, b} \frac{1}{2} \|\mathbf{w}\|^2 \quad \text{s.t.} \quad y_ i (\mathbf{w}^T \mathbf{x}_ i + b) \geq 1, \ \forall i \] 2. 拉格朗日对偶问题 (1)引入拉格朗日乘子 为处理约束条件,构建拉格朗日函数: \[ L(\mathbf{w}, b, \boldsymbol{\alpha}) = \frac{1}{2} \|\mathbf{w}\|^2 - \sum_ {i=1}^n \alpha_ i \left[ y_ i (\mathbf{w}^T \mathbf{x}_ i + b) - 1 \right ] \] 其中 \(\alpha_ i \geq 0\) 是拉格朗日乘子。 (2)转化为对偶问题 先求 \(L\) 对 \(\mathbf{w}\) 和 \(b\) 的极小值: \[ \frac{\partial L}{\partial \mathbf{w}} = 0 \Rightarrow \mathbf{w} = \sum_ {i=1}^n \alpha_ i y_ i \mathbf{x} i \] \[ \frac{\partial L}{\partial b} = 0 \Rightarrow \sum {i=1}^n \alpha_ i y_ i = 0 \] 将结果代回 \(L\),消去 \(\mathbf{w}\) 和 \(b\),得到对偶问题: \[ \max_ {\boldsymbol{\alpha}} \sum_ {i=1}^n \alpha_ i - \frac{1}{2} \sum_ {i,j} \alpha_ i \alpha_ j y_ i y_ j \mathbf{x}_ i^T \mathbf{x} j \] \[ \text{s.t.} \quad \alpha_ i \geq 0, \ \sum {i=1}^n \alpha_ i y_ i = 0 \] 关键性质 :只有支持向量(满足 \(y_ i (\mathbf{w}^T \mathbf{x}_ i + b) = 1\) 的样本)对应的 \(\alpha_ i > 0\),其余样本的 \(\alpha_ i=0\)。 3. 核函数处理非线性问题 (1)线性不可分情况 若数据线性不可分,可引入松弛变量 \(\xi_ i \geq 0\),将约束放宽为: \[ y_ i (\mathbf{w}^T \mathbf{x}_ i + b) \geq 1 - \xi_ i \] 优化目标变为 \(\min \frac{1}{2} \|\mathbf{w}\|^2 + C \sum_ i \xi_ i\),其中 \(C\) 是惩罚参数。 (2)核技巧(Kernel Trick) 对偶问题中出现了内积 \(\mathbf{x}_ i^T \mathbf{x}_ j\)。通过映射 \(\phi(\mathbf{x})\) 将数据映射到高维空间,内积变为 \(\phi(\mathbf{x}_ i)^T \phi(\mathbf{x}_ j)\)。 核函数 \(K(\mathbf{x}_ i, \mathbf{x}_ j) = \phi(\mathbf{x}_ i)^T \phi(\mathbf{x}_ j)\) 直接计算映射后的内积,避免显式构造 \(\phi(\cdot)\)(维数可能无限)。 常用核函数: 多项式核: \(K(\mathbf{x}, \mathbf{z}) = (\mathbf{x}^T \mathbf{z} + c)^d\) 高斯核(RBF): \(K(\mathbf{x}, \mathbf{z}) = \exp(-\gamma \|\mathbf{x} - \mathbf{z}\|^2)\) (3)最终分类决策函数 利用核函数,决策函数表示为: \[ f(\mathbf{x}) = \sum_ {i \in SV} \alpha_ i y_ i K(\mathbf{x}_ i, \mathbf{x}) + b \] 其中 \(SV\) 是支持向量集合。只需计算支持向量与新样本的核函数,即可实现非线性分类。 总结 SVM通过最大化间隔提高泛化能力,对偶形式使问题更易求解,核技巧巧妙解决了非线性分类问题。实际应用中需注意核函数选择和参数调优(如 \(C\) 和 \(\gamma\))。