1. 引言
分类问题的基本想法是找到一个划分超平面,将不同类别的样本分开。目的在于找到的划分超平面对训练样本的局部“容忍度”最好,使划分超平面所产生的分类结果是最鲁棒的,对未见示例的泛化能力最强。
2. 间隔与支持向量
线性方程与间隔在这里写一下支持向量机(Support Vector Machine,SVM)的基本型
min 1/2 ||W||^2
s.t. Yi(WtXi+b)≥1 , i=1,2,...,m
图片里的内容不再赘述了,说一下几点理解:
1.y的分类结果只有两个,分别是y=+1和y=-1;
2.计算间隔时假设离超平面最近的点是之上和之下距离为1的点;
3.SVM的问题是求解最近点之间的最大间隔;
4.Yi(WtXi+b)≥1中,Yi为+1或者-1,WtXi+b必须大于1或者小于-1,因为最近的点为+1或者-1。
3.对偶问题
提出这个问题的原因在于上节中给出了一组约束条件下求最小值,因此转化为求最值问题。思路是使用拉格朗日乘子法得到“对偶问题”。面对不等式约束,使用KKT(Karush-Kuhn-Tucker)解决。
Langrange乘子
对于上图中max值的确定使用SMO。
求得的偏移项b。
偏移项b
4.超平面
上文是假设训练样本线性可分的,若线性不可分,考虑使用一个超平面将样本分离开来。即将x替换为φ(x),因此这里使用一个核函数将x映射到φ(x)。
非线性映射
模型最优解通过“核函数”展开,称为“支持向量展式”。
支持向量展式
利用k(.,.)定义的核矩阵。
再生核希尔伯特空间
常用核函数
5.软间隔与正则化
软间隔(soft margin):允许支持向量机在一些样本上出错。
其中L0/1称为损失函数。
三种常见的替代损失函数
优化目标的一般形式,第一项是用来描述划分超平面的“间隔”大小,另一项是用来表述训练集上的误差。在这里写为更一般的形式,第一项称为“结构风险”,用来描述模型f的某些性质。第二项称为“经验风险”,用来描述模型与训练数据的契合程度,C用于对二者进行折中。这个式子可称为正则化问题,第一项称为正则化项,C称为正则化常数。正则化可理解为一种“罚函数法”,对不希望得到的结果施以惩罚,从而使得优化过程趋于希望目标。
一般形式
支持向量机和支持向量机回归我看完了,然而我真的没有看懂,中间涉及的复杂的数学推导完全懵,所以以上内容仅限于依照书能大概整理出算法的思路。现在在数学上的痛都是当时数学课上睡的觉,当时睡得有多沉现在就有多痛!
明天开始写支持向量机的代码
网友评论