1. 程式人生 > >機器學習知識點查漏補缺(支持向量機)

機器學習知識點查漏補缺(支持向量機)

技巧 條件 blog 更多 nbsp pos .com 最優化 應該

一、模型概念

支持向量機的模型基本模型是建立在特征空間上的最大間隔線性分類器,通過使用核技巧,可以使它成為非線性分類器。

當訓練數據線性可分時,通過硬間隔最大化,學習一個線性分類器,即線性可分支持向量機;當訓練數據近似線性可分時,通過軟間隔最大化,學習一個線性分類器,即軟間隔支持向量機;當訓練數據線性不可分時,通過使用核技巧及軟間隔最大化,學習非線性支持向量機。

支持向量機的幾何意義很直觀,用分離超平面分隔線性可分和近似線性可分的數據集(可對每個線性不可分點設置一定的緩沖量,這個緩沖量也會進入最後的最優化目標函數裏面),保證分隔的同時,最大化分隔間距。 二、優化目標函數 所以其優化目標函數其實也很直觀,就是最大化所有類別點到分隔超平面的距離和。只是目標函數優化過程中會發現,目標函數的最優值只由離分隔平面最近的向量點決定,這也是模型為什麽叫支持向量機的原因。 其中,在我理解的時候,覺得有一個難理解的點,分隔超平面到間隔邊界距離(其實是函數間隔,實際距離應該是幾何間隔)為什麽就為1?其實只是認為選定的一個規範化標準而已,取幾何間隔為1. 技術分享圖片


而其最終的優化目標函數如下:

技術分享圖片

對於近似線性可分的問題,需要給每個樣本點一個松弛變量,也就是一個緩沖,

技術分享圖片

從而其優化目標函數變為:

技術分享圖片

三、對偶問題

而實際對支持向量機的目標函數優化,並不是直接對其優化,而是轉化成其對偶問題優化。

技術分享圖片

這樣的優點是:

1、對偶問題一般相對更簡單,對偶問題一定是凸問題(對偶函數是拉格朗日函數的相對乘子變量的逐點下確界,對偶函數必然是凹函數,而求其最大化問題,必然為凸問題),同時也因為普遍的設計變量相對於約束條件更多,對偶反轉之後,優化變量變少;另外,某些時候對偶變量具有一定的實際意義。

2、在支持向量機中,對偶問題帶來最大優點是,對偶問題目標函數具有變量的內積形式,用非線性內積形式對變量內積形式的替換,可以方便的對線性空間進行某種扭曲,從而實現非線性的分隔問題。特別的,用核函數來替換,甚至不用考慮具體的非線性扭曲的變換形式,只考慮內積變換的結果就可以。

四、核函數

機器學習知識點查漏補缺(支持向量機)