1. 程式人生 > >機器學習2-支援向量機(Support Vector Machine)

機器學習2-支援向量機(Support Vector Machine)

  在機器學習中,支援向量機(SVM,還支援向量網路)是與相關的學習演算法有關的監督學習模型,可以分析資料,識別模式,用於分類和迴歸分析。
  介紹
  在機器學習中,支援向量機(SVM,還支援向量網路)是與相關的學習演算法有關的監督學習模型,可以分析資料,識別模式,用於分類和迴歸分析。給定一組訓練樣本,每個標記為屬於兩類,一個SVM訓練演算法建立了一個模型,分配新的例項為一類或其他類,使其成為非概率二元線性分類。一個SVM模型的例子,如在空間中的點,對映,使得所述不同的類別的例子是由一個明顯的差距是儘可能寬劃分的表示。新的實施例則對映到相同的空間中,並預測基於它們落在所述間隙側上屬於一個類別。
除了進行線性分類,支援向量機可以使用所謂的核技巧,它們的輸入隱含對映成高維特徵空間中有效地進行非線性分類。

舉例說明
現在有一些資料,通過gui’n2,資料在座標軸上的分佈如下:
資料分佈圖
從上面的分佈圖可以看出,資料大概分為兩類,紅色的點和綠色的×,現在要使用這些資料訓練出來一個模型,來進行預測新資料的出現的位置。可能上面的圖形很難去畫出一條邊界來劃分兩個類別。但是如果我們採用一個SVM的模型X²+Y²,這樣就會出現下圖:
SVM模型整理後

從上面圖可以看到,兩類資料,進行模型轉換後,資料可以濟寧分類劃分。這個就是最基礎的向量機應用,我們可以根據不同的資料集來自定義自己的向量機模型(類似x²+y²)

總結

我們通常希望分類的過程是一個機器學習的過程。這些資料點是n維實空間中的點。我們希望能夠把這些點通過一個n-1維的超平面分開。通常這個被稱為線性分類器。有很多分類器都符合這個要求。但是我們還希望找到分類最佳的平面,即使得屬於兩個不同類的資料點間隔最大的那個面,該面亦稱為最大間隔超平面。如果我們能夠找到這個面,那麼這個分類器就稱為最大間隔分類器。