跳到主要内容

支持向量机

问题

SVM 的核心思想是什么?核函数的作用是什么?

答案

一、SVM 核心思想

SVM 找一个最大间隔超平面将数据分开:

  • 支持向量:距离决策边界最近的样本点
  • 间隔最大化:使得决策边界对噪声更鲁棒

二、核函数

当数据线性不可分时,核函数将数据映射到高维空间:

核函数公式适用场景
线性核K(x,y)=xTyK(x,y) = x^T y线性可分数据
多项式核K(x,y)=(xTy+c)dK(x,y) = (x^T y + c)^d低维非线性
RBF(高斯核)K(x,y)=eγxy2K(x,y) = e^{-\gamma \|x-y\|^2}通用首选
Sigmoid 核K(x,y)=tanh(αxTy+c)K(x,y) = \tanh(\alpha x^T y + c)类似神经网络
核技巧

核函数的精妙之处:不需要真的计算高维映射 ϕ(x)\phi(x),只需要计算两个样本在高维空间中的内积 K(x,y)=ϕ(x)Tϕ(y)K(x,y) = \phi(x)^T \phi(y)。计算量不随维度增加。

三、软间隔

真实数据通常有噪声,允许一定程度的分类错误:

  • 引入松弛变量 ξi\xi_i,允许样本落在间隔内
  • 惩罚参数 CC 控制容错度:CC 越大越严格,越小越宽容

四、SVM 优缺点

优点缺点
小数据集效果好大数据集训练慢(O(n2)O(n^2)~O(n3)O(n^3)
高维空间表现好对核函数和参数选择敏感
理论保证(间隔理论)不直接输出概率
支持非线性分类对缺失值敏感

常见面试问题

Q1: SVM 和逻辑回归怎么选?

答案

  • 小数据集、高维特征:SVM 更好(理论保证更强)
  • 大数据集:逻辑回归更实用(训练快、可在线学习)
  • 需要概率输出:逻辑回归(SVM 需额外 Platt Scaling)
  • 工业实践:大多数场景用逻辑回归或 XGBoost

Q2: RBF 核的 gamma 参数有什么影响?

答案

  • γ\gamma 大:每个样本影响范围小,决策边界复杂 → 容易过拟合
  • γ\gamma 小:每个样本影响范围大,决策边界平滑 → 容易欠拟合
  • 通常用网格搜索 + 交叉验证选择最优 γ\gamma

相关链接