6.0 背景

支持向量机 灵活 能力强(以任意精度逼近连续函数的任意角) 数学理论坚定 全局最优解 不需要人工调参 计算开销大(相对) 领域支持陷入困难 服务科学界
神经网络 灵活 能力强 理论不清,来自认知 局部最优解 依赖人工调参 可大可小 领域支持无处不在 服务工业界

6.1 间隔与支持向量

  • 间隔(margin):选择“正中间”,容忍性好,鲁棒性高,泛化能力最强

  • 泛化:对未来数据的预测能力

  • 支持向量(support vector):距离超平面最近的几个点(正样本、负样本)

  • 最大间隔:点到直线最短距离=1/w(斜率倒数)
    a r g <mtext>   </mtext> m a x w , b 2 w s . t . y i ( w T x i + b ) 1 , i = 1 , 2 , . . . , m . a r g <mtext>   </mtext> m i n w , b 1 2 w 2 s . t . y i ( w T x i + b ) 1 , i = 1 , 2 , . . . , m . arg \ max_{w,b} \frac{2}{||w||}\\ s.t. y_i(w^Tx_i+b) \geq 1,i = 1,2,...,m.\\ 等价于↓\\ arg \ min_{w,b} \frac{1}{2}||w||^2\\ s.t. y_i(w^Tx_i+b) \geq 1,i=1,2,...,m. arg maxw,bw2s.t.yi(wTxi+b)1,i=1,2,...,m.arg minw,b21w2s.t.yi(wTxi+b)1,i=1,2,...,m.

  • 什么是凸函数:y=x^2(二阶导数是正数),凸优化一定有全局最优解

6.2 对偶问题

  • 拉格朗日乘子法:高维函数,约束条件降为 1 个

  • 解的稀疏性:KKT 条件

    • { <mstyle displaystyle="false" scriptlevel="0"> α i 0 , </mstyle> <mstyle displaystyle="false" scriptlevel="0"> y i f ( x i ) 1 , </mstyle> <mstyle displaystyle="false" scriptlevel="0"> α i ( y i f ( x i ) 1 ) = 0. </mstyle> α i = 0 <mtext>   </mtext> <mtext>   </mtext> y i f ( x i ) = 1 \begin{cases} \alpha_i\geq 0,\\ y_if(x_i) \geq 1, \\ \alpha_i(y_if(x_i)-1) = 0. \end{cases}\\ 必有\alpha_i=0 \ 或 \ y_if(x_i)=1 αi0,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)