2016-06-21 234 views
0

我一直在试图理解SVM算法,我不能完全得到超平面方程。等式是-wx -b = 0。 我的理解(有很多混淆)是 - x是构成超平面的所有向量的未知集合,并且w是该超平面的法向向量。我们不知道w,我们需要从训练集中找到最佳的w可视化SVM的超平面方程

现在,我们都知道,如果两个矢量彼此垂直,那么它们的点积是零。所以,如果w正常于x那么这意味着它应该是wx = 0,但它为什么说wx -b = 0或wx = b?(正常和垂直是同一件事,对吗?)在正常意义上,我知道如果wx = b,则wx不垂直,它们之间的角度大于或小于90度。

另一件事是,在大多数教程(甚至是麻省理工学院教授在他的lecture)被说的话,那X投影W¯¯,但我知道,如果我想利用X投射w那么它将是xw/| w | (无方向w),不仅wx。我有这个观点吗?

我想,我错过了某些东西或误解了某些东西。任何人都可以帮助我吗?

回答

0

首先,成一直线:

  • X投射到瓦特是(x.w/| W |²)瓦特。和x。 W/| W |X方向瓦特组分(如瓦特/ | W |是方向的瓦特的单位矢量)

然后,你可能会混淆两件事情:

  1. 如果X是超平面的一个向量,那么XW = 0是超平面的方程式。不幸的是,我们不希望您的任何x在超平面上。

  2. 在SVM的情况下,您不知道超平面上的任何矢量x。相反,你需要一个训练集{(x 1,y1),...,(x N,yN)}从中找到超平面的法向量w(然后您可以描述该超平面的任何矢量x知道wx = 0)。


因此,让我们检查,你有一个数据集{(X 1,Y1),...,(X N,YN)} ,你想找到第二点由于一些特定的矢量(称为支持向量),超平面方程,即其法向矢量。

  • 没有理由为什么这些十一应该是正常W¯¯。此外,它是不可能对所有X是正常的超平面(如果是这样,让我们​​考虑两个向量X1!= X2,然后w.x1 = 0 = w.x2 =>w^(X1-X2) = 0的含义,要么W = 0,X1 = X2

  • 但是我们想要的是,> = C如果ù阳性(一个侧超级飞机)和w.U < C if U negative(超平面的另一侧)。

  • 作为一个特定的U,我们可以选择数据集中的向量。我们期望它们处于这个超平面的某个距离D(在讲座中称为水沟)。所以我们有w.x i> = C + D if yi positive。和w.x i < C - D if yi negative

  • 让我们把b = -C和D = 1(不失一般性)。然后w.x如果yi为正数,则i + b> = 1。 w.x i + b < -1 if yi negative。

  • 如果乘以义(等于1,如果X我正的,或否则返回-1)它导致义(WX我+ B)> = 1

  • 最后,通过采取支持向量,即定义的排水沟,我们获得yi(瓦特。x i + b) - 1 = 0

+0

x在w方向的投影和w方向的x分量之间的区别是什么? –

+0

并不多。只是你将w规范化为规范| w |在x到w的投影中没有考虑到。 –

+0

好的,从你的第一点我知道什么,在等式w.x-b = 0中,x不是超平面上的矢量,而是来自训练集的矢量,对吗? –