前言
本文开始主要介绍一下SVM的分类原理以及SVM的数学导出和SVM在Python上的实现。借鉴了许多文章,会在后面一一指出,如果有什么不对的希望能指正。
一、 SVM简介
首先看到SVM是在斯坦福的机器学习课程上,SVM是作为分类器在logisticregression的基础上引出的。
其学习方法是把数据映射到一个高维空间上,使数据变稀疏,比较容易找到一个分割面来将数据分类,
而这个高维的分割面就是超平面。而SVM做的就是找到这样一个超平面使得数据点离这个超平面尽可能的远,
这样的分类效果才会好。
1、SVM起源Logistic回归(逻辑回归)
我也准备利用逻辑回归来引出SVM。首先我们要先理解什么是线性分类器,
线性分类器就是通过特征的线性组合作为自变量,
由于自变量的取值范围是负无穷到正无穷,因此通过sigmoid函数(这个函数的主要目的就是为了映射)映射到(0,1)上,
得到属于y =1的概率,概率超过50%就定义为y=1。
Logistic回归就是要学习得到θ,使得正例的特征远大于0,负例的特征远小于0,而且要在全部训练实例上达到这个目标。