在統計學習方法這個板塊中,我們學習了多個分類演算法,比如邏輯斯蒂回歸,在邏輯斯蒂回歸模型中,我們對資料集有預先的假設——資料集滿足邏輯斯蒂分布。
今天我們學習另外一種分類模型,這種分類模型對資料集沒有做任何假設,它的適用性更廣,當我們尚不明確資料分布特性時,使用這個模型分類可能更合適。
這個模型叫svm,中文名叫支援向量機,是一種經典而普適的分類模型。
支援向量機是一種分類模型,它的輸出結果是乙個分離超平面,這讓我們想到了「感知機」這個古老的模型。
我們回憶一下,感知機模型輸出結果也是乙個分離超平面,不過這個分離超平面有無數個,因為感知機只要求把資料集分開就好。我們再來看看支援向量機,它的輸出也是乙個分離超平面,但只有乙個平面能給滿足svm模型,為什麼呢?
因為svm的分類原理是,找到與兩類資料間隔均最大的分離超平面,通常,滿足這種條件的分離超平面只有乙個。我們再來看看支援向量機分類,
線性可分支援向量機——求解策略,硬間隔最大化
線性支援向量機——求解策略,軟間隔最大化
非線性支援向量機——求解策略,核技巧+軟間隔最大化
剛才我們提到了svm的求解策略——間隔最大化。那麼間隔是指什麼呢?
但是呢,函式間隔有個問題,
於是產生了幾何間隔這個概念。
間隔的定義如上,它想表達什麼意義呢?
正確性:yi與()符號相同,則說明分類正確
確信度:yi()值的大小,說明某點與分離超平面的間隔越大,分類越正確
支援向量機之所以叫支援向量機,是因為其分離超平面位置的是由幾個在分界平面上的樣本點決定的,這幾個樣本點就叫「支援向量」,我們來看看圖:
圖中被圈出來的點就是支援向量,中間的實線是分離超平面,可以看到,分離超平面完全由支援向量決定。
介紹了以上基本概念後,我們來學習針對三種型別的資料集的svm。
定義如下:
學習策略:硬間隔最大化
svm間隔邊界的距離是2/||w||,於是要使該距離最大,也就是最小化||w||,於是問題轉化為最小化||w||**2 (平方是因為w的l2範數是根號下的,平方可以去除根號,方便計算)原始問題的目標函式比較簡單,就是最小化引數w的l2範數,如果不考慮約束條件,很好求解,直接對w求導=0即可。
但是呢,原始問題的約束條件讓求解比較麻煩,於是拉格朗日大神來了,我們使用拉格朗日對偶性,將原始問題轉化為對偶問題,如下。
可以看到,在對偶問題中,我們利用拉格朗日對偶性,將原始問題的約束條件放入了對偶問題的目標函式中,使整個問題更好求解。
我們的目標是求分離超平面wx+b=0,即求w和b,對偶問題中我們求出了alpha,於是可以使用上述公式計算得到w和b,其中,只有支援向量的alpha>0
線性可分的資料其實很少,對於線性不可分資料集的分類任務,線性可分支援向量機難以勝任》線性支援向量機。
定義如下:
學習策略:軟間隔最大化
對每個樣本點引入乙個鬆弛變數ebsilong_i這裡我們直接介紹對偶演算法:
我來看看線性支援向量機的支援向量在**:
軟間隔支援向量的位置
線性支援向量機學習的另一種解釋:我們從目標函式這個角度來看一下,它目標函式長這樣,有點像將要合起來的書頁,因此這個損失函式又叫「合頁損失函式」。
在實際資料集中,有的資料是非線性的,這時候還可以使用支援向量機麼?
當然可以!
我們可以這樣做:現在,大俠沒有棍可以很好幫他分開兩種球了,現在怎麼辦呢?當然像所有武俠片中一樣大俠桌子一拍,球飛到空中。然後,憑藉大俠的輕功,大俠抓起一張紙,插到了兩種球的中間。(這句話譯自一篇博文)
就像這張圖:
這就是核技巧,篇幅限制,這裡對核技巧就不展開講解了,我們只要知道對於非線性資料集,可以使用核技巧將資料集轉化為高維空間的線性資料集,從而利用軟間隔最大化求解它。
以上就是支援向量機的簡單介紹以及對於三種型別的資料集,如何使用svm的演算法。
這裡我們提出乙個問題:當資料量很大時,以上提出的演算法求解複雜度呈指數上公升,演算法會變得十分低效,該怎麼辦呢?
提示是,在對偶問題中,每次只求解優化兩個alpha的值,然後遍歷求解的方法與一次求解所有alpha的方法得到的結果是完全一致的。
其實這就是smo(序列最小優化演算法)的原理,下期文章我會簡單介紹smo演算法原理,然後自己寫乙個smo**來實現,敬請期待!!
《統計學習方法》 李航 chapter7
please explain support vector machines (svm) like i am a 5 year old
統計學習方法 SVM學習筆記(一)
1.線性可分支援向量機 定義 通過給出的線性可分的訓練集,通過間隔最大化的求解凸二次規劃問題學習得到分割超平面 w x b 0以及相應的分類決策函式 f x sign w x b 預備知識介紹 如圖所示,圖中的實線就是乙個分割超平面,在圖中可以把兩類分開的超平面有無數個,我們要做的就是尋找乙個間隔最...
統計學習方法 1 統計學習方法概論
統計學習的主要特點是 1 統計學習以計算機及網路為平台,是建立在計算機及網路之上的 2 統計學習以資料為研究物件,是資料驅動的學科 3 統計學習的目的是對資料進行 與分析 4 統計學習以方法為中心,統計學習方法構建模型並應用模型進行 與分析 5 統計學習是概率論 統計學 資訊理論 計算理論 最優化理...
統計學習方法
這兩天翻了一下這本書,做個筆記,方便下次細看。本書主要講解統計學習中用到的監督學習。介紹了一些模型機器演算法。當參考書不錯,不怎麼適合死磕。第一章 主要介紹機器學習,統計學習的基本步驟,以及常用的表示方法。寫的比較系統,對於這個比較不熟悉的,可以好好看看。因為常用的模型就是這樣表示的,懂了這個看公式...