https://blog.csdn.net/v_JULY_v/article/details/7624837
一、SVM简介
支持向量机,因其英文名为support vector machine,故一般简称SVM,通俗来讲,它是一种二类分类模型,其基本模型定义为特征空间上的间隔最大的线性分类器,其学习策略便是间隔最大化,最终可转化为一个凸二次规划问题的求解。
1.1、分类标准的起源:Logistic回归
理解SVM,咱们必须先弄清楚一个概念:线性分类器。
给定一些数据点,它们分别属于两个不同的类,现在要找到一个线性分类器把这些数据分成两类。如果用x表示数据点,用y表示类别(y可以取1或者-1,分别代表两个不同的类),一个线性分类器的学习目标便是要在n维的数据空间中找到一个超平面(hyper plane),这个超平面的方程可以表示为( wT中的T代表转置):
可能有读者对类别取1或-1有疑问,事实上,这个1或-1的分类标准起源于logistic回归。
Logistic回归目的是从特征学习出一个0/1分类模型,而这个模型是将特性的线性组合作为自变量,由于自变量的取值范围是负无穷到正无穷。因此,使用logistic函数(或称作sigmoid函数)将自变量映射到(0,1)上,映射后的值被认为是属于y=1的概率。
假设函数
其中x是n维特征向量,函数g就是logistic函数。
而的图像是
可以看到,将无穷映射到了(0,1)。
而假设函数就是特征属于y=1的概率。
从而,当我们要判别一个新来的特征属于哪个类时,只需求即可,若大于0.5就是y=1的类,反之属于y=0类。
此外,只和有关,>0,那么,而g(z)只是用来映射,真实的类别决定权还是在于。再者,当时,=1,反之。如果我们只从出发,希望模型达到的目标就是让训练数据中y=1的特征,而是y=0的特征。Logistic回归就是要学习得到θ,使得正例的特征远大于0,负例的特征远小于0,而且要在全部训练实例上达到这个目标。
接下来,尝试把logistic回归做个变形。首先,将使用的结果标签y = 0和y = 1替换为y = -1,y = 1,。
进一步,可以将假设函数中的g(z)做一个简化,将其简单映射到y=-1和y=1上。映射关系如下:
二、支持向量机简述
- 支持向量机(Support Vector Machines, SVM)是一种二分类模型。它的基本模型是定义在特征空间上的间隔最大的线性分类器,间隔最大使它有别于感知机;支持向量机还包括核技巧,这使其成为实质上的非线性分类器。
- SVM 的学习策略就是间隔最大化,可形式化为一个求解凸二次规划的问题,也等价于正则化的合页损失函数的最小化问题。
- SVM 的最优化算法是求解凸二次规划的最优化算法。
什么是支持向量
- 训练数据集中与分离超平面距离最近的样本点的实例称为支持向量
- 更通俗的解释:
- 数据集种的某些点,位置比较特殊。比如
x+y-2=0
这条直线,假设出现在直线上方的样本记为 A 类,下方的记为 B 类。 - 在寻找找这条直线的时候,一般只需看两类数据,它们各自最靠近划分直线的那些点,而其他的点起不了决定作用。
- 这些点就是所谓的“支持点”,在数学中,这些点称为向量,所以更正式的名称为“支持向量”。
SVM中支持向量的通俗解释 - CSDN博客
- 数据集种的某些点,位置比较特殊。比如
支持向量机的分类
- 线性可分支持向量机
- 当训练数据线性可分时,通过硬间隔最大化,学习一个线性分类器,即线性可分支持向量机,又称硬间隔支持向量机。
- 线性支持向量机
- 当训练数据接近线性可分时,通过软间隔最大化,学习一个线性分类器,即线性支持向量机,又称软间隔支持向量机。
- 非线性支持向量机
- 当训练数据线性不可分时,通过使用核技巧及软间隔最大化,学习非线性支持向量机。
核函数与核技巧
- 核函数表示将输入从输入空间映射到特征空间后得到的特征向量之间的内积
最大间隔超平面背后的原理
机器学习技法 (1-5) - 林轩田
-
相当于在最小化权重时对训练误差进行了约束——对比 L2 范数正则化,则是在最小化训练误差时,对权重进行约束
与 L2 正则化的区别
-
相当于限制了模型复杂度——在一定程度上防止过拟合,具有更强的泛化能力
支持向量机推导
- SVM 由简至繁包括:线性可分支持向量机、线性支持向量机以及非线性支持向量机
线性可分支持向量机推导
《统计学习方法》 & 支持向量机SVM推导及求解过程 - CSDN博客
- 当训练数据线性可分时,通过硬间隔最大化,学习一个线性分类器,即线性可分支持向量机,又称硬间隔支持向量机。
- 线性 SVM 的推导分为两部分
- 如何根据间隔最大化的目标导出 SVM 的标准问题;
- 拉格朗日乘子法对偶问题的求解过程.
符号定义:
-
训练集
T
-
分离超平面
(w,b)
如果使用映射函数,那么分离超平面为
映射函数
Φ(x)
定义了从输入空间到特征空间的变换,特征空间通常是更高维的,甚至无穷维;方便起见,这里假设Φ(x)
做的是恒等变换。 -
分类决策函数
f(x)
SVM 标准问题的推导(2)
-
从“函数间隔”到“几何间隔”
给定训练集
T
和超平面(w,b)
,定义函数间隔γ^
:对
w
作规范化,使函数间隔成为几何间隔γ
-
最大化几何间隔
由函数间隔与几何间隔的关系,等价于
函数间隔
γ^
的取值不会影响最终的超平面(w,b)
:取γ^=1
;又最大化1/||w||
等价于最小化1/2*||w||^2
,于是有为什么令
γ^=1
?——比例改变(ω,b)
,超平面不会改变,但函数间隔γ^
会成比例改变,因此可以通过等比例改变(ω,b)
使函数间隔γ^=1
-
该约束最优化问题即为线性支持向量机的标准问题——这是一个凸二次优化问题,可以使用商业 QP 代码完成。
理论上,线性 SVM 的问题已经解决了;但在高等数学中,带约束的最优化问题还可以用另一种方法求解——拉格朗日乘子法。该方法的优点一是更容易求解,而是自然引入核函数,进而推广到非线性的情况。
SVM 对偶算法的推导(5)
-
构建拉格朗日函数
-
标准问题是求极小极大问题:
其对偶问题为:
-
求
L
对(w,b)
的极小结果代入
L
,有:即
-
求
L
对α
的极大,即该问题的对偶问题为:
于是,标准问题最后等价于求解该对偶问题
继续求解该优化问题,有 SMO 方法;因为《统计学习方法》也只讨论到这里,故推导也止于此
-
设
α
的解为α*
,则存在下标j
使α_j > 0
,可得标准问题的解为:可得分离超平面及分类决策函数为:
二.线性可分、拉格朗日,对偶问题