SVM知識點彙總

夜空中最亮的不咚發表於2018-04-12

轉載: 原地址 http://www.cnblogs.com/chenshan-crystal/p/7618290.html


目錄

1. 簡單描述SVM(線性可分SVM的求解)

2. 線性SVM

3. 非線性SVM

1. 簡單描述SVM

SVM是一個分類演算法,通過尋找一個分離超平面,將正負樣本分開,並且正負樣本到超平面的間隔最大。分離超平面可以用y = wx + b來描述,樣本到超平面的相對距離可以用函式間隔r = | wx + b |描述。當y+ = 1, y - = -1時,r = | wx + b | = y( wx + b )。但由於當w,b成比例變化時,超平面不變,但樣本到超平面的距離會發生改變,因此改用幾何間隔r' = y( wx + b)/ ||w||。整個模型可表示如下圖:

約束最優化問題,利用拉格朗日對偶性將其轉化為對偶問題進行求解。拉格朗日對偶性的求解形式如下:

對照寫出SVM問題的拉格朗日函式:

原始問題是極小極大問題,將其轉換為對偶問題求解,並且只有當問題滿足KKT條件時,可將對偶問題的解作為原始問題的解。

於是SVM問題就變為:

關於拉格朗日運算元α的約束優化問題的求解:SMO演算法(序列最小最優化)

2. 線性SVM

當樣本無法被超平面完全分開時,引入鬆弛變數,使得不可分的部分樣本能被超平面分開。但當鬆弛變數過大時,SVM分類模型就失去意義了,因此對鬆弛變數進行懲罰。

這樣的線性SVM等價於以下最優化問題:

可以看到等價的這個目標函式是由合頁損失函式和正則化項組成的。這種自帶正則化項的特性,使得SVM有較好的泛化能力。

實際上大部分問題都不是線性可分問題,同時這樣的做法也可以避免線性可分SVM受異常點影響較大的問題。

3. 非線性可分SVM

此時,需要將樣本空間對映到更高維來解決,即Ø(x) = x,由於待求解的問題中存在xi * xj,因此對映後存在Ø(xi) * Ø(xj),難以求解。於是提出核函式K(xi, xj) = Ø(xi) * Ø(xj)。核函式有以下幾種:

1)線性核函式

2)徑向基核函式

所謂徑向基函式 (Radial Basis Function 簡稱 RBF), 就是某種沿徑向對稱的標量函式。 通常定義為空間中任一點x到某一中心xc之間歐氏距離的單調函式 , 可記作 k(||x-xc||), 其作用往往是區域性的 , 即當x遠離xc時函式取值很小。

徑向基核函式中最常見的是高斯核函式,同時還有高斯核函式的變種,指數核函式和拉普拉斯核函式。

高斯核函式:

指數核函式:

指數核函式就是高斯核函式的變種,它僅僅是將向量之間的L2距離調整為L1距離,這樣改動會對引數的依賴性降低,但是適用範圍相對狹窄。

拉普拉斯核函式:

拉普拉斯核完全等價於指數核,唯一的區別在於前者對引數的敏感性降低。
核函式的選擇(下面是吳恩達的見解):
1. 如果Feature的數量很大,跟樣本數量差不多,這時候選用LR或者是Linear Kernel的SVM
2. 如果Feature的數量比較小,樣本數量一般,不算大也不算小,選用SVM+Gaussian Kernel
3. 如果Feature的數量比較小,而樣本數量很多,需要手工新增一些feature變成第一種情況
https://www.zhihu.com/question/22337522/answer/133833789
https://www.zhihu.com/question/21883548/answer/112128499

相關文章