跳转至

核函数与核技巧:为什么"长相不同"但本质都是高维内积

  • 章节:第7章 · 支持向量机(7.3 非线性 SVM 与核函数)
  • 出处:课本 7.3 节 p.113–121:定义 7.6(核函数)、例 7.3、定义 7.7 / 定理 7.5(正定核)、式 7.88(多项式核)、式 7.90(高斯核);常用核以老师 PPT slide_025 为准(多项式 / 高斯 / Sigmoid)。

核心理解(一句话)

定义 \(K(\boldsymbol x,\boldsymbol z)=\phi(\boldsymbol x)\cdot\phi(\boldsymbol z)\) 是"本质",常用核的公式是"长相"——长相不同,但每个核背后都暗藏一个映射 \(\phi\),算的仍是"高维内积"。

一、核函数定义(定义 7.6)

\(\mathcal X\) 是输入空间、\(\mathcal H\) 是特征空间(希尔伯特空间),若存在映射 \(\phi(\boldsymbol x):\mathcal X\to\mathcal H\),使对所有 \(\boldsymbol x,\boldsymbol z\in\mathcal X\)

\[ K(\boldsymbol x,\boldsymbol z)=\phi(\boldsymbol x)\cdot\phi(\boldsymbol z) \]

则称 \(K\) 为核函数、\(\phi\) 为映射函数。

核技巧(课本原话):在学习与预测中只定义核函数 \(K\),而不显式地定义映射 \(\phi\)。通常直接算 \(K\) 容易,通过 \(\phi\)\(K\) 反而难;\(\phi\) 对应的特征空间一般是高维的、甚至无穷维的。对给定的 \(K\)\(\phi\)\(\mathcal H\) 的取法并不唯一

二、看穿"高维内积"——课本例 7.3(务必以此为准)

输入空间 \(\mathbb R^2\),核 \(K(\boldsymbol x,\boldsymbol z)=(\boldsymbol x\cdot\boldsymbol z)^2\)注意没有 +1)。展开:

\[ (\boldsymbol x\cdot\boldsymbol z)^2=(x^{(1)}z^{(1)}+x^{(2)}z^{(2)})^2=(x^{(1)}z^{(1)})^2+2x^{(1)}z^{(1)}x^{(2)}z^{(2)}+(x^{(2)}z^{(2)})^2 \]

所以可取映射 \(\phi:\mathbb R^2\to\mathbb R^3\)

\[ \phi(\boldsymbol x)=\big((x^{(1)})^2,\ \sqrt2\,x^{(1)}x^{(2)},\ (x^{(2)})^2\big)^{\mathsf T} \]

容易验证 \(\phi(\boldsymbol x)\cdot\phi(\boldsymbol z)=(\boldsymbol x\cdot\boldsymbol z)^2=K(\boldsymbol x,\boldsymbol z)\)。 课本强调 \(\phi\) 不唯一,例 7.3 还给了另外两个等价取法(\(\mathbb R^3\) 另一组、以及 \(\mathbb R^4\) 的取法)。

这就是核技巧的精髓:用低维的简单运算(直接算 \((\boldsymbol x\cdot\boldsymbol z)^2\)),偷偷算出高维内积,省去显式构造 \(\phi\)

三、常用核函数(课本 7.3.3)

  • 多项式核(式 7.88):
\[ K(\boldsymbol x,\boldsymbol z)=(\boldsymbol x\cdot\boldsymbol z+1)^p \]

对应 \(p\) 次多项式分类器。(课本未展开它的 \(\phi\)。)

  • 高斯核(式 7.90):
\[ K(\boldsymbol x,\boldsymbol z)=\exp\!\left(-\frac{\|\boldsymbol x-\boldsymbol z\|^2}{2\sigma^2}\right) \]

对应高斯径向基函数(RBF)分类器;它对应的 \(\phi\) 是无穷维的(写不出来,但确实满足 \(K=\phi\cdot\phi\)),写成"先求距离再变换"的样子,展开后本质仍是高维内积。

  • Sigmoid 核(老师 PPT slide_025 列为常用核):
\[ K(\boldsymbol x,\boldsymbol z)=\tanh\!\big[k(\boldsymbol x\cdot\boldsymbol z)+c\big] \]

老师 PPT 的常用核就是这三个:多项式核、高斯核、Sigmoid 核——填空背这三个。

四、线性 vs 非线性 SVM

  • 线性 SVM:不用核(等价于线性核 \(K=\boldsymbol x\cdot\boldsymbol z\)\(\phi\) 是恒等映射、不升维)。
  • 非线性 SVM:用真正升维的核(多项式、高斯),\(\phi\) 把数据映到高维,在高维里线性可分、回到原空间就是非线性边界。
  • 课本做法:线性 SVM 对偶问题里目标函数和决策函数只涉及内积 \(\boldsymbol x_i\cdot\boldsymbol x_j\),把内积换成 \(K(\boldsymbol x_i,\boldsymbol x_j)\) 即得非线性 SVM(决策函数式 7.94)。

五、怎么判断一个函数能不能当核(定义 7.7 / 定理 7.5)

通常说的核函数就是正定核。判据(定理 7.5 充要条件 / 定义 7.7 等价定义):

\(K(\boldsymbol x,\boldsymbol z)\) 是对称函数,且对任意有限点集 \(\{\boldsymbol x_1,\dots,\boldsymbol x_m\}\),其 Gram 矩阵 \([K(\boldsymbol x_i,\boldsymbol x_j)]_{m\times m}\) 半正定\(K\) 是正定核。

实务上很难对"任意有限集"验证,所以一般直接用已有的核。

易错点 / 出处提醒

  • ⚠️ 多项式核展开 \(\phi\) 的课本例子是 \((\boldsymbol x\cdot\boldsymbol z)^2\to\mathbb R^3\)(例 7.3,没有 +1)\((1+\boldsymbol x\cdot\boldsymbol z)^2\to\mathbb R^6\)\(\phi=(1,\sqrt2x_1,\sqrt2x_2,x_1^2,x_2^2,\sqrt2x_1x_2)\)数学上正确的等价示例,但非课本原例,答题引用请用例 7.3。
  • 核定义编号:核函数=定义 7.6正定核(Gram 半正定)=定义 7.7 / 定理 7.5
  • "线性核"不是"常用核函数"里命名的(老师 PPT 常用核只列多项式核、高斯核、Sigmoid 核),是概念性说法。