长沙网站建设 599,广告推广渠道有哪些,工信部的网站备案信息,百度搜索风云榜电脑版from#xff1a;https://blog.csdn.net/liugan528/article/details/79448379
SVM
1. 基本概念
支持向量机#xff08;Support Vector Machine, SVM#xff09;的基本模型是在特征空间上找到最佳的分离超平面使得训练集上正负样本间隔最大。SVM是用来解决二分类问题的有监督学…fromhttps://blog.csdn.net/liugan528/article/details/79448379
SVM
1. 基本概念
支持向量机Support Vector Machine, SVM的基本模型是在特征空间上找到最佳的分离超平面使得训练集上正负样本间隔最大。SVM是用来解决二分类问题的有监督学习算法在引入了核方法之后SVM也可以用来解决非线性问题。 一般SVM有下面三种
硬间隔支持向量机线性可分支持向量机当训练数据线性可分时可通过硬间隔最大化学得一个线性可分支持向量机。软间隔支持向量机当训练数据近似线性可分时可通过软间隔最大化学得一个线性支持向量机。非线性支持向量机当训练数据线性不可分时可通过核方法以及软间隔最大化学得一个非线性支持向量机。
2. 硬间隔支持向量机
给定训练样本集D{(x1→,y1),(x2→,y2),…,(xn→,yn)}D{(x1→,y1),(x2→,y2),…,(xn→,yn)}yi∈{1,−1}yi∈{1,−1}ii表示第ii个样本nn表示样本容量。分类学习最基本的想法就是基于训练集DD在特征空间中找到一个最佳划分超平面将正负样本分开而SVM算法解决的就是如何找到最佳超平面的问题。超平面可通过如下的线性方程来描述w⃗ Tx⃗ b0(1)(1)w→Tx→b0其中
w⃗ w→
表示法向量决定了超平面的方向
bb
表示偏移量决定了超平面与原点之间的距离。 对于训练数据集
DD
假设找到了最佳超平面
w∗→x⃗ b∗0w∗→x→b∗0
定义决策分类函数f(x⃗ )sign(w∗→x⃗ b∗)(2)(2)f(x→)sign(w∗→x→b∗)该分类决策函数也称为线性可分支持向量机。 在测试时对于线性可分支持向量机可以用一个样本离划分超平面的距离来表示分类预测的可靠程度如果样本离划分超平面越远则对该样本的分类越可靠反之就不那么可靠。 那么什么样的划分超平面是最佳超平面呢 对于图1有A、B、C三个超平面很明显应该选择超平面B也就是说超平面首先应该能满足将两类样本点分开。图1对于图2的A、B、C三个超平面应该选择超平面C因为使用超平面C进行划分对训练样本局部扰动的“容忍”度最好分类的鲁棒性最强。例如由于训练集的局限性或噪声的干扰训练集外的样本可能比图2中的训练样本更接近两个类目前的分隔界在分类决策的时候就会出现错误而超平面C受影响最小也就是说超平面C所产生的分类结果是最鲁棒性的、是最可信的对未见样本的泛化能力最强。图2下面以图3中示例进行推导得出最佳超平面。图3空间中超平面可记为
(w⃗ ,b)(w→,b)
根据点到平面的距离公式空间中任意点
x⃗ x→
到超平面
(w⃗ ,b)(w→,b)
的距离可写为rw⃗ x⃗ b||w⃗ ||(3)(3)rw→x→b||w→||假设超平面
(w⃗ ,b)(w→,b)
能将训练样本正确分类那么对于正样本一侧的任意一个样本
(xi→,yi)∈D(xi→,yi)∈D
应该需要满足该样本点往超平面的法向量
w⃗ w→
的投影到原点的距离大于一定值
cc
的时候使得该样本点被预测为正样本一类即存在数值
cc
使得当
w⃗ Txi→cw→Txi→c
时
yi1yi1
。
w⃗ Txi→cw→Txi→c
又可写为
w⃗ Txi→b0w→Txi→b0
。在训练的时候我们要求限制条件更严格点以使最终得到的分类器鲁棒性更强所以我们要求
w⃗ Txi→b1w→Txi→b1
。也可以写为大于其它距离但都可以通过同比例缩放
w⃗ w→
和
bb
来使得使其变为1因此为计算方便这里直接选择1。同样对于负样本应该有
w⃗ Txi→b−1w→Txi→b−1
时
yi−1yi−1
。即 {w⃗ Txi→b≥1,w⃗ Txi→b≤−1,yi1yi−1(4)(4){w→Txi→b≥1,yi1w→Txi→b≤−1,yi−1亦即yi(w⃗ Txi→b)≥1(5)(5)yi(w→Txi→b)≥1如图3所示距离最佳超平面
w⃗ x⃗ b0w→x→b0
最近的几个训练样本点使上式中的等号成立它们被称为“支持向量”support vector。记超平面
w⃗ x⃗ b1w→x→b1
和
w⃗ x⃗ b−1w→x→b−1
之间的距离为
γγ
该距离又被称为“间隔”marginSVM的核心之一就是想办法将“间隔”
γγ
最大化。下面我们推导一下
γγ
与哪些因素有关 记超平面
w⃗ x⃗ b1w→x→b1
上的正样本为
x→x→
超平面
w⃗ x⃗ b−1w→x→b−1
上的负样本为
x−→x−→
则根据向量的加减法规则
x→x→
减去
x−→x−→
得到的向量在最佳超平面的法向量
w⃗ w→
方向的投影即为“间隔”
γγγ(x→−x−→)w⃗ ||w⃗ ||x→w⃗ ||w⃗ ||−x−→w⃗ ||w⃗ ||(6)(6)γ(x→−x−→)w→||w→||x→w→||w→||−x−→w→||w→||而
w⃗ x→b1w→x→b1w⃗ x−→b−1w→x−→b−1
即{w⃗ x→1−bw⃗ x→−1−b(7)(7){w→x→1−bw→x→−1−b将(7)带入(6)可得γ2||w⃗ ||(8)(8)γ2||w→||也就是说使两类样本距离最大的因素仅仅和最佳超平面的法向量有关 要找到具有“最大间隔”maximum margin的最佳超平面就是找到能满足式(4)中约束的参数
w⃗ w→
、
bb
使得
γγ
最大即{maxw⃗ ,b2||w⃗ ||s.t.yi(w⃗ Txi→b)≥1,i1,2,…,n(9)(9){maxw→,b2||w→||s.t.yi(w→Txi→b)≥1,i1,2,…,n显然(9)等价于{minw⃗ ,b12||w⃗ ||2s.t.yi(w⃗ Txi→b)≥1,i1,2,…,n(10)(10){minw→,b12||w→||2s.t.yi(w→Txi→b)≥1,i1,2,…,n这就是SVM的基本型。2.1 拉格朗日对偶问题
根据SVM的基本型求解出w⃗ w→和bb即可得到最佳超平面对应的模型f(x⃗ )sign(w⃗ x⃗ b)(11)(11)f(x→)sign(w→x→b)该求解问题本身是一个凸二次规划convex quadratic propgramming问题可以通过开源的优化计算包进行求解但是这样就无法体现SVM的精髓我们可以将该凸二次规划问题通过拉格朗日对偶性来解决。 对于式(10)的每条约束添加拉格朗日乘子
αi≥0αi≥0
则该问题的拉格朗日函数可写为L(w⃗ ,b,α⃗ )12||w⃗ ||2−∑i1nαi(yi(w⃗ Txib)−1)(12)(12)L(w→,b,α→)12||w→||2−∑i1nαi(yi(w→Txib)−1)其中
α⃗ (α1,α2,…,αn)α→(α1,α2,…,αn)
分别是对应着各个样本的拉格朗日乘子。 将
L(w⃗ ,b,α⃗ )L(w→,b,α→)
对
w⃗ w→
和
bb
求偏导并将偏导数等于零可得{w⃗ ∑ni1αiyixi→∑ni1αiyi0(13)(13){w→∑i1nαiyixi→∑i1nαiyi0将(13)带入(12)消去
w⃗ w→
和
bb
就可得到(10)的对偶问题⎧⎩⎨⎪⎪⎪⎪maxα∑ni1αi−12∑ni1∑nj1αiαjyiyjxi→Txj→s.t.αi≥0,i1,2,…,n∑ni1αiyi0(14)(14){maxα∑i1nαi−12∑i1n∑j1nαiαjyiyjxi→Txj→s.t.αi≥0,i1,2,…,n∑i1nαiyi0由(14)可知我们并不关心单个样本是如何的我们只关心样本间两两的乘积这也为后面核方法提供了很大的便利。 求解出
α⃗ α→
之后再求解出
w⃗ w→
和
bb
即可得到SVM决策模型f(x⃗ )w⃗ Tx⃗ b∑i1nαiyixi→Tx⃗ b(15)(15)f(x→)w→Tx→b∑i1nαiyixi→Tx→b2.2 SVM问题的KKT条件
在(10)中有不等式约束因此上述过程满足Karush-Kuhn-Tucker(KKT)条件⎧⎩⎨⎪⎪αi≥0yi(w⃗ Tx⃗ b)−1≥0,i1,2,…,nαi(yi(w⃗ Tx⃗ b)−1)0(16)(16){αi≥0yi(w→Tx→b)−1≥0,i1,2,…,nαi(yi(w→Tx→b)−1)0对于任意样本
(xi→,yi)(xi→,yi)
总有
αi0αi0
或
yi(w⃗ Tx⃗ b)−10yi(w→Tx→b)−10
。如果
αi0αi0
则由式(15)可知该样本点对求解最佳超平面没有任何影响。当
αi0αi0
时必有
yi(w⃗ Tx⃗ b)−10yi(w→Tx→b)−10
表明对应的样本点在最大间隔边界上即对应着支持向量。也由此得出了SVM的一个重要性质
训练完成之后大部分的训练样本都不需要保留最终的模型仅与支持向量有关
。 那么对于式(14)该如何求解
α⃗ α→
呢很明显这是一个二次规划问题可使用通用的二次规划算法来求解但是SVM的算法复杂度是
O(n2)O(n2)
在实际问题中这种开销太大了。为了有效求解该二次规划问题人们通过利用问题本身的特性提出了很多高效算法Sequential Minimal Optimization(SMO)就是一个常用的高效算法。在利用SMO算法进行求解的时候就需要用到上面的KKT条件。利用SMO算法求出
α⃗ α→
之后根据{w⃗ ∑ni1αiyixi→yi(w⃗ Tx⃗ b)−10(17)(17){w→∑i1nαiyixi→yi(w→Tx→b)−10即可求出
w⃗ w→
和
bb
。求解出
w⃗ w→
和
bb
之后就可利用f(x⃗ )sign(w⃗ Tx⃗ b)(18)(18)f(x→)sign(w→Tx→b)进行预测分类了注意在测试的时候不需要
−1−1
测试时没有训练的时候要求严格。3. 软间隔支持向量机
在现实任务中很难找到一个超平面将不同类别的样本完全划分开即很难找到合适的核函数使得训练样本在特征空间中线性可分。退一步说即使找到了一个可以使训练集在特征空间中完全分开的核函数也很难确定这个线性可分的结果是不是由于过拟合导致的。解决该问题的办法是在一定程度上运行SVM在一些样本上出错为此引入了“软间隔”soft margin的概念如图4所示图4具体来说硬间隔支持向量机要求所有的样本均被最佳超平面正确划分而软间隔支持向量机允许某些样本点不满足间隔大于等于1的条件
yi(w⃗ xi→b)≥1yi(w→xi→b)≥1
当然在最大化间隔的时候也要限制不满足间隔大于等于1的样本的个数使之尽可能的少。于是我们引入一个惩罚系数
C0C0
并对每个样本点
(xi→,yi)(xi→,yi)
引入一个松弛变量slack variables
ξ≥0ξ≥0
此时可将式(10)改写为⎧⎩⎨⎪⎪⎪⎪minw⃗ ,b(12||w⃗ ||2C∑ni1ξi)s.t.yi(w⃗ Txi→b)≥1−ξi,i1,2,…,nξi≥0(19)(19){minw→,b(12||w→||2C∑i1nξi)s.t.yi(w→Txi→b)≥1−ξi,i1,2,…,nξi≥0上式中约束条件改为
yi(w⃗ xi→b)≥1−ξiyi(w→xi→b)≥1−ξi
表示间隔加上松弛变量大于等于1优化目标改为
minw⃗ ,b(12||w⃗ ||2C∑ni1ξi)minw→,b(12||w→||2C∑i1nξi)
表示对每个松弛变量都要有一个代价损失
CξiCξiCC
越大对误分类的惩罚越大、
CC
越小对误分类的惩罚越小。 式(19)是软间隔支持向量机的原始问题。可以证明
w⃗ w→
的解是唯一的
bb
的解不是唯一的
bb
的解是在一个区间内。假设求解软间隔支持向量机间隔最大化问题得到的最佳超平面是
w∗→x⃗ b∗0w∗→x→b∗0
对应的分类决策函数为f(x⃗ )sign(w∗→x⃗ b∗)(20)(20)f(x→)sign(w∗→x→b∗)f(x⃗ )f(x→)
称为软间隔支持向量机。 类似式(12)利用拉格朗日乘子法可得到上式的拉格朗日函数L(w⃗ ,b,α⃗ ,ξ⃗ ,μ⃗ )12||w⃗ ||2C∑i1nξi−∑i1nαi(yi(w⃗ Txi→b)−1ξi)−∑i1nμiξi(21)(21)L(w→,b,α→,ξ→,μ→)12||w→||2C∑i1nξi−∑i1nαi(yi(w→Txi→b)−1ξi)−∑i1nμiξi其中
αi≥0αi≥0
、
μi≥0μi≥0
是拉格朗日乘子。 令
L(w⃗ ,b,α⃗ ,ξ⃗ ,μ⃗ )L(w→,b,α→,ξ→,μ→)
分别对
w⃗ w→bbξ⃗ ξ→
求偏导并将偏导数为零可得⎧⎩⎨⎪⎪w⃗ ∑ni1αiyixi→∑ni1αiyi0Cαiμi(22)(22){w→∑i1nαiyixi→∑i1nαiyi0Cαiμi将式(22)带入式(21)便可得到式(19)的对偶问题 ⎧⎩⎨⎪⎪⎪⎪maxα⃗ ∑ni1αi−12∑ni1∑nj1αiαjyiyjxi→Txj→s.t.∑ni1αiyi0,i1,2,…,n0≤αi≤C(23)(23){maxα→∑i1nαi−12∑i1n∑j1nαiαjyiyjxi→Txj→s.t.∑i1nαiyi0,i1,2,…,n0≤αi≤C对比软间隔支持向量机的对偶问题和硬间隔支持向量机的对偶问题可发现二者的唯一差别就在于对偶变量的约束不同软间隔支持向量机对对偶变量的约束是
0≤αi≤C0≤αi≤C
硬间隔支持向量机对对偶变量的约束是
0≤αi0≤αi
于是可采用和硬间隔支持向量机相同的解法求解式(23)。同理在引入核方法之后同样能得到与式(23)同样的支持向量展开式。 类似式(16)对于软间隔支持向量机KKT条件要求⎧⎩⎨⎪⎪⎪⎪⎪⎪αi≥0,μi≥0yi(w⃗ x⃗ b)−1ξi≥0αi(yi(w⃗ x⃗ b)−1ξi)0ξi≥0,μiξi0(24)(24){αi≥0,μi≥0yi(w→x→b)−1ξi≥0αi(yi(w→x→b)−1ξi)0ξi≥0,μiξi0同硬间隔支持向量机类似对任意训练样本
(xi→,yi)(xi→,yi)
总有
αi0αi0
或
yi(w⃗ x⃗ b−1ξi)yi(w→x→b−1ξi)
若
αi0αi0
则该样本不会对最佳决策面有任何影响若
αi0αi0
则必有
yi(w⃗ x⃗ b)1−ξiyi(w→x→b)1−ξi
也就是说该样本是支持向量。由式(22)可知若
αiCαiC
则
μi0μi0
进而有
ξi0ξi0
即该样本处在最大间隔边界上若
αiCαiC
则
μi0μi0
此时如果
xii≤1xii≤1
则该样本处于最大间隔内部如果
ξi1ξi1
则该样本处于最大间隔外部即被分错了。由此也可看出软间隔支持向量机的最终模型仅与支持向量有关。4. 非线性支持向量机
现实任务中原始的样本空间DD中很可能并不存在一个能正确划分两类样本的超平面。例如图4中所示的问题就无法找到一个超平面将两类样本进行很好的划分。 对于这样的问题可以通过将样本从原始空间映射到特征空间使得样本在映射后的特征空间里线性可分。例如对图5做特征映射zx2y2zx2y2可得到如图6所示的样本分布这样就很好进行线性划分了。图5图6令
ϕ(x⃗ )ϕ(x→)
表示将样本点
x⃗ x→
映射后的特征向量类似于线性可分支持向量机中的表示方法在特征空间中划分超平面所对应的模型可表示为f(x⃗ )w⃗ Txb(25)(25)f(x→)w→Txb其中
w⃗ w→
和
bb
是待求解的模型参数。类似式(10)有{minw⃗ ,b12||w⃗ ||2s.t.yi(w⃗ Tϕ(x⃗ )b)≥1,i1,2,…,n(26)(26){minw→,b12||w→||2s.t.yi(w→Tϕ(x→)b)≥1,i1,2,…,n其拉格朗日对偶问题是⎧⎩⎨⎪⎪⎪⎪maxα∑ni1αi−12∑ni1∑nj1αiαjyiyjϕ(xi→T)ϕ(xj→)s.t.αi≥0,i1,2,…,n∑ni1αiyi0(27)(27){maxα∑i1nαi−12∑i1n∑j1nαiαjyiyjϕ(xi→T)ϕ(xj→)s.t.αi≥0,i1,2,…,n∑i1nαiyi0求解(27)需要计算
ϕ(xi→T)ϕ(xj→)ϕ(xi→T)ϕ(xj→)
即样本映射到特征空间之后的内积由于特征空间可能维度很高甚至可能是无穷维因此直接计算
ϕ(xi→T)ϕ(xj→)ϕ(xi→T)ϕ(xj→)
通常是很困难的在上文中我们提到其实我们根本不关心单个样本的表现只关心特征空间中样本间两两的乘积因此我们没有必要把原始空间的样本一个个地映射到特征空间中只需要想法办求解出样本对应到特征空间中样本间两两的乘积即可。为了解决该问题可设想存在核函数κ(xi→,xj→)ϕ(xi→T)ϕ(xj→)(28)(28)κ(xi→,xj→)ϕ(xi→T)ϕ(xj→)也就是说
xi→xi→
与
xj→xj→
在特征空间的内积等于它们在原始空间中通过函数
κ(⋅,⋅)κ(⋅,⋅)
计算的结果这给求解带来很大的方便。于是式(27)可写为⎧⎩⎨⎪⎪maxα∑ni1αi−12∑ni1∑nj1αiαjyiyjκ(xi→,xj→)s.t.αi≥0,i1,2,…,n∑ni1αiyi0(29)(29){maxα∑i1nαi−12∑i1n∑j1nαiαjyiyjκ(xi→,xj→)s.t.αi≥0,i1,2,…,n∑i1nαiyi0同样的我们只关心在高维空间中样本之间两两点乘的结果而不关心样本是如何变换到高维空间中去的。求解后即可得到f(x⃗ )w⃗ Tϕ(x⃗ )b∑i1nαiyiϕ(x⃗ )Tϕ(x⃗ )b∑i1nαiyiκ(xi→,xj→)b(30)(30)f(x→)w→Tϕ(x→)b∑i1nαiyiϕ(x→)Tϕ(x→)b∑i1nαiyiκ(xi→,xj→)b剩余的问题同样是求解
αiαi
然后求解
w⃗ w→
和
bb
即可得到最佳超平面。支持向量回归
支持向量机不仅可以用来解决分类问题还可以用来解决回归问题称为支持向量回归Support Vector RegressionSVR。 对于样本(x⃗ ,y)(x→,y)通常根据模型的输出f(x⃗ )f(x→)与真实值即groundtruthyiyi之间的差别来计算损失当且仅当f(x⃗ )yif(x→)yi时损失才为零。SVR的基本思路是允许预测值f(x⃗ )f(x→)与yiyi之间最多有εε的偏差当|f(x⃗ )−yi|≤ε|f(x→)−yi|≤ε时认为预测正确不计算损失仅当|f(x⃗ )−yi|ε|f(x→)−yi|ε时才计算损失。SVR问题可描述为minw⃗ ,b(12||w⃗ ||2C∑i1nLε(f(x⃗ )−yi))(31)(31)minw→,b(12||w→||2C∑i1nLε(f(x→)−yi))其中
C≥0C≥0
为惩罚项
LεLε
为损失函数定义为Lε(z){0,|z|≤ε|z|−ξ,otherwise(32)(32)Lε(z){0,|z|≤ε|z|−ξ,otherwise进一步地引入松弛变量
ξiξiξ^iξ^i
则新的最优化问题为⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪minw⃗ ,b,ξ,ξ^i(12||w⃗ ||2C∑ni1(ξiξ^i))s.t.f(xi→)−yi≤εξi,i1,2,…,nyi−f(x⃗ )≤εξ^iξi≥0,ξ^i≥0(33)(33){minw→,b,ξ,ξ^i(12||w→||2C∑i1n(ξiξ^i))s.t.f(xi→)−yi≤εξi,i1,2,…,nyi−f(x→)≤εξ^iξi≥0,ξ^i≥0这就是SVR的原始问题。类似地引入拉格朗日乘子
μi≥0μi≥0μ^i≥0μ^i≥0αi≥0αi≥0α^i≥0α^i≥0
则对应的拉格朗日函数为L(w⃗ ,b,α⃗ ,α^⃗ ,ξ⃗ ,ξ^⃗ ,μ⃗ ,μ^⃗ )12||w⃗ ||2C∑i1n(ξξ^)−∑i1nμiξi−∑i1nμ^iξ^i∑i1nαi(f(xi→)−yi−ε−ξ)∑i1nα^i(yi−f(xi→)−ε−ξ^i)(34)(34)L(w→,b,α→,α^→,ξ→,ξ^→,μ→,μ^→)12||w→||2C∑i1n(ξξ^)−∑i1nμiξi−∑i1nμ^iξ^i∑i1nαi(f(xi→)−yi−ε−ξ)∑i1nα^i(yi−f(xi→)−ε−ξ^i)令
L(w⃗ ,b,α⃗ ,α^⃗ ,ξ⃗ ,ξ^⃗ ,μ⃗ ,μ^⃗ )L(w→,b,α→,α^→,ξ→,ξ^→,μ→,μ^→)
对
w⃗ ,b,ξ⃗ ,ξ^⃗ w→,b,ξ→,ξ^→
的偏导数为零可得⎧⎩⎨⎪⎪⎪⎪⎪⎪w⃗ ∑ni1()xi→∑ni1(α^i−αi)0CαiμiCα^iμ^i(35)(35){w→∑i1n()xi→∑i1n(α^i−αi)0CαiμiCα^iμ^i将式(35)代入式(34)即可得到SVR的对偶问题{maxα,α^∑ni1(yi(α^i−αi)−ε(α^iαi)−12∑ni1∑nj1(α^i−αi)(α^j−αj)xi→Txj→)s.t.∑ni1(α^i−αi)00≤αi,α^i≤C(36)(36){maxα,α^∑i1n(yi(α^i−αi)−ε(α^iαi)−12∑i1n∑j1n(α^i−αi)(α^j−αj)xi→Txj→)s.t.∑i1n(α^i−αi)00≤αi,α^i≤C其KKT条件为⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪αi(f(xi→)−yi−ε−ξi)0α^i(f(xi→)−yi−ε−ξ^i)0αiα^i0,ξiξ^i0(C−αi)ξi0,(C−α^i)ξ^i0(37)(37){αi(f(xi→)−yi−ε−ξi)0α^i(f(xi→)−yi−ε−ξ^i)0αiα^i0,ξiξ^i0(C−αi)ξi0,(C−α^i)ξ^i0SVR的解形如f(x⃗ )∑i1n(α^i−αi)xi→Tx⃗ b(38)(38)f(x→)∑i1n(α^i−αi)xi→Tx→b进一步地如果引入核函数则SVR可表示为f(x⃗ )∑i1n(α^i−αi)κ(xi→,x⃗ )b(39)(39)f(x→)∑i1n(α^i−αi)κ(xi→,x→)b其中
κ(xi→,x⃗ )ϕ(xi→)Tϕ(x⃗ )κ(xi→,x→)ϕ(xi→)Tϕ(x→)
为核函数。常用核函数
名称表达式参数线性核κ(xi→,xj→)xi→Txj→κ(xi→,xj→)xi→Txj→ 多项式核κ(xi→,xj→)(xi→Txj→)nκ(xi→,xj→)(xi→Txj→)nn≥1n≥1为多项式的次数高斯核(RBF)κ(xi→,xj→)exp(−∥xi→−xj→∥22σ2)κ(xi→,xj→)exp(−‖xi→−xj→‖22σ2)σ0σ0为高斯核的带宽拉普拉斯核κ(xi→,xj→)exp(−∥xi−xj∥σ)κ(xi→,xj→)exp(−‖xi−xj‖σ)σσ0Sigmoid核κ(xi→,xj→)tanh(βxi→Txj→θ)κ(xi→,xj→)tanh(βxi→Txj→θ)thah为双曲正切函数
5. SVM的优缺点
优点 SVM在中小量样本规模的时候容易得到数据和特征之间的非线性关系可以避免使用神经网络结构选择和局部极小值问题可解释性强可以解决高维问题。 缺点 SVM对缺失数据敏感对非线性问题没有通用的解决方案核函数的正确选择不容易计算复杂度高主流的算法可以达到O(n2)O(n2)的复杂度这对大规模的数据是吃不消的。
6. 参考文献
周志华. 机器学习 [D]. 清华大学出版社2016. 华校专、王正林. Python大战机器学习 [D]. 电子工业出版社2017. Peter Flach著、段菲译. 机器学习 [D]. 人民邮电出版社2016. Understanding Support Vector Machine algorithm from examples (along with code) KKT条件介绍