Support Vector Machine学习笔记
学习目标
掌握SVM的基本原理以及推导过程
1.SVM的基本原理:
SVM本质上是一种二分类模型,基本模型是定义在特征空间中间隔最大的分类器,它的学习/优化目的就是使得这个间隔最大化。
为什么要使间隔最大化呢? 这是为了更准确的分类,能够容忍数据集中的一些噪声,从而提高模型的泛化能力
1.1 SVM的分类
SVM可以分为三类: 线性可分(硬间隔)、线性不可分(软间隔)、非线性(使用核技巧)
线性可分(通俗解释): 两类实体可以被一条直线完全分开
线性可分(学术解释): D0D_0D0 和 D1D_1D1是n维欧式空间的点集,存在一个n维向量 w 和 实数 b,使得所有属于D0D0D0的点都满足w∗x+b>0w*x+b>0w∗x+b>0,所有属于D1D_1D1的点都满足 w∗x+b<0w*x+b<0w∗x+b<0,这就称其为线性可分
线性不可分(通俗解释): 两类实体斌不能完全被一条直线分开,总存在着第一类的点被分到第二类中的情况
线性不可分(学术解释):D0D_0D0和D1D_1D1是n维欧式空间的点集,对于n维向量www 和 实数bbb,总存在着属于D0D_0D0的点都不满足 w∗x+b>0w*x+b>0w∗x+b>0 或 总存在着属于D1D_1D1的点不满足 w∗x+b<0w*x+b<0w∗x+b<0,这就称其为线性不可分
非线性: 即要分开两类实体,其分类器不再是线性的(不再和线性可分/线性不可分一样是一条直线),而是非线性的
1.2 最大间隔超平面
将点集D0D_0D0 和 D1D_1D1 正确分开的超平面(hyperplane),记为w∗x+b=0w*x+b=0w∗x+b=0。最大间隔超平面应该包括以下几点:
- 两类点集分别在超平面的两侧
- 两类点集中到超平面的距离最近的样本点 到 超平面 的距离被最大化
1.3. 支持向量
指的是距离超平面最近的一些点,满足 w∗xi+b=1w*x_i+b =1w∗xi+b=1 或者 w∗xi+b=−1w*x_i+b =-1w∗xi+b=−1
1.4.补充:凸集、凸优化、QP
SVM 的算法就是 凸二次规划的最优化算法
凸集:集合中任何两点的连线仍在该集合中
凸优化:求解凸集中凸函数的最优解
QP(quadratic programming,二次规划)定义为:
cTxc^TxcTx+12xTQx\frac{1}{2}x^TQx21xTQx s.t.:Ax=bAx=bAx=b x>=0x>=0x>=0
二次规划即函数为二次,并且存在约束条件
当Q>0时,即为凸优化
SVM的推导过程:
2.1.目标函数
前面了解到 求解最优超平面 就是 寻找间隔最大的超平面。超平面用以下的公式来表示:
wTw^TwT+b=0+b=0+b=0
以二维空间为例,空间上两点(x,y)到直线 Ax+By+C=0Ax+ By +C =0Ax+By+C=0的距离为
d= ∣Ax+B+C∣(A2+B2)\frac{|Ax+B+C|}{\sqrt (A^2+B^2)}(A2+B2)∣Ax+B+C∣
扩展到n 维空间之后,距离可以表示为:
d= ∣wTx+b∣∣∣w∣∣\frac{|w^Tx+b|}{||w||}∣∣w∣∣∣wTx+b∣
这里为了方便,记为了二范数的形式,
∣∣w∣∣||w||∣∣w∣∣ = (w12+w22..+wn2)\sqrt (w1^2+w2^2..+wn^2)(w12+w22..+wn2)
设支持向量到最优超平面的距离为d,那么其他点到超平面的距离必然大于d,所以得到以下公式(y=1和y=-1分别代表正类和负类):
∣wTx+b∣∣∣w∣∣\frac{|w^Tx+b|}{||w||}∣∣w∣∣∣wTx+b∣>= d y = 1
∣wTx+b∣∣∣w∣∣\frac{|w^Tx+b|}{||w||}∣∣w∣∣∣wTx+b∣<= d y= -1
由于d>0,我们可以转化得到:
∣wTx+b∣∣∣w∣∣d\frac{|w^Tx+b|}{||w||d}∣∣w∣∣d∣wTx+b∣>= 1 y = 1
∣wTx+b∣∣∣w∣∣d\frac{|w^Tx+b|}{||w||d}∣∣w∣∣d∣wTx+b∣<= 1 y= -1
再次转化:
∣wTx+b∣{|w^Tx+b|}∣wTx+b∣>= 1 y = 1
∣wTx+b∣{|w^Tx+b|}∣wTx+b∣<= 1 y= -1
因此我们可以得到
(wTx+b){(w^Tx+b)}(wTx+b)*yyy >= 1 s.t. y=-1 and y=1
对于支持向量而言:
d= ∣wTx+b∣∣∣w∣∣\frac{|w^Tx+b|}{||w||}∣∣w∣∣∣wTx+b∣ = y∗(wTx+b)∣∣w∣∣\frac{y*(w^Tx+b)}{||w||}∣∣w∣∣y∗(wTx+b) = 1∣∣w∣∣\frac{1}{||w||}∣∣w∣∣1
我们的目标 就是 最大化 间隔d:
max 1∣∣w∣∣\frac{1}{||w||}∣∣w∣∣1
为了方便后面求导,添加常数(不会影响后续的极值求解):
max 2∣∣w∣∣\frac{2}{||w||}∣∣w∣∣2
可以转化为:
min ∣∣w∣∣2\frac{||w||}{2}2∣∣w∣∣
为了方便计算,可以转化为:
min ∣∣w∣∣22\frac{||w||^2}{2}2∣∣w∣∣2
那么我们现在的目标函数就是LLL:
L=L=L=min ∣∣w∣∣22\frac{||w||^2}{2}2∣∣w∣∣2 s.t.s.t.s.t. (wTx+b){(w^Tx+b)}(wTx+b)*yyy >= 1
现在目标函数成为了一个二次函数,并且被不等式约束,即转化成了二次规划问题(还是凸二次规划),考虑用拉格朗日法求解。
2.2 拉格朗日乘数
拉格朗日法求解SVM最优平面,这个最优平面仅仅是由支持向量来决定的,点集中的其他点对于这个最优平面的选择是没有贡献的(和最小二乘法求解SVM不同),证明如下:
对于拉格朗日乘数法,定义如下:
minf(x1,x2...xn)min f(x_1,x_2...x_n)minf(x1,x2...xn) s.t.g(k)=0s.t. g(k)=0s.t.g(k)=0 ,k=0,1,2,3..nk=0,1,2,3..nk=0,1,2,3..n
L(x,a)L(x,a)L(x,a) = minf(x1,x2...xn)min f(x_1,x_2...x_n)minf(x1,x2...xn)+∑i=1nai∗g(i)\sum_{i=1}^{n} a_i*g(i)∑i=1nai∗g(i)
根据在2.1节中推出的目标函数,增加常数k使其变为等式:
min ∣∣w∣∣22\frac{||w||^2}{2}2∣∣w∣∣2 s.t.s.t.s.t. 1−(wTx+b)1-{(w^Tx+b)}1−(wTx+b)*yyy + k2k^2k2=0
带入拉格朗日公式:
L(x,a)L(x,a)L(x,a) = minminmin ∣∣w∣∣22\frac{||w||^2}{2}2∣∣w∣∣2 +∑i=1nai∗(1−(wTxi+b)\sum_{i=1}^{n} a_i*(1-{(w^Tx_i+b)}∑i=1nai∗(1−(wTxi+b)*yiy_iyi + ki2k_i^2ki2) s.t. a>=0
求导可得:
对w求导:w{w}w- ∑i=1nai∗xi∗yi\sum_{i=1}^{n}a_i*x_i*y_i∑i=1nai∗xi∗yi =0
对a求导:1−(wTxi+b)1-{(w^Tx_i+b)}1−(wTxi+b)yiy_iyi + ki2k_i^2ki2 =0
对k求导:2kik_ikiaia_iai=0
s.t.ai>=0s.t. a_i>=0s.t.ai>=0
设 1−(wTxi+b)1-{(w^Tx_i+b)}1−(wTxi+b)*yiy_iyi =gig_igi,上式存在着两种情况:
1.aia_iai不等于0,kik_iki=0:此时gig_igi=0
2.aia_iai=0,kik_iki不等于0:此时gig_igi<0
因此,可以得出结论:当点为支持向量时,拉格朗日乘子不为0,而当点不是支持向量时,拉格朗日乘子等于0。所以说 d 是由支持向量来决定的,并非所有的点都对求解最佳超平面有贡献
2.3 SVM优化
L(w,b,a)L(w,b,a)L(w,b,a) = minminmin ∣∣w∣∣22\frac{||w||^2}{2}2∣∣w∣∣2 +∑i=1nai∗(1−(wTxi+b)\sum_{i=1}^{n} a_i*(1-{(w^Tx_i+b)}∑i=1nai∗(1−(wTxi+b)*yiy_iyi ) s.t. aia_iai>=0
对其进行强对偶转换(见2.4):
max(a)min(w,b)max(a)min(w,b)max(a)min(w,b) ∣∣w∣∣22\frac{||w||^2}{2}2∣∣w∣∣2 +∑i=1nai∗(1−(wTxi+b)\sum_{i=1}^{n} a_i*(1-{(w^Tx_i+b)}∑i=1nai∗(1−(wTxi+b)*yiy_iyi ) s.t. ai>=0a_i>=0ai>=0
求导:
对w求导:∣∣w∣∣{||w||}∣∣w∣∣- ∑i=1nai∗xi∗yi\sum_{i=1}^{n}a_i*x_i*y_i∑i=1nai∗xi∗yi =0
对b求导:∑i=1nai∗yi\sum_{i=1}^{n}a_i*y_i∑i=1nai∗yi=0
得到:
∣∣w∣∣{||w||}∣∣w∣∣= ∑i=1nai∗xi∗yi\sum_{i=1}^{n}a_i*x_i*y_i∑i=1nai∗xi∗yi
∑i=1nai∗yi\sum_{i=1}^{n}a_i*y_i∑i=1nai∗yi=0
带入原式可得:
12\frac{1}{2}21∑i=1nai∗xi∗yi\sum_{i=1}^{n}a_i*x_i*y_i∑i=1nai∗xi∗yi *∑j=1naj∗xj∗yj\sum_{j=1}^{n}a_j*x_j*y_j∑j=1naj∗xj∗yj +∑i=1nai\sum_{i=1}^{n} a_i∑i=1nai-∑i=1nai∗xi∗yi\sum_{i=1}^{n}a_i*x_i*y_i∑i=1nai∗xi∗yi *∑j=1naj∗xj∗yj\sum_{j=1}^{n}a_j*x_j*y_j∑j=1naj∗xj∗yj
=∑i=1nai\sum_{i=1}^{n} a_i∑i=1nai-12\frac{1}{2}21∑i=1nai∗xi∗yi\sum_{i=1}^{n}a_i*x_i*y_i∑i=1nai∗xi∗yi *∑j=1naj∗xj∗yj\sum_{j=1}^{n}a_j*x_j*y_j∑j=1naj∗xj∗yj
min(b,w)求完了,再求解max(a):
∑i=1nai\sum_{i=1}^{n} a_i∑i=1nai-12\frac{1}{2}21∑i=1nai∗xi∗yi\sum_{i=1}^{n}a_i*x_i*y_i∑i=1nai∗xi∗yi *∑j=1naj∗xj∗yj\sum_{j=1}^{n}a_j*x_j*y_j∑j=1naj∗xj∗yj
s.t.∑i=1nai∗yi\sum_{i=1}^{n}a_i*y_i∑i=1nai∗yi=0 , aia_iai>=0
利用SMO算法求解最优的a
SMO算法详见https://www.cnblogs.com/jerrylead/archive/2011/03/18/1988419.html
公式太多了,截两张图
根据a的值求解 w:
w{w}w= ∑i=1nai∗xi∗yi\sum_{i=1}^{n}a_i*x_i*y_i∑i=1nai∗xi∗yi
带入支持向量,b=ysy_sys-w*xsx_sxs
或者为了求得更准确的b,可以用支持向量的均值来表示:
b=1∣S∣\frac{1}{|S|}∣S∣1∑in\sum_i^{n}∑inysy_sys-wxsx_sxs
求出了w 和 b就可以得到 w*x+b=0 这个超平面,利用sign()函数的特性构造分类器:
f(x)=f(w∗x+b)f(x)=f(w*x+b)f(x)=f(w∗x+b)
当w∗x+b>0w*x+b>0w∗x+b>0 f=1f=1f=1
当w∗x+b=0w*x+b=0w∗x+b=0 f=0f=0f=0
当w∗x+b<0w*x+b<0w∗x+b<0 f=−1f=-1f=−1
2.4 对偶转化
存在着以下的公式:
maxminf(x)maxminf(x)maxminf(x)<=minmaxf(x)minmaxf(x)minmaxf(x)
对偶转化是指,在一定条件下
minmaxf(x)minmaxf(x)minmaxf(x)可以近似转化为maxminf(x)maxminf(x)maxminf(x)
进行了对偶转化之后,可以更为方便的求解。如果先求a的偏导,没有办法得到有用的条件(相当于得到∑i=1n(1−(wTxi+b)\sum_{i=1}^{n} (1-{(w^Tx_i+b)}∑i=1n(1−(wTxi+b)*yiy_iyi )=0,aia_iai>=0)
2.5 软间隔
2.2-2.3求解的是线性可分的情况,现在来求解线性不可分,现在条件不再像之前一样苛刻,允许有的点不满足
(wTx+b){(w^Tx+b)}(wTx+b)*yyy >= 1
即存在点使得 (wTx+b){(w^Tx+b)}(wTx+b)*yyy <= 1 , 位于间隔内部
因此引入松弛变量δ\deltaδ,(δ\deltaδ.>=0),使得(wTx+b){(w^Tx+b)}(wTx+b)*yyy+δ\deltaδ >= 1
优化函数变成了
minminmin ∣∣w∣∣22\frac{||w||^2}{2}2∣∣w∣∣2 +C∑inδi\sum_i^{n}\delta_i∑inδi
s.t. (wTx+b){(w^Tx+b)}(wTx+b)*yyy+δ\deltaδ >= 1 ,δ\deltaδ.>=0
这里的 C可以理解为错误样本的惩罚程度,若 C 为无穷大,δ\deltaδ 就无穷小,线性 SVM 就又变成了线性可分 SVM
构造拉格朗日函数:
L(w,a,b,u,δ\deltaδ)=∣∣w∣∣22\frac{||w||^2}{2}2∣∣w∣∣2 +C∑inδi\sum_i^{n}\delta_i∑inδi+∑inai∗(1−(wiTxi+b)\sum_i^{n}a_i*(1-(w_i^Tx_i+b)∑inai∗(1−(wiTxi+b)*yiy_iyi-δi\delta_iδi)-∑inui\sum_i^{n}u_i∑inuiδi\delta_iδi
s.t. aia_iai>=0 uiu_iui>=0
求导(求minL(w,b,δ\deltaδ):
对w进行求导:w=∑i=1nai∗xi∗yi\sum_{i=1}^{n}a_i*x_i*y_i∑i=1nai∗xi∗yi
对b进行求导:∑i=1nai∗yi\sum_{i=1}^{n}a_i*y_i∑i=1nai∗yi=0
对δ\deltaδ求导:C=aia_iai+uiu_iui
带入原式:
=∑i=1nai\sum_{i=1}^{n} a_i∑i=1nai-12\frac{1}{2}21∑i=1nai∗xi∗yi\sum_{i=1}^{n}a_i*x_i*y_i∑i=1nai∗xi∗yi *∑j=1naj∗xj∗yj\sum_{j=1}^{n}a_j*x_j*y_j∑j=1naj∗xj∗yj
s.t.∑i=1nai∗yi\sum_{i=1}^{n}a_i*y_i∑i=1nai∗yi=0,aia_iai>=0 uiu_iui>=0
其实和线性可分的求解结果是相同的
2.6(非线性SVM)核函数
对于一些情况,存在着非线性的超平面(图源知乎)
这时候应该将其映射到更高维的空间上去
这时候的超平面可以表示成 wT∗ϕ(x)+bw^T*\phi(x)+bwT∗ϕ(x)+b,ϕ(x)\phi(x)ϕ(x)为x映射到高维空间后的结果
此时 ,原式可以表示为 :
=∑i=1nai\sum_{i=1}^{n} a_i∑i=1nai-12\frac{1}{2}21∑i=1nai∗ϕ(xi)∗yi\sum_{i=1}^{n}a_i*\phi(x_i)*y_i∑i=1nai∗ϕ(xi)∗yi *∑j=1naj∗ϕ(xj)∗yj\sum_{j=1}^{n}a_j*\phi(x_j)*y_j∑j=1naj∗ϕ(xj)∗yj
因为映射到高维空间后再进行相乘,计算量很大,这里引入了核函数来减少计算量
核函数的作用是:xix_ixi与xjx_jxj在原始空间内,通过核函数计算的结果=其在高维空间内的乘积,这样求乘积的时候就不必在高维空间内计算了,极大地提高了计算效率
常见的核函数有:线性核函数、多项式核函数、高斯核函数
线性核函数:
k(xi,yi)k(x_i,y_i)k(xi,yi)=xiTxjx_i^Tx_jxiTxj
多项式核函数:
k(xi,yi)k(x_i,y_i)k(xi,yi)=(xiTxj+1)d(x_i^Tx_j+1)^d(xiTxj+1)d
高斯核函数(需要进行调参)
k(xi,yi)k(x_i,y_i)k(xi,yi)=exp(−(xi−xj)2202)-\frac{(x_i-x_j)^2}{20^2})−202(xi−xj)2)
SVM的一些优缺点:
优点:
1.计算的复杂性仅取决于支持向量的大小,而不是空间的维度,避免了维度灾难
缺点:
1.存储核矩阵需要额外的空间,空间复杂度为 O(N^2)
2.运行时间很长,复杂度与支持向量成正比
3.基于最小二乘法的SVM
上述的拉格朗日求解法本质上是一个二次规划(quadratic programming ,QP)问题,其最大间隔超平面仅仅和支持向量有关,其他的点对于最优平面的选择没有贡献。因此J.A.K. SUYKENS等人提出了基于最小二乘法思想的SVM求解方法,采用求线性解的方法,提高了求解效率,并且使得所有的点对最优平面都是有贡献的
目标函数为:
L(w,b,a)L(w,b,a)L(w,b,a) = minminmin ∣∣w∣∣22\frac{||w||^2}{2}2∣∣w∣∣2 +12γ∑inei2\frac{1}{2}\gamma\sum_i^{n}e_i^221γ∑inei2
s.t. yi(wiTϕ(xi)+b)=1−eiy_i(w_i^T\phi(x_i)+b)=1-e_iyi(wiTϕ(xi)+b)=1−ei
因此它的 d 为
d=∣wTxi+b∣∣∣w∣∣\frac{|w^Tx_i+b|}{||w||}∣∣w∣∣∣wTxi+b∣=(1−ei)∣∣w∣∣\frac{(1-e_i)}{||w||}∣∣w∣∣(1−ei)
转化为:
L(w,b,aaa,eee)=minminmin ∣∣w∣∣22\frac{||w||^2}{2}2∣∣w∣∣2 +12γ∑inei2\frac{1}{2}\gamma\sum_i^{n}e_i^221γ∑inei2+∑inai∗(1−ei−yi(wiTϕ(xi)+b)\sum_i^{n}a_i*(1-e_i-y_i(w_i^T\phi(x_i)+b)∑inai∗(1−ei−yi(wiTϕ(xi)+b)
求导:
对w求导:
w=∑inaiyiϕ(xi)\sum_i^na_iy_i\phi(x_i)∑inaiyiϕ(xi)
对b求导:
∑inaiyi\sum_i^{n}a_iy_i∑inaiyi=0
对e求导:
γ∑inei=\gamma\sum_i^{n}e_i=γ∑inei=∑inai\sum_i^{n}a_i∑inai
即:γ\gammaγeie_iei=aia_iai
对bbb求导:
∑inaiyi=0\sum_i^{n}a_iy_i=0∑inaiyi=0
带入原式可得(按照拉格朗日求法):
L(w,b,aaa,eee)=minminmin ∣∣w∣∣22\frac{||w||^2}{2}2∣∣w∣∣2 +12γ∑inei2\frac{1}{2}\gamma\sum_i^{n}e_i^221γ∑inei2+∑inai∗(1−ei−yi(wiTϕ(xi)+b)\sum_i^{n}a_i*(1-e_i-y_i(w_i^T\phi(x_i)+b)∑inai∗(1−ei−yi(wiTϕ(xi)+b)
L(w,b,aaa,eee)=12∑inaiyiϕ(xi)∗∑jnajyjϕ(xj)\frac{1}{2}\sum_i^{n}a_iy_i\phi(x_i)*\sum_j^{n}a_jy_j\phi(x_j)21∑inaiyiϕ(xi)∗∑jnajyjϕ(xj)+12γ∑inei2\frac{1}{2}\gamma\sum_i^{n}e_i^221γ∑inei2+∑inγei(1−ei−yi(wiTϕ(xi)+b))\sum_i^{n}\gamma e_i(1-e_i-y_i(w_i^T\phi(x_i)+b))∑inγei(1−ei−yi(wiTϕ(xi)+b))
=12∑inaiyiϕ(xi)∗∑jnajyjϕ(xj)\frac{1}{2}\sum_i^{n}a_iy_i\phi(x_i)*\sum_j^{n}a_jy_j\phi(x_j)21∑inaiyiϕ(xi)∗∑jnajyjϕ(xj)+12γ∑inei2\frac{1}{2}\gamma\sum_i^{n}e_i^221γ∑inei2+∑inγei\sum_i^{n}\gamma e_i∑inγei-∑inγei2\sum_i^{n}\gamma e_i^2∑inγei2-∑inaiyi∑jnajyjϕ(xj)ϕ(xi)\sum_i^{n}a_iy_i\sum_j^{n}a_jy_j\phi (x_j)\phi(x_i)∑inaiyi∑jnajyjϕ(xj)ϕ(xi)
=∑inai\sum_i^{n}a_i∑inai-12∑inaiyiϕ(xi)∗∑jnajyjϕ(xj)\frac{1}{2}\sum_i^{n}a_iy_i\phi(x_i)*\sum_j^{n}a_jy_j\phi(x_j)21∑inaiyiϕ(xi)∗∑jnajyjϕ(xj)-12∑inγei2\frac{1}{2}\sum_i^{n}\gamma e_i^221∑inγei2
仍然是一个二次问题
按照论文思路,J.A.K. SUYKENS等将其写为(Latex的手麻了,这里截个图…):
这就将问题转化成了求解线性问题
有、类似于机器学习中求梯度的问题…,
γ\gammaγeie_iei=aia_iai,这也可以看出support value a 并非只有支持向量才有。
最后可以得到LSSVM的表达式为:
y(x)y(x)y(x)=signsignsign[∑inaiyiK(x,xi)+b]\sum_i^{n} a_iy_iK(x,x_i)+b]∑inaiyiK(x,xi)+b]
文中通过实验证明了最小二乘SVM have excellent
generalization performance and low computational cost
参考文献:
- https://zhuanlan.zhihu.com/p/77750026
- 《机器学习》周志华
- J.A.K. Suykens,J. Vandewalle. Least Squares Support Vector Machine Classifiers[J]. Neural Processing Letters,1999,9(3).
- https://zhuanlan.zhihu.com/p/26514613
Support Vector Machine学习笔记相关推荐
- SVM(Support Vector Machine)读书笔记三(Soft-margin SVM)
上两篇讲到了hard-margin的SVM以及kernel的原理,利用高斯kernel可以将低维空间转换到无穷维,将所有样本分开.但是如果数据中存在一定的噪声数据,SVM也会将噪声数据拟合,存在过拟合 ...
- 台湾大学林轩田机器学习技法课程学习笔记4 -- Soft-Margin Support Vector Machine
红色石头的个人网站:redstonewill.com 上节课我们主要介绍了Kernel SVM.先将特征转换和计算内积这两个步骤合并起来,简化计算.提高计算速度,再用Dual SVM的求解方法来解决. ...
- 台湾大学林轩田机器学习技法课程学习笔记1 -- Linear Support Vector Machine
红色石头的个人网站:redstonewill.com 关于台湾大学林轩田老师的<机器学习基石>课程,我们已经总结了16节课的笔记.这里附上基石第一节课的博客地址: 台湾大学林轩田机器学习基 ...
- 台湾大学林轩田机器学习技法课程学习笔记3 -- Kernel Support Vector Machine
红色石头的个人网站:redstonewill.com 上节课我们主要介绍了SVM的对偶形式,即dual SVM.Dual SVM也是一个二次规划问题,可以用QP来进行求解.之所以要推导SVM的对偶形式 ...
- 台湾大学林轩田机器学习技法课程学习笔记2 -- Dual Support Vector Machine
红色石头的个人网站:redstonewill.com 上节课我们主要介绍了线性支持向量机(Linear Support Vector Machine).Linear SVM的目标是找出最"胖 ...
- 李宏毅svm_【李宏毅机器学习笔记】 18、支持向量机(Support Vector Machine,SVM)...
[李宏毅机器学习笔记]1.回归问题(Regression) [李宏毅机器学习笔记]2.error产生自哪里? [李宏毅机器学习笔记]3.gradient descent [李宏毅机器学习笔记]4.Cl ...
- 支持向量机SVM(Support Vector Machine)是一个有监督的学习模型
前言 动笔写这个支持向量机(support vector machine)是费了不少劲和困难的,原因很简单,一者这个东西本身就并不好懂,要深入学习和研究下去需花费不少时间和精力,二者这个东西也不好讲清 ...
- 机器学习-62-Structured Learning-03-Structured Support Vector Machine(结构化学习-结构化支持向量机)
文章目录 Structured Support Vector Machine Unified Framework(统一框架:两步走,三问题) two steps(两步) three problems( ...
- 机器学习实战(五)支持向量机SVM(Support Vector Machine)
目录 0. 前言 1. 寻找最大间隔 2. 拉格朗日乘子法和KKT条件 3. 松弛变量 4. 带松弛变量的拉格朗日乘子法和KKT条件 5. 序列最小优化SMO(Sequential Minimal O ...
最新文章
- [PAPER-RECORD]
- 《计算机科学概论》—第3章3.3节文本表示法
- 【VB.NET】VB.NET基本语法常见问题的解答
- 应用程序框架实战十八:DDD分层架构之聚合
- jsp校园二手交易平台的设计答辩PPT模板
- hibernate Day1 案例代码
- VSS 2005配置,很详细
- google服务框架 闪退_华为的谷歌服务打不开怎么办?
- 发票自动处理识别和分类
- Rockchip | Rockchip固件升级工具
- 学校生均计算机台数统计表,学校计算机数量名称、型号、数量、发布情况统计表...
- C#中取得日期的英文缩写
- 关于Android 4.4(华为)调用系统相机问题
- kubernetes / K8s 初始化失败问题
- 感知复合型人才的重要性!
- android studio 登陆ui界面设计
- CrownCAD三维CAD绘制四连杆机构的具体步骤
- deny of sb sth_deny的短语
- 在ArcGIS Pro2.2中玩转聚焦地图
- 裤子千万条,棉裤第一条!南方的小伙伴你穿棉裤吗?