support vector machine:对于样本数少的数据集,基本上都能得到很好的结果

1.线性模型

凡是我们可以画一条直线,把这圆圈和叉分开,即训练样本集分开的模型都是线性模型,也就是线性可分样本集(linear separable)
image.png

如果存在这样一个样本集—无论怎么划分都无法将其分开,那么它就是非线性模型(non-linear separable);
image.png

(1)算法思路

首先研究如何把线性可分样本集划分的方法推广到非线性的样本集中进行处理:

1)哪一条划分直线是最佳的?(如果线性可分,那么样本空间理论上存在无数个可以划分两个样本集的直线,那么哪条直线是最好的?)
image.png

如果我们假定测定是有误差的存在,那么2号线显然对于两个样本集的误差容忍程度更均衡的,那么我们怎么定义2号线该怎么画出来?

—首先我们要定义一个衡量每一条线的标准:性能指标—Performance index
定义通过一条线怎么算这个指标,即每条线都有一个性能指标—>2号线在这个性能指标上能够把这个指标做到最大

那么这个性能指标是什么样子?

image.png
对于任意一条可以将两个样本集分开的直线,将直线向两个样本空间平行移动,直到它檫到这两个样本空间的一个或几个样本为止(即图中的圈和叉),这时,性能指标就是这两条虚线的距离d
而我们要找的最优性能指标就是使d最大的那条线。

但这时我们可以发现,这条线并不唯一!
image.png
比如这另外两条黄线,它们的d也是最大的,那么如何定义,使得我们要的那条直线唯一?

再加一个限制:取到的这条线,上下平移的虚线,各自与其距离相等,d/2
image.png

好了,那么我们要怎么样描述这样的一个优化的过程?
请看下节课。