机器学习 The optimal margin classi er(3)

来源:互联网 发布:网络倒卖警服 编辑:程序博客网 时间:2024/06/03 10:04

接着上一篇的内容,我们最终是定格在
这里写图片描述
在这个式子里我们需要找到让式子达到最大的值,我们现在就来探讨一下,是如何做到去最大值呢?

首先为了更好地衔接,回顾一下前面的知识,我们是如何走到这个式子的!
我们用了拉格朗对偶问题,把对min f(w)问题转化成 max w(a)的问题.
而式子中没有w是运用KKT条件中,对w求导等于0得到关于a的表达式,然后然代入原来的式子。之所以符合KKT条件,这个就看看上一篇的性质定理。

有了上面的知识铺垫,那我们来讨论如何求解上面的式子。
其实解决方法非常简单,首先我们来学习一下预备概念。
Coordinate ascent 坐上升法则 这又是一个新的优化算法,总结一下,到目前为止我们学习的 优化算法有,梯度下降(上升),牛顿法。
比如,我们要接触下面这个非约束方程,

(论机器学习的自我修养,英语要懂…….)

这里写图片描述

这里写图片描述
这里写图片描述
When the function W happens to be of such a form that the \arg max”
in the inner loop can be performed eciently, then coordinate ascent can be
a fairly effcient algorithm.
这里写图片描述

图片也应该比较好理解吧,当我们固定一个参数,然后移动另一个参数的话, 就是沿着平行于坐标轴的方向移动。这个算法是思想其实也很单纯,就是把把每个参数都“摆弄”,让他达到最大值,循环往复,发现收敛了,就达到目的了。

以上是关于 Coordinate ascent 坐上升法则的介绍,但是在求解
这里写图片描述
的时候,单纯用坐标上升法则是不可以的。因为这个式子是有约束条件的,这里写图片描述 如果只改变一个参数的话,其他参数固定的话,这个约束条件就不成立了,所以我们需要对 坐标上升法则进行简单的变形,也就引出了我们的 最后一个 大BOSS,SMO算法。
SMO算法思想其实也很简单,不是只一个参数不行吗? 那我就动两个参数,让剩余的参数都固定
算法如下:
这里写图片描述
现在让我们看看具体的算法,如下:(这里不得不说明以下,我的博客真的只适合自己阅读和已经学习过机器的学习的人看,内容排版实在不好)
这里写图片描述
这个方程不就相当于只包含,a1,a2两个参数的方程吗?
以下这个函数图是软间隔的函数,如下:
这里写图片描述
这里写图片描述

这里写图片描述
这个时候w其实就是一元二次方程,这个好好看看原方程的结构,很容易得出的结论。
解一元二次方程最优解,很简单吧,初中生都会做。
我们在解的过程中需要注意的地方是,我们的解要落在上述区域图内,所以:
这里写图片描述

以上就是关于SMO的讲解,也是解决了我们 最终怎么求
这里写图片描述
最大值得问题,涉及的篇幅之广,也是让我始料未及,这部分的学的时候一定要踏踏实实,不求快,但求稳。

阅读全文
1 0
原创粉丝点击