统计学习方法学习笔记-07-支持向量机02

包含对三种支持向量机的介绍,包括线性可分支持向量机,线性支持向量机和非线性支持向量机,包含核函数和一种快速学习算法-序列最小最优化算法SMO。

线性支持向量机与软间隔最大化

假设训练集T={(x1,y1),(x2,y2),,(xN,yN)},xiX=Rn,yiY={+1,1},i=1,2,,N,这个训练数据集不是线性可分的,有一些特异点,将这些特异点去除之后,剩下的集合是线性可分的,所以我们对每一个样本点(xi,yi)引入一个松弛变量ξi0,之后约束条件变为:

yi(ωxi+b)1ξi

同时对于每一个松弛变量需要支付一个代价,所以目标函数变为:

12||ω||2+Ci=1Nξi

C>0称为惩罚参数,其值越大对误分类的惩罚越大
线性支持向量机的学习问题的原始问题如下:

minω,b,ξ 12||ω||2+Ci=1Nξis.t. yi(ωxi+b)1ξi,i=1,2,,Nξi0,i=1,2,,N

引入拉格朗日乘子,原始最优化问题的拉格朗日函数为:

L(ω,b,ξ,α,μ)12||ω||2+Ci=1Nξii=1Nαi(yi(ωxi+b)1+ξi)i=1Nμiξi

其中αi0,μi0
首先求L(ω,b,ξ,α,μ)ω,b,ξ的极小:

ωL(ω,b,ξ,α,μ)=ωi=1Nαiyixi=0bL(ω,b,ξ,α,μ)=i=1Nαiyi=0ξiL(ω,b,ξ,α,μ)=Cαiμi=0

可以得到:

ω=i=1Nαiyixii=1Nαiyi=0Cαiμi=0

将上式带到拉格朗日函数当中可以得到:

minω,b,ξL(ω,b,ξ,α,μ)=12i=1Nj=1Nαiαjyiyj(xixj)+i=1Nαi

再对minω,b,ξL(ω,b,ξ,α,μ)α的最大即得对偶问题:

maxα 12i=1Nj=1Nαiαjyiyj(xixj)+i=1Nαis.t. i=1Nαiyi=0Cαiμi=0αi0μi0,i=1,2,,N

利用等式约束消去μi,只剩下变量αi,于是上式变为:

maxα 12i=1Nj=1Nαiαjyiyj(xixj)+i=1Nαis.t. i=1Nαiyi=00αiC

将上式的求极大变为求极小:

minα 12i=1Nj=1Nαiαjyiyj(xixj)i=1Nαis.t. i=1Nαiyi=00αiC

通过求解对偶问题而得到原始问题的解,设α=(α1,α2,,αN)T是对偶问题的解,存在下标j,使得0αjC,可以由α求得原始问题的解ω,b

ω=i=1Nαiyixib=yji=1Nαiyi(xixj)

其证明过程和线性可分支持向量机的类似

线性支持向量机学习算法:

输入:训练数据集T={(x1,y1),(x2,y2),,(xN,yN)},其中xiX=Rn,yiY={+1,1},i=1,2,,N
输出:分离超平面和分类决策函数

  • 选择惩罚参数C>0,构造并求解约束最优化问题求得最优解α=(α1,α2,,αN)T

minα 12i=1Nj=1Nαiαjyiyj(xixj)i=1Nαis.t. i=1Nαiyi=00αiC,i=1,2,,N

  • 计算

ω=i=1Nαiyixi

选择α的一个分量0<αj<0,计算:

b=yji=1Nαiyi(xixj)

  • 求得分离超平面和决策函数:

i=1Nαiyi(xxi)+b=0f(x)=sign(i=1Nαiyi(xxi)+b)

训练数据中对应αi>0的样本点(xi,yi)xi称为支持向量:

  • αi<C,有ξi=0支持向量落在间隔边界上
  • αi=C,0<ξi<1支持向量分类正确,落在间隔边界与分离超平面之间
  • αi=C,ξi=1支持向量落在分离超平面上
  • αi=C,ξi>1支持向量落在分离超平面误分一侧
  • 实例xi到间隔边界的距离为ξi||ω||
  • 两间隔边界之间的距离为2||ω||
posted @   eryo  阅读(36)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
点击右上角即可分享
微信分享提示