2016-06-21 231 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不是超平面上的矢量,而是來自訓練集的矢量,對嗎? –