机器学习 支持向量机

一.概述

参见:https://zhuanlan.zhihu.com/p/77750026

1.概念
(1)支持向量:

样本中距指定超平面最近的点称为"支持向量"(Support Vector)

在这里插入图片描述
(2)支持向量机:

"支持向量机"(Support Vector Machine;SVM)是常用的监督学习分类算法,最早由Vladimir N. Vapnik和Alexey Ya. Chervonenkis于1963年
提出.而目前的版本由Corinna Cortes和Vapnik于1993年提出.2012年深度学习出现以前,SVM被认为是机器学习中最成功,表现最好的算法.其基本
思想是找到1"超平面"(Hyper Plane)使2个类别的样本分别位于超平面2.为使该超平面更具健壮性,该超平面应使支持向量到该超平面的距离最大,
称为"最大间隔超平面"(Maximum Margin Hyperplane;MMH).基于该思想,SVM有时也被称为"大间距分类器"(Large Margin Classifier)

在这里插入图片描述
(3)线性可分与线性不可分:

D 0 , D 1 D_0,D_1 D0,D1 n n n维欧氏空间中的2个点集.若 ∃ w ∈ R n , b ∈ R ∃w∈R^n,b∈R wRn,bR,使对 ∀ x i ∈ D 0 ∀x_i∈D_0 xiD0 w   ⋅ x i + b > 0 w\,·x_i+b>0 wxi+b>0,而对 ∀ x j ∈ D 1 ∀x_j∈D_1 xjD1 w   ⋅ x j + b < 0 w\,·x_j+b<0 wxj+b<0,则称 D 0 , D 1 D_0,D_1 D0,D1线性可分(Linearly Separable);否则,称 D 0 , D 1 D_0,D_1 D0,D1线性不可分(Linearly Inseparable)

在这里插入图片描述
2.公式推导
(1)公式推导:

设超平面为 w T ⋅ x + b = 0 w^T·x+b=0 wTx+b=0其中向量 w = ( w 1 , w 2 . . . w n ) T w=(w_1,w_2...w_n)^T w=(w1,w2...wn)T表示权重(Weight)或超平面的方向,b表示偏好(Bias)或超平面距原点的距离.由于支持向量到超平面的距离为 d d d,故 { w T ⋅   x + b ∣ ∣ w ∣ ∣ ≥ d   ( y = 1 ) w T ⋅   x + b ∣ ∣ w ∣ ∣ ≤ − d   ( y = − 1 ) \begin{cases}\frac{w^T·\,x+b}{||w||}≥d\,(y=1)\\\frac{w^T·\,x+b}{||w||}≤-d\,(y=-1)\end{cases} {wwTx+bd(y=1)wwTx+bd(y=1)转化得到 { w T ⋅   x + b ∣ ∣ w ∣ ∣ ⋅   d ≥ 1   ( y = 1 ) w T ⋅   x + b ∣ ∣ w ∣ ∣ ⋅   d ≤ − 1   ( y = − 1 ) \begin{cases}\frac{w^T·\,x+b}{||w||·\,d}≥1\,(y=1)\\\frac{w^T·\,x+b}{||w||·\,d}≤-1\,(y=-1)\end{cases} {wdwTx+b1(y=1)wdwTx+b1(y=1) ∣ ∣ w ∣ ∣   ⋅ d = 1 ||w||\,·d=1 wd=1(这对目标函数的优化没有问题),得到 { w T ⋅   x + b ≥ 1   ( y = 1 ) w T ⋅   x + b ≤ − 1   ( y = − 1 ) \begin{cases}w^T·\,x+b≥1\,(y=1)\\w^T·\,x+b≤-1\,(y=-1)\end{cases} {wTx+b1(y=1)wTx+b1(y=1)将方程组合并为 y ( w T ⋅ x + b ) = ∣ w T ⋅ x + b ∣ ≥ 1 y(w^T·x+b)=|w^T·x+b|≥1 y(wTx+b)=wTx+b1
在这里插入图片描述
由于 d = ∣ w T ⋅ x + b ∣ ∣ ∣ w ∣ ∣ d=\frac{|w^T·x+b|}{||w||} d=wwTx+b,故 d = y ( w T ⋅ x + b ) ∣ ∣ w ∣ ∣ d=\frac{y(w^T·x+b)}{||w||} d=wy(wTx+b)于是目标为 max ⁡   2 y ( w T ⋅ x + b ) ∣ ∣ w ∣ ∣ \max\,{\frac{2y(w^T·x+b)}{||w||}} maxw2y(wTx+b)其中系数2是为了便于推导而添加的.将目标转化为 max ⁡   r = 2 ∣ ∣ w ∣ ∣ \max\,{r=\frac{2}{||w||}} maxr=w2其中 r r r称为间隔(Margin).再转化为    min ⁡ ∣ ∣ w ∣ ∣ 2 2 ( 1 ) s . t . y i ( w T ⋅ x i + b ) ≥ 1 \qquad\qquad\:\:\min{\frac{||w||^2}{2}}\qquad(1)\\s.t.\quad y_i(w^T·x_i+b)≥1 min2w2(1)s.t.yi(wTxi+b)1其中平方是为了便于计算而添加的.通过拉格朗日乘数法可将 ( 1 ) (1) (1)式转换为对偶问题(Dual Problem).具体来说,该问题的拉格朗日函数为 L ( ω , b , α ) = ∣ ∣ w ∣ ∣ 2 2 + ∑ i = 1 m α i [ 1 − y i ( ω T x i + b ) ] ( 2 ) L(ω,b,α)=\frac{||w||^2}{2}+\displaystyle\sum_{i=1}^mα_i[1-y_i(ω^Tx_i+b)]\qquad(2) L(ω,b,α)=2w2+i=1mαi[1yi(ωTxi+b)](2)其中 α = ( α 1 , α 2 . . . α m ) α=(α_1,α_2...α_m) α=(α1,α2...αm).当 ∂ L ( ω , b , α ) ∂ ω = ∂ L ( ω , b , α ) ∂ b = 0 \frac{\partial{L(ω,b,α)}}{\partial{ω}}=\frac{\partial{L(ω,b,α)}}{\partial{b}}=0 ωL(ω,b,α)=bL(ω,b,α)=0时,有 ω = ∑ i = 1 m α i y i x i ( 3 ) ∑ i = 1 m α i y i = 0 ( 4 ) ω=\displaystyle\sum_{i=1}^mα_iy_ix_i\qquad(3)\\\displaystyle\sum_{i=1}^mα_iy_i=0\qquad(4) ω=i=1mαiyixi(3)i=1mαiyi=0(4) ( 3 ) , ( 4 ) (3),(4) (3),(4)式带入 L L L中即可消去 ω , b ω,b ω,b.再考虑 ( 4 ) (4) (4)式的约束,即可得到 ( 1 ) (1) (1)式的对偶问题 max ⁡ α ∑ i = 1 m α i − 1 2 ∑ i = 1 m ∑ j = 1 m α i α j y i y j x i T x j s . t . { ∑ i = 1 m α i y i = 0 α i ≥ 0   ( i = 1 , 2... m ) \underset{α}{\max}\displaystyle\sum_{i=1}^mα_i-\frac{1}{2}\displaystyle\sum_{i=1}^m\displaystyle\sum_{j=1}^mα_iα_jy_iy_jx_i^Tx_j\\s.t.\begin{cases}\displaystyle\sum_{i=1}^mα_iy_i=0\\α_i≥0\,(i=1,2...m)\end{cases} αmaxi=1mαi21i=1mj=1mαiαjyiyjxiTxjs.t.i=1mαiyi=0αi0(i=1,2...m)解出 α α α后可进一步求出 ω , b ω,b ω,b,从而求得 M M H MMH MMH M M H = ∑ i = 1 m α i y i x i x T + b MMH=\displaystyle\sum_{i=1}^mα_iy_ix_ix^T+b MMH=i=1mαiyixixT+b其中 y i y_i yi为支持向量 x i x_i xi的类别标记, α i , b α_i,b αi,b为通过上式解得的参数

(2)与逻辑回归的关系:

参见:http://www.ai-start.com/ml2014/html/week7.html

3.特性:

①模型的算法复杂度由支持向量的个数决定,而不由数据的维度决定,因而不容易产生过拟合
②训练出的模型完全依赖于支持向量,即使去除数据集中所有非支持向量的点,得到的模型也不变
③支持向量较少时得到的模型较容易泛化

二.处理线性不可分问题
1.基本思想:

处理对线性不可分问题基本思想是先将低维的"输入空间"(Input Space)映射到高维的"特征空间"(Feature Space),以使问题线性可分,再在特征空
间中寻找MMH.设x为原样本点,则映射后的新样本点为f(x)=ω·φ(x)+b

在这里插入图片描述
在这里插入图片描述
2.核方法
(1)概念:

使用"核方法"(Kernel Trick)的目的是
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值