一.什么是 svm?
支持向量机(Suport Vector Machine,SVM)的基本模式是在特征空间中找到最佳的分离超平面分离,使得训练集得到的正负样板正确分类,且间距(margin)最大.这条分割线叫做分割超平面(Separating hyperplane).这种分类方法也叫大间距分类法
求解 SVM 算法,就是满足
1.什么是超平面?
n 维超平面空间由下列的方程式确定.其中,w 和 x 都是 n 维列向量,x 为平面上的点,w 为平面上的法向量,决定了超平面的方向,b 是一个实数,代表超平面到原点的距离。我们对“平面”概念的理解,一般是定义在三维空间中的,即
这个平面由两个性质定义:
- 1.方程是线性的,是由空间点的各分量的线性组合。
- 2.方程数量是1。
这个平面是建立在“三维”上的。如果我们撇开“维度”这个限制,那么就有了超平面的定义。超平面是纯粹的数学概念,平面中的直线、空间中的平面的推广,只有当维度大于3,才称为超平面。
它的本质是自由度比空间维度小1。
给定向量空间 Rn 中的一个点 P 和一个非零向量n ,满足
则称点集 i 为通过点p 的超平面,向量 n为通过超平面的法向量。按照这个定义,虽然当维度大于3才可以成为“超”平面,但是你仍然可以认为,一条直线是 R2 空间内的超平面,一个平面是 R3 空间内的超平面 。Rn 空间的超平面是Rn 空间内的一个 n - 1 维的仿射子空间。
2. 点到超平面的距离
样本空间中任意的一点 x, 到超平面(w,b)的距离,可以表示为
||w||是向量 w 的 L2范数,其计算公式为:
L2范数,又叫“岭回归”(Ridge Regression)、“权值衰减”(weight decay)。这用的很多吧,它的作用是改善过拟合。过拟合是:模型训练时候的误差很小,但是测试误差很大,也就是说模型复杂到可以拟合到所有训练数据,但在预测新的数据的时候,结果很差。
L2范数是指向量中各元素的平方和然后开根。我们让L2范数的规则项||W||2最小,可以使得W的每个元素都很小,都接近于0。而越小的参数说明模型越简单,越简单的模型则越不容易产生过拟合现象。
3. 判断超平面的正反
一个超平面可以将它所在的空间分成两半,法向量指向的一半是它的正面,另外一面是它的反面.
用数学来判断的话,需要利用法向量 w
二.核函数
核函数是特征转化函数,它的物理含义是衡量两个向量的相似性
最简单的核函数是
常用的核函数1.多项式核函数2.高斯核函数
1.多项式核函数,对输入特征的一种相似性映射函,其数学表达为:
其中γ为正数,c为非负数.
2.高斯核函数,