機器學習方法篇(11)------SVM入門

● 每週一言

溝通,是解決問題的不二法寶。

導語

支持向量機由Bell實驗室於1995年提出,是一種非常有潛力的分類模型。與邏輯迴歸、神經網絡模型相比,支持向量機有着更強的數學理論背景。那麼,支持向量機到底是什麼?

SVM

支持向量機(Support vector machines,SVM),拆開來看,分成“支持向量”和“機”。“機”在機器學習領域是算法的另一種叫法,比如感知機、波茲曼機等。“支持向量”指的是一些特別的樣本,這些樣本決定了SVM的模型參數。

我們從一個二維平面的點分類問題入手,具體可以理解爲一個有兩種特徵的數據集二分類問題,比如:房價、面積(兩種特徵)與是否被購買(樣本標籤)。

如果使用迴歸模型,公式爲 y = wx + b,其中x爲輸入二維特徵樣本,w則是這個二維特徵的權重,y和b分別是輸出和偏置。模型分類結果如下圖紅線所示,區分兩類樣本。

fig1

在形式上,SVM也可以用 y = wx + b 表示。但是有別於迴歸模型,SVM不僅要區分這兩類樣本,還要使上圖紅線劃分的位置更爲合理準確。可想而知,更爲合理準確的劃分法應該是分割線恰好介於兩類最近樣本的正中間,這樣劃分的模型泛化能力最好。
fig2

如上圖,粉線與紅線和藍線與紅線之間的垂直間隔距離相等,即爲最優劃分。而處於兩條邊界線上“支撐”這個最優劃分的樣本,就是上文所說的“支持向量”。

因此,SVM的目標就是最大化這個垂直間隔距離。大家不妨先回憶一下點到直線的距離公式:

fig3

上圖公式中的直線方程爲Ax+By+C=0,點P的座標爲(x0, y0)。回到SVM的公式 y = wx + b,這個距離公式可以寫成:
fig4

一般情況下SVM中的正負樣本標籤我們置爲1和-1。要最大化上圖這個距離,相當於最小化權重向量w的L2範數,如下:
fig5

或許你已經看出來了,SVM的整體公式和加了L2正則的線性迴歸幾乎一模一樣。的確,我們可以像訓練線性迴歸一樣來訓練SVM,這對最後的結果不會有任何差異。但是,有着更強數學理論背景的SVM可以有更爲高效的訓練方法,這個在後面單獨一節來講,敬請期待。

結語

感謝各位的耐心閱讀,後續文章於每週日奉上,敬請期待。歡迎大家關注小鬥公衆號 對半獨白

face

發佈了91 篇原創文章 · 獲贊 113 · 訪問量 27萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章