吴恩达机器学习笔记5-SVM

给定训练样本

D=(x⃗ 1,y1),x⃗ 2,y2),...,x⃗ n,yn),yi{+1,1} D = ( x → 1 , y 1 ) , x → 2 , y 2 ) , . . . , x → n , y n ) , y i ∈ { + 1 , − 1 }

超平面为 w⃗ Tx⃗ +b=0 w → T x → + b = 0
平面的法向量为 w⃗  w →
对于训练数据集D假设找到了最佳超平面 w⃗ Tx⃗ +b=0 w → ∗ T x → + b ∗ = 0 ,定义决策分类函数
f(x⃗ )=sign(w⃗ Tx⃗ +b) f ( x → ) = s i g n ( w → ∗ T x → + b ∗ )

该决策函数也称为 线性可分支持向量机

空间中超平面可记为(\vec w,b),空间中任意点到超平面(\vec w,b)的距离为

r=w⃗ x⃗ +b||w⃗ || r = w → x → + b | | w → | |

{w⃗ Tx⃗ i+b+1,yi=+1w⃗ Tx⃗ i+b1,yi=1 { w → T x → i + b ≥ + 1 , y i = + 1 w → T x → i + b ≤ − 1 , y i = − 1

也就是
yi(w⃗ Tx⃗ i+b±1) y i ( w → T x → i + b ≥ ± 1 )

记超平面
w⃗ Tx⃗ i+b=+1 w → T x → i + b = + 1
w⃗ Tx⃗ i+b=1 w → T x → i + b = − 1
之间的距离为 γ γ
γ=2||w⃗ || γ = 2 | | w → | |

要找到具有最大间隔的最佳超平面,即
{maxw⃗ ,b2||w⃗ ||s.t.  yi(w⃗ Tx⃗ i+b)+1,i=1,2,...n { m a x w → , b 2 | | w → | | s . t .     y i ( w → T x → i + b ) ≥ + 1 , i = 1 , 2 , . . . n

等价于
{minw⃗ ,b12||w⃗ ||2s.t.  yi(w⃗ Tx⃗ i+b)+1,i=1,2,...n { m i n w → , b 1 2 | | w → | | 2 s . t .     y i ( w → T x → i + b ) ≥ + 1 , i = 1 , 2 , . . . n

求解这一问题本质上是 凸二次规划问题,可以使用现成的QP优化包求解,还可以使用 拉格朗日对偶性变换到对偶变量的优化问题,即通过求解与原问题等价的对偶问题来求解。

使用拉格朗日对偶性求出 α⃗  α → 后,再求解出 w⃗  w → 和b即可得到SVM决策模型

f(x⃗ )=w⃗ T+b=i=1nαiyix⃗ Tix⃗ +b f ( x → ) = w → T + b = ∑ i = 1 n α i y i x → i T x → + b

核函数

事实上,大部分时候数据并不是线性可分的,这个时候满足这样条件的超平面就根本不存在

为了使其线性可分,把一些变量映射到高维空间,但是这样会出现维数爆炸的问题,因为如果原空间特征是n维的,映射到 n2 n 2 维空间里,就会使内积计算的复杂度从 O(n) O ( n ) 变为 O(n2) O ( n 2 )

核函数:任意两个样本点在扩维后的空间的内积,如果等于这两个样本点在原来空间经过一个函数后的输出,那么这个函数就叫核函数
也就是

f(x,y)=<ϕ(x),ϕ(y)>=ϕ(x)Tϕ(y) f ( x , y ) =< ϕ ( x ) , ϕ ( y ) >= ϕ ( x ) T · ϕ ( y )

这个f就是核函数。

有了核函数,我们就可以减少高维空间内积的计算复杂度

核函数有效性判定
核函数矩阵:给定m个特征向量 x1,x2,...,xn x 1 , x 2 , . . . , x n ,我们可以将任意两个 xi,xj x i , x j 代入,计算m*m的矩阵

Mij=K(xi,xj),i[1,m],j[1,m] M i j = K ( x i , x j ) , i ∈ [ 1 , m ] , j ∈ [ 1 , m ]

定理:如果K是有效的核函数,那么核函数矩阵是对称半正定的

如果K是有效的核函数,那么我们不需要去找映射φ,直接计算内积即可。

线性核函数

K(x1,x2)=(xT1x2)2 K ( x 1 , x 2 ) = ( x 1 T x 2 ) 2

高斯核函数

K(x1,x2)=e||x1x2||22δ2 K ( x 1 , x 2 ) = e − | | x 1 − x 2 | | 2 2 δ 2

逻辑回归 or 线性SVM?
特征多,数据量小:逻辑回归
特征少,数据量足够:线性SVM(创建更多变量,不带核函数)

SVM不存在局部最优,另外比神经网络一般要快

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值