一、SVM与感知机关系
1.1、SVM概念
1)SVM(Support Vector Mechine)支持向量机,是一个二分类算法,其对感知机进行了扩展,支持线性分类和非线性分类;
2)可以用于回归任务(SVR)中;也可以用于多分类中,升维方式(OvR、OvO);
1.2、感知机
1)思想:在任意空间中找到一个超平面,将所有二分类别分割开;
2)前提:数据是线性可分的
3)模型/判别式:样本代入模型计算结果大于0则为正确分类,反正则为错误分类
4)损失函数:期望使分类错误的所有样本到超平面的距离之和最小;(结果为0时成为完美分类器,意味着每一分错的样本)
1.3、SVM与感知机比较
1)相同点:都是寻找一个超平面解决二分类问题的算法,一侧计算结果为正则正例,一侧计算结果为负则负例;
2)不同点:损失函数不同,感知机是通过判断错的点寻找超平面;SVM是通过支持向量寻找超平面;逻辑回归通过最大似然寻找超平面;
3)高级点:SVM尝试找到一个决策边界,距离两个类别最近的样本点最远,这样模型的容忍度会更好;
二、几何距离与函数距离
2.1、概念
感知机使用几何距离计算中的损失函数大小;SVM使用函数距离;
上面为某点到平面的几何距离
2.2、关键词说明
1)三种支持向量机:线性可分支持向量机(硬间隔最大化)、线性支持向量机(软间隔最大化)、非线性支持向量机(升维【核函数】)
2)线性可分(Linearly Separable):即指在数据集中,可以找到一个超平面将两组数据分开
3)线性不可分(Linearly Inseparable):即指在数据集中,无法可以找到一个超平面将两组数据分开
4)间隔(Margin):数据点到分割超平面的距离
5)分割超平面(Separating Hyperplane):将数据集分割开的直线或平面
6)支持向量(Support Vector):离分割超平面最近的点
三、损失函数推导
通过线性可分支持向量机进行说明
1)实现硬间隔最大化,需要满足两个条件:能够完美分类正负例、距离最近的点越远越好
2)怎么确定超平面
3)目标:能够正确分类的平面中,距离越近的越远越好;(即找到一组最好的w和b固定一个超平面,可以完美分类正负例,且距离最近的点间隔最大)
4)转为为有约束的函数最优化问题