@hanxiaoyang
2017-12-14T12:46:19.000000Z
字数 5666
阅读 2561
个人博客
在支持向量机之数学理解的第一部分,我们看到了支持向量机的目标是什么。它的目标是利用间隔最大化来寻找最优分离超平面。
但我们如何计算间隔呢
在Support Vector Machine中, 有一个单词-vector(向量)。
这意味着重要的是好好理解向量以及知道如何使用它们。
这里有一个关于今天所学的简短的总结:
- 向量是什么
- 它的规范
- 它的方向
- 如何加减向量
- 什么是点积
- 如何将一个向量映射到另一个向量上
当我们掌握了以上这些,我们会理解:
- 超平面的方程是什么
- 如何计算间隔
如果我们在二维空间上定义一个点A (3,4),我们可以这样绘制它
定义:任意点x=(x1,x2),x≠0指定了平面上的一个向量,即从原点的开始到x点结束的向量。
这个定义意味着,存在原点与A之间的向量。
这个点的起始位置是原点,图中的这个向量是向量。我们也可以称之为其他名字例如。
注:你会发现我们写向量时,在向量上方有一个箭头,或者是将向量加粗。在这篇文章的剩余部分中,如果像这样由两个字母可以表示的,那么我将使用箭头来表示向量,否则的话将使用加粗字体来表示向量。
现在我们知道有一个向量,但我们仍然不知道什么是一个向量。
定义:向量是一个既有大小又有方向的对象。
我们现在看看这两个概念。
一个向量x的大小写作,称作向量的模。
对我们的来说,是线段的长度。
从图中我们可以很容易地使用勾股定理计算出距离OA:
方向是向量的第二个组成部分。
定义:向量的方向是向量
向量的坐标怎么得到的?
要得到一个向量的方向,我们需要借助它的夹角。
上图展示了向量,其中,。
我们可以说:
Naive definition 1 : 向量的方向是由与水平线的夹角和垂直线的夹角的决定的。
这不是我们喜欢的,所以我们使用夹角的余弦值来替代。
直角三角形中,角的余弦的定义是
上图中向量与坐标轴形成了两个直角三角形,两个角的临边是两个坐标轴。这意味着,余弦的定义隐含包含与角相关的轴。我们可以改述我们的Naive definition如下:
Naive definition 2 : 向量的方向是由夹角和夹角的余弦值决定的。
现在我们来观察一下角度的余弦值:
我们现在要计算上图向量的方向。
有两个向量和,那么:
类似的:
由于减法是不可交换的,我们也应该考虑另一种情况:
因为一个向量有大小和方向,所以我们通常认为平行向量(有着相同大小和方向但是不同起点的向量)是相同的向量,只是他们在空间内的不同位置。
所以遇到下图的情况时不要吃惊:
和
如果从数学的角度来看,这么画该向量似乎是错的,因为向量-没在正确的点开始和结束。但它确实是思考向量的方便的思维方式。
关于理解SVM的一个非常重要的概念就是点积。
定义:从几何学来说,它是两个向量的模长以及它们之间的夹角余弦值的乘积。
也就是意味着,如果我们有两个向量和,他们间的夹角为,他们的点积是:
为了便于理解,我们看一下这个问题的几何图形
在定义中我们写,让我们看一下他到底是什么。
通过定义我们知道在一个直角三角形中:
所以现在我们可以这么来看初始的几何图像:
可以看出:
让我们开始用公式吧!
将左移有:
当我们在谈论的点积是我们在谈论的是:
- 向量X,Y的内积(线性代数)
- 标量积,因为我们做两个向量的乘积,它返回一个标量(一个实数)。
有两个向量与,求出在上的正交投影。
将投射到上
得到了向量
通过定义:
为什么我们对正交投影感兴趣?在我们的例子中,它使我们能够计算与贯穿之间的线的距离。
我们可以看出距离就是。
你可能知道一条线的方程是:。然而当读到有关超平面的知识时,你会经常看到超平面被这样定义:
- 在多于二维的空间里,这个方程式更适用
- 向量w垂直于超平面
计算一个点到超平面的距离第二个原因将派上用场。
下图中我们有一个超平面,他将两组数据划分开。
为了简化这个例子,我们将设为0。
图中的超平面方程为:
我们要计算点和超平面之间的距离
这是投影到超平面的距离。
我们可以将点看作是一个从原点指向的向量。
我们将向量投影到向量上
得到向量
我们的目标是找到点和超平面之间的距离。
可以从上图中看到这个距离就是。让我们一起计算一下它的值:
向量垂直于超平面,向量
我们得出了与超平面的距离,根据间隔公式有:
SVM之数学理解的第二部分到这里就结束了。
虽然还有很多数学背景没有介绍,但我希望你们可以没有问题的理解这篇文章。
现在我们知道如何计算间隔,我们可能想知道如何选择最优分离超平面,这将在第三篇文章:如何找到最优分离超平面中介绍。