两类点摊在平面上,一类围成一圈,另一类缩在圈心,怎么画直线都切不开。把每个点的半径当成第三个坐标抬起来,一个平面就能干净分开。核方法把这个动作变成了通用工具:在低维里算,效果等价于在高维里分。AI 领域的支持向量机靠它撑过了深度学习兴起前的那二十年。
升维之后,边界变直了
做法是找一个映射,把原空间的点送到更高维的特征空间,在那里训练线性模型。原空间看到的是一条曲线,特征空间里只是一个平面。维度可以高到无穷:高斯核对应的特征空间就是无穷维,任意复杂的边界都能被一个超平面切开。
代价本来很吓人。显式算出每个点的新坐标,维度一高就存不下、算不动,无穷维更是无从下手。
核技巧省掉的是一次显式展开
转机在于,很多算法的求解过程只用得到样本之间的内积,用不到坐标本身。对偶形式的 SVM、核岭回归、核 PCA 都属于这一类。既然只要内积,就可以直接定义一个函数,让它等于高维空间里的内积,跳过映射这一步。这个函数就是核函数。
举个能算清的例子。二维输入配上二次多项式核,等价于映射到六维空间,其中包含两个原始特征、它们的平方和交叉项。显式做法要先算六个分量再点乘;核做法只算一次二维内积,加一,再平方。维度越高,差距越夸张。约束是核矩阵必须半正定,否则它不对应任何特征空间里的内积,这条叫 Mercer 条件。
几种核函数,各有偏好
核的选择等于替模型挑了一种「相似」的定义,选错比调参更致命:
| 核函数 | 适合什么结构 | 代价 |
|---|---|---|
| 线性核 | 维度已经很高,比如文本的词频特征;关系接近线性 | 没有超参、训练最快;等于没升维,弯曲边界分不开 |
| 多项式核 | 特征之间有明确的乘积关系,比如交互项 | 次数一高数值就爆,必须做归一化;次数本身要调 |
| 高斯核(RBF) | 边界形状未知、样本量中等 | 带宽 γ 大则过拟合、小则欠拟合;核矩阵几乎满秩,内存 O(n²) |
| 拉普拉斯核 | 特征变化剧烈、边界带尖角 | 比 RBF 更局部,对 γ 同样敏感,远距离样本的相似度衰减更快 |
| 自定义核(序列核、图核) | 输入是字符串、树、图这类结构化对象 | 要先证明半正定,计算通常不便宜 |
O(n²) 这一项是核方法的总账。一万个样本,核矩阵有一亿个元素,双精度下约 800MB;十万个样本就是 80GB,还没开始训练就已经放不下。
它和 SVM 绑在一起,是相互成全
SVM 的对偶形式里,样本只以内积的形式出现,把内积换成核函数,非线性分类就到手了,改动量很小。反过来,核方法也需要一个能利用稀疏性的算法:SVM 的解只由少量支持向量决定,预测时不必扫全部样本。这套组合在九十年代到一零年前后是分类任务的默认选项,支持向量机怎么找到那条最大间隔的边界是理解它的入口。
样本一多,账就不划算了
训练复杂度在 O(n²) 到 O(n³) 之间,瓶颈是那个核矩阵。样本上万还能忍,上百万基本没有可行性,除非用近似。预测也不轻松:支持向量的个数随数据规模增长,一条样本要跟几百上千个支持向量算核。
第二处麻烦是没有概率输出。SVM 给的是到边界的距离,不是概率,要拿到概率得额外做一次校准,多一层拟合。第三处是选核和调参:核类型、γ、正则系数三者要一起搜,网格搜索的代价随样本量平方增长,正则化系数在核方法里起什么作用经常被忽略,它直接决定边界能弯到什么程度。
还有一条结构性的:核方法仍然依赖人选的特征。它把「怎么分」自动化了,没把「看什么」自动化。深度学习把这两件事一起学了,这是它退居二线的主因。
它换了个名字继续存在
核岭回归在统计学习里一直有人用;高斯过程把核当成协方差函数,做小样本回归时给出的是带不确定性的预测。工程上还有一条绕路:用随机傅里叶特征近似 RBF 核,把 O(n²) 的核矩阵换成 O(nD) 的显式特征,精度略降、规模能上去。理论侧,神经正切核被用来解释宽网络为什么能训练,核 PCA 怎么在非线性结构上做降维则是它在无监督方向的延续。
什么时候还值得拿出来用:样本几百到几千、维度高、要一个确定性解、不希望调太多超参。这个区间里,核方法依然是一个便宜且稳的基线。
速查:核方法
- 升维让非线性边界变成高维里的平面
- 核函数直接给内积,省掉算坐标那一步
- 核矩阵必须半正定,这是能用的前提
- RBF 的带宽 γ 决定边界弯到什么程度
- 样本上万后内存按平方涨,是它退场的硬约束


