支持向量机
1简介支持向量机基本上是最好的有监督学习算法了。最开始接触SVM是去年暑假的时候,老师要求交《统计学习理论》的报告,那时去网上下了一份入门教程,里面讲的很通俗,当时只是大致了解了一些相关概念。这次斯坦福提供的学习材料,让我重新学习了一些SVM知识。我看很多正统的讲法都是从VC维理论和结构风险最小原理出发,然后引出SVM什么的,还有些资料上来就讲分类超平面什么的。这份材料从前几节讲的logistic回归出发,引出了SVM,既揭示了模型间的联系,也让人觉得过渡更自然。2重新审视logistic回归Logistic回归目的是从特征学习出一个01分类模型,而这个模型是将特性的线性组合作为自变量,由于自变量的取值范围是负无穷到正无穷。因此,使用logistic函数(或称作sigmoid函数)将自变量映射到01上,映射后的值被认为是属于y1的概率。形式化表示就是假设函数
其中x是
维特征向量,函数g就是logistic函数。
的图像是
可以看到,将无穷映射到了01。而假设函数就是特征属于y1的概率。
f当我们要判别一个新来的特征属于哪个类时,只需求属于y0类。再审视一下,发现只和有关,
,若大于05就是y1的类,反之
0,那么时,1,反之
,gz只不过是用来映0。如果我们只从,而是y0的特征
射,真实的类别决定权还在
。还有当
出发,希望模型达到的目标无非就是让训练数据中y1的特征
。Logistic回归就是要学习得到,使得正例的特征远大于0,负例的特征远小于0,强调在全部训练实例上达到这个目标。图形化表示如下:
中间那条线是
,logistic回顾强调所有点尽可能地远离中间那条线。学习出的结果也就
中间那条线。考虑上面3个点A、B和C。从图中我们可以确定A是×类别的,然而C我们是不太确定的,B还算能够确定。这样我们可以得出结论,我们更应该关心靠近中间分割线的点,让他们尽可能地远离中间线,而不是在所有点上达到最优。因为那样的话,要使得一部分点靠近中间线来换取另外一部分点更加远离中间线。我想这就是支持向量机的思路和logistic回归的不同点,一个考虑局部(不关心已经确定远离的点),一个考虑全局(已经远离的点可能通过调整中间线使其能够更加远离)。这是我的个人直观理解。3形式化表示我们这次使用的结果标签是y1y1,替换在logistic回归中使用的y0和y1。同时将替换成w和b。以前的为b,后面替换为,其中认为(即。现在我们替换)。这样,我们
f让
,进一步
。也就是说除了y由yr