Linear Support Vector Machine
Large-Margin Separating Hyperplane
- 线性可分情形
- 存在一个“解集”
- 哪个解是最优的?
- PLA算法中随机得到
- 根据VC边界,每个解的效果都一样 E o u t ( w ) ≤ E i n ( w ) + Ω ( H ) E_{out}(\bold w) \le E_{in}(\bold w) + \Omega(\mathcal{H}) Eout(w)≤Ein(w)+Ω(H)
- 对采样误差的容忍度
- 对过拟合更加鲁棒
- 这个分界面离数据点更远——大margin
- 目标
- 能够整个分开所有样本
- 距离所有样本点的距离最大
Standard Large-Margin Problem
- 形式化假设(将截距单独列出): h ( x ) = sign ( w T x + b ) h(\bold x) = \operatorname{sign}(\bold w^\mathrm{T} \bold x + b) h(x)=sign(wTx+b)
- 样本点 x \bold x x到分类超平面 w T x + b = 0 \bold w^{\mathrm{T}} \bold x + b = 0 wTx+b=0的距离( x ′ \bold x^{\prime} x′为平面上任意一点,距离即连线沿法向投影): ∣ w ∥ w ∥ ( x − x ′ ) ∣ = 1 ∥ w ∥ ∣ w T x + b ∣ \left | \frac{\bold w}{\|\bold w\|} (\bold x - \bold x^{\prime}) \right | = \frac{1}{\|\bold w\|} |\bold w^{\mathrm{T}} \bold x + b| ∣∣∣∥w∥w(x−x′)∣∣∣=∥w∥1∣wTx+b∣
- 基于线性可分的假设,有 y n ( w T x n + b ) > 0 y_n (\bold w^{\mathrm{T}} \bold x_n + b) > 0 yn(wTxn+b)>0,那么可以脱掉绝对值为 1 ∥ w ∥ y n ( w T x n + b ) \frac{1}{\|\bold w\|} y_n (\bold w^{\mathrm{T}} \bold x_n + b) ∥w∥1yn(wTxn+b)
- 形式化间隔优化问题:
max b , w margin ( b , w ) s.t. y n ( w T x n + b ) > 0 margin ( b , w ) = min n = 1 , … , N 1 ∥ w ∥ y n ( w T x n + b ) \begin{aligned} \max_{b, \bold w} &\quad \operatorname{margin} (b, \bold w) \\ \operatorname{s.t.} &\quad y_n (\bold w^{\mathrm{T}} \bold x_n + b) > 0 \\ &\quad \operatorname{margin} (b, \bold w) = \min_{n = 1, \ldots, N} \frac{1}{\|\bold w\|} y_n (\bold w^{\mathrm{T}} \bold x_n + b) \end{aligned} b,wmaxs.t.margin(b,w)yn(wTxn+b)>0margin(b,w)=n=1,…,Nmin∥w∥1yn(wTxn+b)
- 直线族可以被放缩
- 将间隔放缩到1: min n = 1 , … , N y n ( w T x n + b ) = 1 \min_{n = 1, \ldots, N} y_n (\bold w^{\mathrm{T}} \bold x_n + b) = 1 minn=1,…,Nyn(wTxn+b)=1
- 优化问题被简化: margin ( b , w ) = 1 ∥ w ∥ \operatorname{margin} (b, \bold w) = \frac{1}{\|\bold w\|} margin(b,w)=∥w∥1
- 松弛约束条件:只要求 y n ( w T x n + b ) ≥ 1 y_n (\bold w^{\mathrm{T}} \bold x_n + b) \ge 1 yn(wTxn+b)≥1
- 进一步简化:转为最小化优化问题,去除根号
min b , w 1 2 w T w s.t. y n ( w T x n + b ) ≥ 1 , for all n \begin{aligned} \min_{b, \bold w} &\quad \frac{1}{2} \bold w^{\mathrm{T}} \bold w \\ \operatorname{s.t.} &\quad y_n (\bold w^{\mathrm{T}} \bold x_n + b) \ge 1 ,\quad \text{for all }n \\ \end{aligned} b,wmins.t.21wTwyn(wTxn+b)≥1,for all n
- 其中的 1 2 \frac 12 21用于后续求导的系数处理
Support Vector Machine
- 支撑向量:位于最小距离上,能够描述出超平面的样本点
- 支撑向量机:在支撑向量的辅助之下学习最宽的分类超平面
- 不能使用GD——但是是一个凸的优化函数、线性约束——QP问题
- QP形式:
optimal u ← QP ( Q , p , A , c ) min u 1 2 u T Q u + p T u s.t. a m T u ≥ c m , m = 1 , 2 , … , M \begin{aligned} \operatorname{optimal} \bold u &\gets \operatorname{QP}(\bold Q, \bold p, \bold A, \bold c) \\ \min_{\bold u} &\quad \frac 12 \bold u^{\mathrm{T}} \bold Q \bold u + \bold p^{\mathrm{T}} \bold u \\ \operatorname{s.t.} &\quad \bold a_m^{\mathrm{T}} \bold u \ge \bold c_m ,\ m = 1, 2, \ldots, M \end{aligned} optimaluumins.t.←QP(Q,p,A,c)21uTQu+pTuamTu≥cm, m=1,2,…,M
- 线性硬间隔SVM的对应形式
u = [ b w ] Q = [ 0 0 d T 0 d I d ] p = 0 d + 1 a n T = y n [ 1 x n T ] c n = 1 M = N \bold u = \left [ \begin{array}{c} b \\ \bold w \end{array} \right ] \quad \bold Q = \left [ \begin{array}{cc} 0 & \bold 0_d^{\mathrm{T}} \\ \bold 0_d & \bold I_d \end{array} \right ] \quad \bold p = \bold 0_{d + 1} \\ \bold a_n^{\mathrm{T}} = y_n \left[ \begin{array}{cc} 1 & \bold x_n^{\mathrm{T}} \end{array} \right] \quad \bold c_n = 1 \quad M = N u=[bw]Q=[00d0dTId]p=0d+1anT=yn[1xnT]cn=1M=N
- 线性:不对 x n \bold x_n xn进行变换
- 硬间隔:不存在违反边界的情形
Reasons behind Large-Margin Hyperplane
- 可以认为是要求 E i n = 0 E_{in} = 0 Ein=0(并且还要大于一定的值)的正则化过程
- 增加了间隔限制,能够降级VC维度,保证更好的泛化性能
- 需要考虑 d v c ( A ρ ) d_{vc}(\mathcal{A}_\rho) dvc(Aρ)(数据依赖,需要VC理论之外的更多信息),而不是 d v c ( H ) d_{vc}(\mathcal{H}) dvc(H)(数据独立,VC理论保证),其中 ρ \rho ρ表示间隔宽度
- 通常小于 d + 1 d + 1 d+1: d v c ( A ρ ) ≤ min ( R 2 ρ 2 , d ) + 1 ≤ d + 1 d_{vc}(\mathcal{A}_\rho) \le \min \left( \frac{\bold R^2}{\bold \rho^2}, d \right) + 1 \le d + 1 dvc(Aρ)≤min(ρ2R2,d)+1≤d+1