SVM

本文是学习b站up主shuhuai008的笔记。

SVM概述

支持向量机在深度学习出现之前是一个非常流行的算法。SVM有三宝:间隔、对偶、核技巧
SVM可以分为:硬间隔SVM(最大间隔分类器)、软间隔SVM、kemel SVM
SVM最初的提出是解决二分类问题,如下图:

空间中有两类:o和x,在空间中找到一条线,把这两类分开

其中 定义图中把两类物体分开的线是一个超平面: ,
这个SVM模型就记作:
当这个函数中时,;时,.所以SVM的本质上是一个判别模型
如果只从分类的角度看,很多直线都可以完成正确的二分类的功能,而SVM要做的就是在这么多的直线中找到一条最好的直线。
  我们所关注的不仅仅是训练误差,更要关注期望(或者说是测试误差),如果分布在这条线两边的点离这条线很近,很容易越过这个线(两类的边界),所以当直线距离两边的点过近时,它的泛化误差不好。我们要做的就是找到一条直线,使两边的样本点到直线的距离最远。
我们定义一个函数表示最大间隔分类器: 
我们有N个样本点:{}    {-1,+1},因为是分类任务。
最朴素的正确分类就可以写作:
上式可以写作:  因为

函数margin定义成点到直线的距离,点到直线的距离我们用distance来表达,因为有N个样本点,所以有N个distance,margin就等于从N个样本点的distance里面找到最小的那个distance,我们把margin就定义为离超平面最近的点的距离作为margin
margin(w,b)=min distance(w,b,x_i)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容