瞭解SVM
支持向量機,因其英文名爲suport vector machine,故簡稱SVM,通俗的來講,它是一種二分類模型,其基本模型定義爲:特徵空間上的間隔最大的線性分類器,其學習策略是:間隔最大化,最終可以轉化爲一個凸二次規劃問題的求解。
1.1分類標準的起源:Logistic迴歸
理解SVM,首要問題是理解:線性分類器。
給定一些數據,它們分屬於兩個不同的類,現在要找到一個線性分類器把這些數據分成兩類。
如果用表示數據點,用表示類別(),一個線性分類器的學習目標是在n維空間中找到一個超平面(hyper plane),這個超平面的方程可以表示爲(其中w,b是要學習的參數,w抽象爲表示n維特徵(x向量)上的權重,b爲一個偏置值):
關於的值爲什麼取,此問題來源於Logistic迴歸。
Logistic迴歸目的是從特徵中學習出一個分類模型,而這個模型是將特徵的線性組合作爲自變量,由於自變量的取值範圍是負無窮到正無窮。因此,使用Logistic函數(sigmoid函數)將自變量映射到(0,1)上,映射後的值 被認爲是屬於的概率。
假設函數:
其中x是n維向量,函數g就是Logisitic函數,是一組對特徵的參數。
其中
可以看到,將的所有值都映射到了之間。
sigmoid函數增加了線性模型的魯棒性,利用概率的形式避免了難以準確分類的情況。
接下來,嘗試把Logistic迴歸做一個變型,首先將標籤y=0變爲y=-1,然後將中的替換爲,將後面的替換成,如此就有了,因此除了y的變化,線性分類器和Logistic迴歸形式表示沒有區別。
1.2 線性分類的一個例子
舉一個簡單的例子作爲引入:如圖所示,現有一個二維平面,平面上有兩種不同的數據,假設這些數據的線性可分的,其中的超平面是一條直線。
這個超平面可以用分類函數表示,當等於0時,x便位於超平面上,而對應的點,反之的點,如圖所示: