1.支持向量机
1)线性可分的概念
D0和D1是n维欧氏空间中的两个点集(点的集合)。如果存在n维向量w和实数b,使得所有属于D0的点xi都有 wxi+b>0,而对于所有属于D1的点xj则有wxj+b<0。则我们称D0和D1线性可分。
2)线性可分支持向量机就是:以找出线性可分的样本在特征空间中的最大间隔超平面为学习目的的分类模型。
3)拉格朗日乘子法
目标函数:minf(x,y)
s.t.g(x,y)<=0
利用梯度法求得:
4)KKT约束条件
将上面拆分开的严格不等式和等式两种情况再整合起来:
a.如果严格不等式成立时得到
f()函数的极小值,则有 λ=0,这样才能将拉格朗日函数直接转换为原始函数。则有 λg(x,y)=0,
如果等式成立时得到f() 函数的约束条件极小值,则必然存在 λ>0,且同时 g(x,y)=0, 因此也有
λg(x,y)=0.
于是,对于不等式约束条件 g(x,y)⩽0,最终的约束条件变成了:
g(x,y)<=0
λ>=0
λg(x,y)=0
2.使用对偶算法求解线性可分 SVM 的步骤
步骤1:对主问题构造拉格朗日函数。
步骤2:求拉格朗日函数对于 w,b的极小。
步骤3:求 minw,bL(w,b,α)对 α 的极大。
步骤4:由对偶问题求 α1,α2,…,αm。
步骤5:由 α∗ 求 w。
步骤6:由 w求 b。
步骤7: 求最终结果。
3.硬间隔和软间隔
线性可分 SVM 正负样本之间的间隔叫做“硬间隔”,也就是说在这个“隔离带”里面,肯定不会出现任何训练样本。即存在一个超平面能够将不同类的样本完全彻底,且无一错漏地分开。
相应的,对应于软间隔的 SVM,也就叫做线性 SVM。允许部分样本不满足约束条件: yi(wxi+b)⩾1。
4.非线性SVM
对于在有限维度向量空间中线性不可分的样本,我们将其映射到更高维度的向量空间里,再通过间隔最大化的方式,学习得到支持向量 机,就是非线性 SVM。
简单理解就是:非线性 SVM = 核技巧 + 线性 SVM。
5.核函数
对于有限维的原始空间,一定存在更高维度的空间,使得前者中的样本映射到新空间后可分。但是新空间(特征空间)的维度也许很大,甚至可能是无限维的。这样的话,直接计算 ϕ(xi)⋅ϕ(xj)就会很困难。为了避免计算 ϕ(xi) 和 ϕ(xj) 的内积,我们需要设置一个新的函数——k(xi,xj):k(xi,xj)=ϕ()xi)⋅ϕ(xj)原始空间中的两个样本 xi 和 xj经过 k(⋅,⋅)函数计算所得出的结果,是它们在特征空间中映射成的新向量的内积。如此一来,我们就不必真的计算出 ϕ(xi)点乘 ϕ(xj)的结果,而可以直接用 k(⋅,⋅)函数代替它们。我们把这个 k(⋅,⋅)函数叫做核函数。
**核函数的种类:**
线性核(Linear Kernel);多项式核(Polynomial Kernel);RBF 核(Radial Basis Function Kernel);Sigmoid 核(Sig