6.0 背景
支持向量机 | 灵活 | 能力强(以任意精度逼近连续函数的任意角) | 数学理论坚定 | 全局最优解 | 不需要人工调参 | 计算开销大(相对) | 领域支持陷入困难 | 服务科学界 |
神经网络 | 灵活 | 能力强 | 理论不清,来自认知 | 局部最优解 | 依赖人工调参 | 可大可小 | 领域支持无处不在 | 服务工业界 |
6.1 间隔与支持向量
-
间隔(margin):选择“正中间”,容忍性好,鲁棒性高,泛化能力最强
-
泛化:对未来数据的预测能力
-
支持向量(support vector):距离超平面最近的几个点(正样本、负样本)
-
最大间隔:点到直线最短距离=1/w(斜率倒数)
arg maxw,b∣∣w∣∣2s.t.yi(wTxi+b)≥1,i=1,2,...,m.等价于↓arg minw,b21∣∣w∣∣2s.t.yi(wTxi+b)≥1,i=1,2,...,m. -
什么是凸函数:y=x^2(二阶导数是正数),凸优化一定有全局最优解
6.2 对偶问题
-
拉格朗日乘子法:高维函数,约束条件降为 1 个
-
解的稀疏性:KKT 条件
-
⎩⎪⎨⎪⎧αi≥0,yif(xi)≥1,αi(yif(xi)−1)=0.必有αi=0 或 yif(xi)=1
-
确定 w,只和支持向量个数有关
-
-
mosek 工具
-
SMO 方法
6.3 核函数
- 线性不可分:升维,在高维空间建立线性分类器
- Mercer 定理(充分不必要):只要一个对称函数所对应的核矩阵半正定(所有主子式非负),则它就能作为核函数来使用
6.4 软间隔和正则化
- 0/1损失函数:在间隔和损失之间取一个折中
- 存在问题:0/1损失函数非凸,非连续,不易优化
- 替代损失:一般是 0/1损失函数的上界
- 正则化
- 对数几率回归
- 最小绝对收缩选择算子(LASSO)
6.5 支持向量回归
-
犯错的点间隔越大,数量越少
-
损失函数
-
二次规划:目标是一个二次函数,约束是一个线性函数
6.6 核方法
- 核SVM
- 核PCA
- 核LDA
- 再生核希尔伯特空间(Reproducing Kernel Hilbert Space)