3. 支持向量机
3. 支持向量机
3.1 本质
基本模型是定义在特征空间上的间隔最大的线性分类器。核技巧使之成为实质上的非线性分类器。
学习策略是间隔最大化,可形式化为求解凸二次优化问题。等价于正则化的合页损失函数的最小化问题。
学习算法是求解凸二次规划的最优化算法。
理解支持向量机可以从简至繁推进:线性可分支持向量机(硬间隔SVM),线性支持向量机(软间隔SVM),非线性支持向量机(软间隔最大化+核技巧)。
3.2 训练数据集
假设给定训练数据集:\(T={(x_1,y_1), (x_2, y_2), ..., (x_N, y_N)}\)
其中\(x \in R^n\),\(y\in\{+1, -1\}\),+1表示为正例,-1表示负例。
学习的目标在于在特征空间中寻找一个分离超平面\(w \cdot x + b = 0\),将正例和负例正确分开。感知机利用误分类最小的策略。SVM利用间隔最大化的策略。
3.3 线性可分SVM
假设训练数据集线性可分,则存在无穷个分离超平面可将两类数据正确分开。若分类超平面为:\(w \cdot x + b = 0\)
相应的分类决策函数为:\(f(x)=sign(w \cdot x + b)\)
这种判别为模型为线性可分SVM。
线性可分SVM的学习策略(寻找超平面的策略)为间隔最大化。
那么,何为间隔呢?
对于一个分离超平面\(w \cdot x +b = 0\),样本点\(x_i\)距离超平面的几何距离为:
\(\gamma_i = \frac{|w \cdot x+b|}{||w||}\)。一般来说,点\(x_i\)距离超平面的远近可以表示分类预测的确信度。距离超平面较远的点,其分类预测结果更可信。\(w \cdot x_i + b\)的符号与类标记\(y_i\)是否一致表示分类的正确性。
间隔就是分类正确性和确信度的一种表达,可分为函数间隔和几何间隔。\(|w \cdot x_i + b|\)可以相对地表示点\(x_i\)距离超平面的远近,\(y_i(w \cdot x_i +b)\)为函数间隔。$$\frac{y_i(w \cdot x_i + b)}{||w||}$$为几何间隔。
3.3.1 求解分割超平面的问题建模:间隔最大化
SVM学习的基本想法是求解能够正确划分训练数据集且几何间隔最大的分离超平面。
\(min \gamma\)
\(s.t. \frac{y_i(w \cdot x_i + b)}{||w||}>\gamma\)