支持向量机的python实现

完整资料进入【数字空间】查看——搜索"writebug"

  1. 理论知识
    1.1 SVM 模型的基本理论
    在之前的课程中讨论的分类器都是线性的,而在实际问题中,很多数据并不是线性可分的,也就是说找不到这样的超平面,能完全区分不同的数据。所以,需要在分类器中引入非线性成分,使得模型更好地贴合数据,让分类更加准确。为了使模型非线性化,我们可以通过基函数将原始特征x变换到另一个空间。问题变为了原始最大裕度优化问题: min ⁡ w , b , ξ 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ n = 1 N ξ n   s . t . : y ( n ) ⋅ ( w T ϕ ( x ( n ) ) + b ) ≥ 1 − ξ n \min_{\bold w,b,\bold \xi}\frac12||\bold w||^2+C\sum^N_{n=1}\xi_n\ s.t.:y^{(n)}\cdot(\bold w^T\bold \phi(\bold x^{(n)})+b)\geq1-\xi_n w,b,ξmin21∣∣w2+Cn=1Nξn s.t.:y(n)(wTϕ(x(n))+b)1ξn 得到的分类器为: y ^ ( x ) = s i g n ( w T ϕ ( x ( n ) ) + b ) \hat y(\bold x)=sign(\bold w^{T}\phi(\bold x^{(n)})+b^) y^(x)=sign(wTϕ(x(n))+b) 从直观上看,数据在高维空间中更容易分离。为了获得更好的性能,我们希望映射后的x到更高维的空间。然而太高的话代价也很大。使用对偶形式方法解决时会要计算映射值的转置与自身的内积,导致高开销。这个问题可以通过使用内核技巧来解决。

核函数是一个二元函数,可以表示为某些函数的内积: k ( x , x ′ ) = ϕ ( x ) T ϕ ( x ′ ) k(\bold x,\bold x')=\phi(\bold x)^T\phi(\bold x') k(x,x)=ϕ(x)Tϕ(x) Mercer定理:如果函数 k ( x , x ′ ) k(\bold x,\bold x') k(x,x)是对称正定的,即: ∫ ∫ g ( x ) k ( x , y ) g ( y ) d x d y ≥ 0 ∀ g ( ⋅ ) ∈ L 2 \int\int g(\bold x)k(\bold x,\bold y)g(\bold y)d\bold xd\bold y\geq0\forall g(\cdot)\in L^2 ∫∫g(x)k(x,y)g(y)dxdy0∀g()L2 就存在函数 ϕ ( ⋅ ) \phi(\cdot) ϕ()使得 k ( x , x ′ ) = ϕ ( x ) T ϕ ( x ′ ) k(\bold x,\bold x')=\phi(\bold x)^T\phi(\bold x') k(x,x)=ϕ(x)Tϕ(x)。一个函数如果满足正定条件就必然是核函数。

最常用的核函数之一是高斯核,有着无限维: k ( x , x ′ ) = exp ⁡ − 1 2 σ 2 ∣ ∣ x − x ′ ∣ ∣ 2 k(\bold x,\bold x')=\exp{-\frac1{2\sigma^2}||\bold x-\bold x'||^2} k(x,x)=exp2σ21∣∣xx2 利用核函数,可以将对偶最大边距分类器重写为: max ⁡ a g ( a ) s . t . : a n ≥ 0 , a n ≤ C , ∑ n = 1 N a n y ( n ) = 0 \max_{\bold a}g(\bold a)s.t.:a_n\geq0,a_n\leq C,\sum^N_{n=1}a_ny^{(n)}=0 amaxg(a)s.t.:an0,anC,n=1Nany(n)=0 其中, g ( a ) = ∑ n = 1 N a n − 1 2 ∑ n = 1 N ∑ m = 1 N a n a m y ( n ) y ( m ) k ( x ( n ) , x ( m ) ) g(\bold a)=\sum^N_{n=1}a_n-\frac12\sum^N_{n=1}\sum^N_{m=1}a_na_my^{(n)}y^{(m)}k(\bold x^{(n)},\bold x^{(m)}) g(a)=n=1Nan21n=1Nm=1Nanamy(n)y(m)k(x(n),x(m)) 从而得到诱导分类器: KaTeX parse error: Double superscript at position 40: …um^N_{n=1}a_n^y^̲{(n)})k(\bold x… 核技巧:将函数k代入。如果 ϕ \phi ϕ不改变 x \bold x x则为线性最大边际分类器,否则为基于基函数的有限维非线性最大边际分类器,如果为高斯核,则为无限维非线性最大边际分类器。在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值