草稿
线性核
当原始特征几何已经有用时,把原始点积作为最简单的核函数基线。
concept intermediate machine-learningkernelssimilarity
Hook problem:从不升维的基线开始
在加入弯曲边界或局部邻域之前,先问一个问题:原始坐标本身够不够用?
**线性核(linear kernel)**就是不发明新特征的核函数。
| 点 | 点积 | 距离平方 | K(A, z) |
|---|---|---|---|
| A | 2 | 0 | 2 |
| B | 3 | 1 | 3 |
| C | 1 | 5 | 1 |
| D | -2 | 10 | -2 |
First naive idea:点积已经足够
如果两个向量方向相近,而且长度也有意义,那么点积就是一个合理的相似度分数。
痛点出现在原始对齐不是重点的时候:类似 XOR 的交互、环形结构、局部小岛,都需要超出直线几何的表达。
Formal version
如果输入有 d 个特征,直接计算需要 O(d) 时间。这里的特征映射是恒等映射,所以 phi(x)=x。
Interactive comparison
核相似度实验台
x * z: 保留原始坐标,度量普通的方向对齐。 只影响 RBF 的衰减速度;其他核函数保持固定参数。
把每个点都和选中的锚点比较。注意每种核函数对“接近”的理解不同。
相似度; 点积 2, 距离平方 0
相似度; 点积 3, 距离平方 1
相似度; 点积 1, 距离平方 5
相似度; 点积 -2, 距离平方 10
Implementation sketch
function linearKernel(x: number[], z: number[]) {
return x.reduce((sum, value, index) => sum + value * z[index], 0);
}
Common confusions
- 线性核不表示数据一定简单;它表示模型按原始特征做线性比较。
- 如果特征工程很好,线性核仍然可以很强。
- 换成多项式核或 RBF 核,是在改变几何,而不只是换公式名字。
Connections
基础思想
基础思想
具体选择
具体选择
具体选择
具体选择
多项式核从同一个点积出发,把它的仿射形式提升到某个次数。RBF 核则离开点积对齐,改用距离衰减。
Exercises
- 线性核的特征映射是什么?
- 为什么直接计算代价是
O(d)? - 举一个线性核可能吃力的模式。
图谱连接 : 线性核