← 返回题目列表

SVM 常见的核函数有哪些?RBF 核怎么选?参数 γ 起什么作用?

高频 中等 第 5 / 25 题 更新于 2026/07/28
支持向量机SVM核函数RBF高斯核

简化版

SVM 常见核函数:线性核(不升维,适合高维稀疏/线性可分数据,如文本)、多项式核(升到多项式空间,能表达特征交叉,参数多)、RBF(高斯)核(映射到无穷维、按样本间距离衡量相似度,最通用、最常用,非线性场景默认首选)、sigmoid 核(较少用)。选核经验:特征多、样本相对少、线性可分 → 线性核;特征少、需要非线性、不确定用什么 → RBF。RBF 的参数 γ 控制单个样本影响范围:γ 大 → 影响范围小、边界弯曲、易过拟合;γ 小 → 影响范围大、边界平滑、易欠拟合。C 和 γ 一起用交叉验证网格搜索调。

详细版

常见核函数:

公式特点适用
线性核K = xᵀz不升维、快、可解释高维稀疏、线性可分(文本)
多项式核K = (γ·xᵀz + r)^d表达特征交叉,参数多(d,γ,r)有明确多项式关系
RBF/高斯核K = exp(-γ‖x-z‖²)无穷维、按距离度量相似、通用非线性、默认首选
sigmoid 核K = tanh(γ·xᵀz + r)类神经网络、非总合法核少用

RBF 核的 γ:

K(x,z) = exp(-γ‖x-z‖²)
  • 两样本越近 K 越接近 1(相似),越远越接近 0。
  • γ 大 → 只有非常近的样本才算相似 → 影响范围小 → 边界复杂弯曲 → 过拟合
  • γ 小 → 较远样本也算相似 → 影响范围大 → 边界平滑 → 欠拟合

选核经验: 线性可分或高维稀疏用线性核;非线性、拿不准用 RBF;C(容错)与 γ(弯曲度)联合网格搜索 + 交叉验证。

完整版教学

一、核函数的作用回顾

核函数 K(x,z)=φ(x)·φ(z) 让 SVM 隐式地在高维空间找线性边界,从而处理原空间的非线性。换不同的核,就是换不同的高维映射,也就换出不同形状的决策边界。 所以「选核」本质是「选一族能匹配数据结构的非线性边界」。

二、线性核:不升维,专治高维稀疏

K(x, z) = xᵀz

线性核就是原始内积,不做任何升维,等价于普通的线性 SVM。它的价值在于:

  • 高维稀疏数据(如文本 TF-IDF、One-Hot 后的特征)本身在原空间就大概率线性可分,无需再升维,用 RBF 反而慢又易过拟合。
  • 快、可扩展:不用算复杂核,能处理大规模数据。
  • 可解释:有显式的 w,能看特征权重。

经验法则:特征数远大于样本数、或数据本就近似线性可分 → 首选线性核。 文本分类是线性核的经典战场。

三、多项式核:显式表达特征交叉

K(x, z) = (γ·xᵀz + r)^d

多项式核对应把特征映射到所有次数 ≤ d 的项(含交叉项 xᵢxⱼ)组成的空间,因此能表达特征之间的交互/组合

  • 参数多:d(阶数)、γ(缩放)、r(常数项),调起来麻烦。
  • d 越大表达力越强但越易过拟合、数值也可能不稳定(大数幂)。
  • 适合已知数据有明确多项式/交叉结构的场景,实践中不如 RBF 通用。

四、RBF(高斯)核:最通用的默认选择

K(x, z) = exp(-γ‖x - z‖²)

RBF 核按两个样本之间的距离衡量相似度:距离越近,K 越接近 1(很相似);距离越远,K 越接近 0(不相似)。它把样本映射到无穷维空间(泰勒展开有无穷项),表达能力极强,能拟合各种复杂的非线性边界。

为什么它是默认首选

  • 通用:几乎能逼近任意决策边界,对数据结构假设最少。
  • 只有一个核参数 γ(加上 C),比多项式核好调。
  • 实践中大多数非线性问题上表现稳健。

经验法则:特征数不多、需要非线性、又不确定该用什么核 → 直接上 RBF。

五、RBF 的关键参数 γ——控制「影响范围」和「弯曲程度」

γ 是 RBF 最重要的参数,理解它就理解了 RBF 的过拟合/欠拟合行为。

K=exp(-γ‖x-z‖²),γ 控制「距离多远还算相似」:

  • γ 大γ‖x-z‖² 增长快,只有非常接近的样本 K 才不接近 0 → 每个样本的影响范围很小、很「局部」 → 决策边界为了迁就每个点变得极其弯曲复杂过拟合(训练好、测试差)。极端时每个支持向量只管自己附近,退化成「记住训练点」。
  • γ 小:远处样本也还算相似 → 每个样本影响范围大、很「全局」 → 决策边界平滑 → 可能欠拟合(连训练集都拟合不好,趋近线性)。
γ 大 → 影响范围小 → 边界复杂弯曲 → 过拟合(方差大)
γ 小 → 影响范围大 → 边界平滑     → 欠拟合(偏差大)

六、C 和 γ 一起调——网格搜索 + 交叉验证

RBF-SVM 有两个关键超参数,作用不同但都影响过拟合,要联合调

  • C(软间隔容错):C 大→不容错、间隔窄→过拟合;C 小→容错、间隔宽→欠拟合。
  • γ(RBF 边界弯曲度):γ 大→边界复杂→过拟合;γ 小→边界平滑→欠拟合。

标准做法是网格搜索(Grid Search)+ 交叉验证:在 C ∈ {0.1,1,10,100…}γ ∈ {0.001,0.01,0.1,1…} 的组合上交叉验证,选验证集最好的组合。两者常有交互,不能只调一个。

七、sigmoid 核与选核总结

  • sigmoid 核 tanh(γxᵀz+r):形式像神经网络的激活,但在某些参数下不满足 Mercer 条件(不是合法核),实践中很少用。
  • 选核决策:
数据线性可分 / 高维稀疏(文本)→ 线性核
需要非线性、拿不准 → RBF(默认首选)
已知明确多项式/交叉结构 → 多项式核
样本量巨大 → 线性核(RBF 训练太慢)

别忘了 RBF/多项式核对特征缩放极敏感(核里有距离/内积),通常应在训练集上拟合缩放器,再对验证集和测试集做同样变换。

八、用算例与工程边界复核

RBF 核 K(x,z)=exp(-γ||x-z||²)。当距离平方为 4 时,γ=0.1 得 e^-0.4≈0.670,γ=1 得 e^-4≈0.018;γ 越大,单个样本影响范围越窄,边界更弯曲且过拟合风险更高。

对象/方案核心机制选择或风险
线性核xᵀz高维稀疏或近线性
多项式核(γxᵀz+r)^d指定阶交互但参数敏感
RBFexp(-γ

把推导和选择压缩成执行路径:

scale features
 -> linear baseline
 -> CV search C and γ
 -> inspect score, SV count and latency

scikit-learn 的 gamma=scale 只是数据相关默认值,不是理论最优值;正式模型仍应在合法验证流程中调参。

九、常见误区与追问

  • 误区:γ 越大,核函数越平滑。 γ 大使相似度随距离更快衰减,模型边界通常更局部、更复杂。
  • 误区:RBF 总比线性核准确。 高维稀疏和近线性任务中线性核常更快且泛化更好。
  • 追问:C 和 γ 如何联动? 大 C 与大 γ 都可能提高复杂度,应联合交叉验证而非分别拍定。
  • 追问:Sigmoid 核一定满足 Mercer 条件吗? 只在部分参数范围内是合法 PSD 核,不能任意设置。
  • 追问:多项式 degree 越高越好吗? 高阶扩大表达力也放大数值和过拟合风险,通常从低阶验证。

十、加强记忆

记忆时抓住这条主线:SVM 四类核:线性核 xᵀz(不升维、快、可解释,高维稀疏/线性可分如文本首选);多项式核 (γxᵀz+r)^d(表达特征交叉,参数多易过拟合);RBF/高斯核 exp(-γ‖x-z‖²)按距离度量相似、无穷维、最通用,非线性默认首选);sigmoid 核(少用、未必合法)。RBF 的 γ 控制单样本影响范围/边界弯曲γ 大→范围小、边界复杂→过拟合;γ 小→范围大、边界平滑→欠拟合C 与 γ 联合网格搜索+交叉验证调(C 管容错、γ 管弯曲,都影响过拟合)。选核口诀:线性可分/高维稀疏用线性核,非线性拿不准用 RBF,样本巨大用线性核;核 SVM 通常要统一特征尺度,并把缩放放入交叉验证流水线