支持向量机学习笔记

支持向量机

Rn空间中的点xRn,超平面f(x)=wTx+b=0,wRn,bR。 整个n维空间被分成两部分。w就是这个超平面的法向量。w指向的那个方向就是f(x)为正的那一部分。

点到超平面距离:|ax0+by0+c|a2+b2。为了想让距离体现出点在超平面的哪一侧,通常不加这个绝对值符号:ax0+by0+ca2+b2

对于高维超平面,给出点x0Rnw为法向量,从x0引垂线到x1,则x0x1=lw|w|,故|l|=|x0x1|,且x1在超平面上。x1=x0lw|w|,f(x1)=wTx1+b=(w,x1)+b=(w,x0)l|w|+b=0,最终得到:l=(w,x0)+b|w|=wTx0+b|w|=f(x0)|w|

现在平面上有若干个两种颜色的点,尝试将其二分类。使用感知机模型很容易找到一个超平面将其区分,但这样的效果好吗?支持向量机希望找到的超平面是尽可能好的,希望不同分类的点中到超平面的最短垂直距离尽可能大。直观来看,如果两个分类的点到超平面的最短距离一样大,那么这个超平面既不能往上移动,也不能往下移动。

形式化来说,对于(x1,y1)...(xn,yn),xiRk,yi{0,1},给出wRk,bR,分类平面f(x)=wTx+b=0。带符号距离:wTxi+b|w|。我们希望的是yi(wTxi+b|w|)>0,表示确实分开了,希望maxw,b(miniyi(wTxi+b)|w|)

优化问题:maxwRk,bR(miniyi(wTxi+b)w),约束条件为yi(wTxi+b)>0

极小化风险?极大化收益?把yi(wTxi+b)看作收益,|w|看作风险,则优化问题1:maxw,b(mini(yiwTxi+b)),约束条件为||w||=1(风险固定)。优化问题2:min||w||,约束条件为mini(yi(wTxi+b))1,这等价于min||w||2,约束条件为i[1,n],yi(wTxi+b))1

求解这个问题可以引入二次规划,通常形式为:

截屏2022-04-10 11.06.54

有现成的包可以对其进行求解。

如果不使用二次规划的话,那么就可以从对偶问题的角度出发,受拉格朗日乘子法的启发:

maxai0(||w||2+Σi=1nai(1yi(wTxi+b)))

如果约束条件都满足,即1yi(wTxi+b)0,因为ai0,因此求和号里是恒小于等于0的。因此只有ai等于0的时候才能得到极大,此时要极大化的就是||w||2。 而如果1yi(wTxi+b)>0,那么极大化的结果是正无穷。

求极小的时候,minb,w(maxai0(||w||2+Σi=1nai(1yi(wTxi+b))))等于求min ||w||2且满足约束条件1yi(wTxi+b)0

现在就把一个二次规划问题转换为带有拉格朗日乘子法性质的问题。ai必须是正的!

现在把min和max交换一下位置,问题等价于maxai0(minb,w(||w||2+Σi=1nai(1yi(wTxi+b))))。为什么对于这个问题可以交换呢?因为里面的这部分是关于w的凸函数,通常这种情况下是可以交换的。此时ai固定,可以对w,b求梯度:2w=Σi=1naiyixi,Σi=1naiyi=0。可以得到w=12Σi=1naiyixi,将其回代,得到:maxai0(14Σi,j=1naiajyiyjxiTxj+Σi=1nai),且Σi=1naiyi=0。眼前的这个优化问题中,yi都是给定的,xi也都是给定的。因此这个问题就变成了针对于ai的一个问题。其中ai都是一次的和二次的,针对ai的约束也都是一次的和二次的。可以发现这是一个对于ai的二次规划问题。把对于w的二次规划问题转换为对于ai的二次规划问题后究竟得到了什么信息呢?主要体现:对于ai的二次规划问题中,xiTxj=(xi,xj),如果这个内积是另外一种形式,这丝毫不影响二次规划的结果。分析如下:对于Φ:RkRm(k<m),经过非线性变换:xΦ(x),这个变换过程可能是非线性的,当然也可能就是简单的升维。(x1,y1)...(xn,yn)(Φ(x1),y1)...(Φ(xn),yn)。对于低维空间线性不可分的点,升维变换后可能就线性可分了。问题变为:maxai0(14Σi,j=1naiajyiyj(Φ(xi),Φ(xj))+Σi=1nai),Σi=1naiyi=0,ai0。如果解出了所有的a,那么应该怎么区分原来的点呢?此时w=Σi=1naiyiΦ(xi),超平面Rm:(w,x)+b=0等价于(Σi=1naiyiΦ(xi),Φ(X))+b=0。其放到低维空间是超曲面。

更一般的内积:K(xi,xj)=(Φ(xi),Φ(xj)),也可以是这样的:K(xi,xj)=(a+b(xi,xj))m。条件是,不论什么样的内积,其构成的二维矩阵必须是正定的。满足这样的条件的函数K:核函数。其可以对应到Φ:RkRm。这里的m可以小于等于正无穷。

二次规划:maxai0(14Σi,j=1naiajyiyjK(xi,xj)+Σi=1nai),且要满足约束条件。f(x)=Σi=1naiyiK(xi,X)+b,分类问题就变成f(x)>0 or <0。最后可能绝大部分ai=0,不等于0的ai对应的点就构成了支持向量。

posted @   脂环  阅读(59)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
历史上的今天:
2020-04-11 NOIP 2017 提高组 DAY1 T1小凯的疑惑(二元一次不定方程)
2020-04-11 Educational Codeforces Round 85 B. Middle Class(排序/贪心/水题)
2020-04-11 Educational Codeforces Round 85 A. Level Statistics(水题)
点击右上角即可分享
微信分享提示
主题色彩