支持向量机
问题
SVM 的核心思想是什么?核函数的作用是什么?
答案
一、SVM 核心思想
SVM 找一个最大间隔超平面将数据分开:
- 支持向量:距离决策边界最近的样本点
- 间隔最大化:使得决策边界对噪声更鲁棒
二、核函数
当数据线性不可分时,核函数将数据映射到高维空间:
| 核函数 | 公式 | 适用场景 |
|---|---|---|
| 线性核 | 线性可分数据 | |
| 多项式核 | 低维非线性 | |
| RBF(高斯核) | 通用首选 | |
| Sigmoid 核 | 类似神经网络 |
核技巧
核函数的精妙之处:不需要真的计算高维映射 ,只需要计算两个样本在高维空间中的内积 。计算量不随维度增加。
三、软间隔
真实数据通常有噪声,允许一定程度的分类错误:
- 引入松弛变量 ,允许样本落在间隔内
- 惩罚参数 控制容错度: 越大越严格,越小越宽容
四、SVM 优缺点
| 优点 | 缺点 |
|---|---|
| 小数据集效果好 | 大数据集训练慢(~) |
| 高维空间表现好 | 对核函数和参数选择敏感 |
| 理论保证(间隔理论) | 不直接输出概率 |
| 支持非线性分类 | 对缺失值敏感 |
常见面试问题
Q1: SVM 和逻辑回归怎么选?
答案:
- 小数据集、高维特征:SVM 更好(理论保证更强)
- 大数据集:逻辑回归更实用(训练快、可在线学习)
- 需要概率输出:逻辑回归(SVM 需额外 Platt Scaling)
- 工业实践:大多数场景用逻辑回归或 XGBoost
Q2: RBF 核的 gamma 参数有什么影响?
答案:
- 大:每个样本影响范围小,决策边界复杂 → 容易过拟合
- 小:每个样本影响范围大,决策边界平滑 → 容易欠拟合
- 通常用网格搜索 + 交叉验证选择最优