支持向量机SVM
支持向量机(support vector machines,SVM)是一种二类分类模型。它的基本模型是定义在特征空间上的间隔最大的线性分类器,间隔最大使它有别于感知机;支持向量机还包括核技巧,这使它成为实质上的非线性分类器。支持向量机的学习策略就是间隔最大化,可形式化为一个求解凸二次规划(convex quadratic programming)的问题,也等价于正则化的合页损失函数的最小化问题。支持向量机的学习算法是求解凸二次规划的最优化算法。
分类
线性可分支持向量机:当训练数据线性可分时,通过硬间隔最大化(hard margin maximization),学习一个线性的分类器,即线性可分支持向量机,又称为硬间隔支持向量机
线性支持向量机(linear supportvector machine):当训练数据近似线性可分时,通过软间隔最大化(soft margin maximization),也学习一个线性的分类器,即线性支持向量机,又称为软间隔支持向量机;
非线性支持向量机(non-linear support vector machine):
当训练数据线性不可分时,通过使用核技巧(kernel trick)及软间隔最大化,学习非线性支持向量机。
核函数
当输入空间为欧氏空间或离散集合、特征空间为希尔伯特空间时,核函数(kernelfunction)表示将输入从输入空间映射到特征空间得到的特征向量之间的内积。 通过使用核函数可以学习非线性支持向量机,等价于隐式地在高维的特征空间中学习线性支持向量机。这样的方法称为核技巧。核方法(kernel method)是比支持向量机更为一般的机器学习方法。
线性可分支持向量机与硬间隔最大化
1.线性可分支持向量机
3.函数间隔和几何间隔
间隔最大化
算法:(线性可分支持向量机学习算法–最大间隔法)
支持向量和间隔边界
常见问题
线性支持向量机与软间隔最大化
线性支持向量机