李航《统计学习方法》SMO算法推导中的思考

本文详细解析了一个特定的优化问题,通过引入辅助变量简化了原始问题,并利用偏导数找到了问题的最优解。此外,还讨论了解决方案的具体计算步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. p.128

这里写图片描述
图中,从上式到下式的推导不是很明了,困惑在于上式中右边含有α1,α2α1,α2这样岂不是和左边的α2α2相消?若能相消,上述求偏导的过程中岂不是忽略了v1,v2v1,v2α1,α2α1,α2的函数?答案并非如此,左边的αα与右边的α2α2相当不同。

2. 定理7.6的证明

即求最优化问题:

minα1,α2W(α1,α2)=12K11α21+12K22α22+y1y2K21α1α2(α1+α2)+y1α1i=3NyiαiKi1+y2α2i=3NyiαiKi2s.t.α1y1+α2y2=i=3Nyiαi=ς(1)0αiC,i=1,2(2)minα1,α2W(α1,α2)=12K11α12+12K22α22+y1y2K21α1α2−(α1+α2)+y1α1∑i=3NyiαiKi1+y2α2∑i=3NyiαiKi2s.t.α1y1+α2y2=−∑i=3Nyiαi=ς(1)0≤αi≤C,i=1,2(2)

沿着约束方向未经剪辑的解为:
αnew,unc2=αold2+y2(E1E2)ηα2new,unc=α2old+y2(E1−E2)η

其中,
η=K11+K222K21=Φ(x1)Φ(x2)2Ei=g(xi)yi,i=1,2g(x)=i=1NαiyiK(xi,x)+bη=K11+K22−2K21=‖Φ(x1)−Φ(x2)‖2Ei=g(xi)−yi,i=1,2g(x)=∑i=1NαiyiK(xi,x)+b

EiEi为函数g(xi)g(xi)对输入xixi的预测值与真实输出yiyi之间的差.

证明:

引入记号变量 vi=j=3NαjyjK(xi,xj)=g(xi)j=12αjyjK(xi,xj)b,i=1,2vi=∑j=3NαjyjK(xi,xj)=g(xi)−∑j=12αjyjK(xi,xj)−b,i=1,2
再由α1y1+α2y2=ςα1y1+α2y2=ςy2i=1yi2=1可将目标函数W(α1,α2)W(α1,α2)表示成只含α2α2的函数:

W(α2)=12K11(ςα2y2)2+12K22α22+y2K21(ςα2y2)α2(ςα2y2)y1α2+v1(ςα2y2)+y2v2α2W(α2)=12K11(ς−α2y2)2+12K22α22+y2K21(ς−α2y2)α2−(ς−α2y2)y1−α2+v1(ς−α2y2)+y2v2α2

α2α2求偏导可得:
Wα2=K11α2+K22α22K21α2K11ςy2+K21ςy2+y1y21v1y2+v2y2∂W∂α2=K11α2+K22α2−2K21α2−K11ςy2+K21ςy2+y1y2−1−v1y2+v2y2

令其等于0,即可求出上述问题的最优解,得到:
(K11+K222K21)α2=y2(y2y1+ςK11ςK21+v1v2)(21)(K11+K22−2K21)α2=y2(y2−y1+ςK11−ςK21+v1−v2)(2−1)

这里,不同与书上,我先求v1v2v1−v2,
vivi的定义可知v1v2v1−v2为:
v1v2=g(x1)j=12yjαjK1jbg(x2)j=12yjαjK2jb=g(x1)g(x2)+y1α1K21y1α1K11+y2α2K22y2α2K21α1y1+α2y2=ς,y21=1α1=(ςy2α2)y1,=g(x1)g(x2)+(ςy2α2)K21(ςy2α2)K11y2α2K21+y2α2K22=g(x1)g(x2)+ςK21ςK11+y2α2(K11+K222K21)v1−v2=⟮g(x1)−∑j=12yjαjK1j−b⟯−⟮g(x2)−∑j=12yjαjK2j−b⟯=g(x1)−g(x2)+y1α1K21−y1α1K11+y2α2K22−y2α2K21∵α1y1+α2y2=ς,y12=1∴α1=(ς−y2α2)y1,代入得,=g(x1)−g(x2)+(ς−y2α2)K21−(ς−y2α2)K11−y2α2K21+y2α2K22=g(x1)−g(x2)+ςK21−ςK11+y2α2(K11+K22−2K21)

值得注意的是,v1v2v1−v2中的α1,α2α1,α2是没有更新前的αα,即αoldαold
v1v2=g(x1)g(x2)+ςK21ςK11+y2αold2(K11+K222K21)∴v1−v2=g(x1)−g(x2)+ςK21−ςK11+y2α2old(K11+K22−2K21)
将上式代入到式(2-1)中即可求得
αnew,unc2=αold2+y2(E1E2)ηα2new,unc=α2old+y2(E1−E2)η

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值