機器學習演算法(四) 支援向量機

2021-09-11 13:54:16 字數 1018 閱讀 1246

一、介紹

1、svm (分類演算法)

(1)分類的決策邊界稱為超平面,在超平面一側的所有資料屬於某一類,在另一側的所有資料屬於另一類。

(2)希望找到離超平面最近的點,確保它們離超平面的距離盡可能的遠。這裡點到超平面的距離被稱為間隔(margin)。

(3)支援向量(support vector)就是指離分隔超平面最近的那些點。

2、svm分類:線性svm、非線性svm

(2)svm的核心是核函式

核函式的分類:線性核函式、多項式核函式、高斯核函式

3、svm是基於小樣本學習的演算法,主要處理有監督的二分類問題。

二、 原理說明

1、尋找最大間隔

超平面方程:wx+b=0

w是一組法向量,b是截距

某點到超平面的距離是|wx+b|/||w||

2、用於分類的svm本質上是乙個二分類模型,在乙個包含正例和反例的樣本集中,給出乙個超平面將樣本集的正例和反例分割開,並保證正例和反例之間的間隔最大。

三、演算法推導

超平面方程:wx+b=0

分類器:使用階躍函式對wx+b作用,即

假設一組資料集t

在監督學習中xn表示特徵向量,yn表示目標值,yn的取值是{-1,1}。

假設已經確定了分類超平面為(w,b),則資料點t到超平面的距離d=yn(wxn+b)

通過幾何間隔可以確定支援向量到超平面的距離,保證分割距離最大,從而確定了超平面的引數(w,x),其實就是乙個確定了方程然後求極值的問題。

對於一組資料,它的最優分分隔超平面有且只有乙個。

資料的目標值yn是通過正負號來區分的,yn決定了幾何間隔d的係數符號,把間隔距離是正數的歸為一類,是負數的歸為另一類,這樣在計算結果的時候方便對資料進行**,且間隔距離越大說明置信度越高。

求解:引入拉格朗日函式和拉格朗日乘子。朗格朗日乘子法是約束條件下求極值的方法。

拉格朗日函式式:

an為拉格朗日乘子,an>=0:xn訓練集的特徵資料,yn是訓練集的目標值,將資料代入後用二次求偏導的方法對優化問題求極值。

機器學習問與答(四) 支援向量機學習(下)

問題五 為什麼要滿足這個不等式約束?問題六 二次規劃演算法有哪些?序列最小化優化演算法具體是什麼樣的?二次規劃 qp 是求解一類特殊的數學優化問題的過程,它是乙個線性約束的二次優化問題,即多個變數的二次函式在這些變數上受線性約束的優化 最小化或最大化 問題。二次規劃是一類特殊的非線性規劃。二次規劃求...

機器學習(三) 支援向量機

支援向量機是一種判別模型,它構建乙個超平面使得距離這個超平面最近的點的距離最大。支援向量機的任務是在較低的模型泛化誤差下尋找乙個合適的超平面。如果超平面的函式是如下表示式 那麼超平面與資料點 label 1 之間的幾何關係為 定義 幾何間隔和函式間隔 因此,轉換為帶約束的優化問題 我們無法保證資料是...

機器學習筆記(二 支援向量機)

本次筆記基於mooc平台浙江大學的機器學習課程 對於乙個訓練樣本集,i 1 n,若存在 w,b 使得使得滿足下式,則是線性可分問題。要求這樣的乙個超平面 在二維平面中是一條直線 則要滿足以下公式 證明過程如下 首先要確認兩個事實,即 和 則可以根據線性可分問題的滿足式,用a來縮放 w,b 使得找到某...