机器学习技法学习笔记

1.Large-Margin Separating Hyperplane
下面的三个图形用我们之前的线型方法都分类正确了,但是哪个是最好的呢?大部分人会选第三个。
这里写图片描述
为什么呢?因为我们发现,我们测试的资料会和我们的训练资料会有误差,而最右边的分割线的误差容忍度比较大,所以测量精度会更高。我们这里以灰色的圈圈代表误差容忍度。
这里写图片描述
我们将上述圈圈的大小转换为线的宽度,为了找到拥有最大容忍度的圈圈,我们转换成找最宽的线如下图所示:
这里写图片描述
我们将其转换成如下数学问题:
找最胖的一条线,要求这条线能将所有数据分对,这条线的宽度由最接近它的点所决定。
我们这里称宽度为margin。
这里写图片描述

2.Standard Large-Margin Problem
接下来,我们关注我们该怎么计算点离线的距离distance。同样我们将计算矩阵化,但是我们不讲w0归并到w里面去,x里面也不用添加1。
这里写图片描述
我们知道在上面wx+b=0代表一条直线,但是当维数变大时其代表一个超平面,而w为这个超平面的法向量。
x 为平面上的一点,那么平面外一点离平面的距离为
向量(x- x )在单位向量 w | w | 的投影。
这里写图片描述
然后利用 y n ( w T x n + b ) > 0 去掉绝对值,得到新的距离公式,然后我们的优化算式如下所示:
这里写图片描述
变换到这里我们发现这个优化算式还是不好计算,但是我们发现 y n ( w T x n + b ) 的大小是可以任意放缩而不改变平面本身的,所以我们规定上述值的最小值为1(就算不是1我们也可以将其放缩为1),最后我们得到两个条件的优化式子。第一个条件为灰色是因为它包含于第二个条件。
这里写图片描述
但是现在这个优化式子仍然不好解,因为这个最小等于1的条件太强了,于是我们将条件放松到大于等于1。但是这样条件范围变了,结果可能会和之前的不一样。
但是我们发现就算将条件放松为大于等于1我们的解也不会变,所以放松可取。
为了符合我们的习惯我们优化原式的倒数,将最大化改为最小化,拿掉更号并用矩阵表示。最后添加一个系数1/2我们得到我们最后的优化式子:
这里写图片描述

3.Support Vector Machine
我们称之前求得的式子为标准式,下面为一个通过标准式求解w,b的例子:
这里写图片描述
通过上面那个列子我们发现,在所有点中只有离线最近的那几个点对我们求得线起作用,其余的点都起不到作用,所以我们称起作用的那几个点为支持向量。
这里写图片描述
当点很少时我们能够用上诉方法求解,但是当点数量超级多的时候我们该怎么办呢?我们发现以前的方法好像都不管用了,不过还好该标准式子可以转换二次规划问题,而二次规划问题是有方法求解的。
这里写图片描述
所以我们需要做的就是如何将标准式转换成二次规划式子。
然后直接使用二次规划工具求解。
这里写图片描述
上述方法总结如下:
首先求出二次规划系数,带入工具求解。
这里写图片描述
我们称上述式子为硬SVM因为我们要求分化不许出错。
如果我们想用曲线,那么我们可以现将其转换到z空间在去找z空间的直线。就像我们在之前做的一样。

4.Reasons behind Large-Margin Hyperplane
一种解释是SVM和正则化很像:
这里写图片描述
还一种是为了增强抵抗测试资料的误差容忍度。
还有一种是VCdimension。认为胖的性质减少了VCdimension。但是我觉得这种解释有点牵强。

猜你喜欢

转载自blog.csdn.net/Du_Shuang/article/details/81873587
今日推荐