支援向量機學習總結

2021-09-06 14:43:23 字數 1713 閱讀 1738

1.支援向量機是什麼?

支援向量機是乙個超平面分類演算法,他通過對已有標記的資料進行訓練得出分類的超平面,對未知標記的點進行分類.

2.支援向量機的工作原理?

線性可分情況:

1.求平面wx+b=0,即求w和b的值.使得樣本集中的點到平面的距離min yi(wtxi+b)/||w||的值關於xi最小.實際上是求

maxw,b (minx

i (yi(wtxi+b)/||w||))

因為w,b前加乙個係數不影響平面,所以令所有的yi(wtxi+b)>=1.其中最小的那些取等號.取等號的即為支援向量.

這裡實際上是對w和b做了一次變換,設最小的那個點到平面的距離為r.令w'=w/r,b'=b/r.

2.轉化為lagrange dual problem.

在加入假設之後實際上是求

maxw,b 1/||w||==>可以轉化為minw ||w||2/2

s.t. yi(wtxi+b)>=1 i=1,...n

其lagrange函式為

minw,b θ(w)=minw,b maxαi,αi>0

l(α,w,b)=||w||2/2-σiαi(yi(wtxi+b)-1)

因為是對αi求最值,所以lagrange函式問題θ(w)與原問題等價.這相當於把二次規劃的限制條件放到了目標函式中去了.

這裡是先求max再求min.因為svm的lagrange函式滿足slater條件,同時滿足kkt條件.所以先求max再求min與先求min再求max得出的結果是一樣的.如果不滿足條件則

max min f(x,y) 是 min max f(x,y)的乙個下界.乙個是頂上最矮的,乙個是地上最高的. 因而我們求其對偶問題

maxαi,αi>0 

minw,b  l(α,w,b)=||w||2/2-σiαi(yi(wtxi+b)-1)    (1)

又有滿足ktt條件: l(α,w,b)對w,b求導為0.即得

w=σi αiyixi    (2)

σi αiyi = 0    (3)

將(2)代入(1)得

l(α,w,b)=σiαi -(1/2)*σj,iαiαjyiyjxt

ixj

這裡消掉了w和b.成了α的函式,同時還有σi αiyi = 0.於是這就是轉化成的新的lagrange dual problem:

maxαi,αi>0 l(α,w,b)=σiαi -(1/2)*σj,iαiαjyiyjxt

ixjσi αiyi = 0 其中αi>=0

這一問題可以用smo(序列最小最優化演算法)求解α就可以通過(2)和wx+b=0解出w和b.最後給測試集x進行判斷時就計算wx+b就可以了.

另外可以直接使用(2)匯出wx+b=σi αiyixt

ix+b.這裡可以用支援向量和未知向量的內積來確認未知向量的型別.

線性不可分情況:

將資料從低維轉化為高維,使其線性可分,然後使用同樣的方法對其求解α,w,b.然後通過計算wx+b來確認.當然,這時的難點在於低維到高維的轉化.同時,這裡求出的w,b也是高維空間中的值,因為只有高維空間才線性可分,滿足kkt條件.所有未知向量需要先轉化為高維向量再代入計算.這樣是非常麻煩的.同時高維向量的內積計算起來也很難.

這裡有核函式將高維空間中的內積轉化為低維空間中的計算.這樣通過求α就可以進行計算了.其中有多項式核函式和指數核函式.

因為計算可以轉化為高維空間中的內積,所以才可以使用核函式的方法.否則svm的應用會更加難以推廣

學習總結 支援向量機(SVM)

支援向量機 support vector machine,svm 是一類按監督學習 supervised learning 方式對資料進行二元分類的廣義線性分類器 generalized linear classifier 其決策邊界是對學習樣本求解的最大邊距超平面 maximum margin h...

支援向量機學習(一)

好像現在寫這個有點晚了,大家都用的少了,現在都在用卷積神經網路來進行模式識別。但是了解下內部的原理還是很好的,畢竟知識都是互通的,只有懂得多了才能在原有的基礎上進行創新,站在巨人的肩膀才能看的遠,我好像又在灌雞湯了,言歸正傳,快跑題了,哈哈 先說支援向量機是用來幹什麼的,簡單點就是用來分類的乙個演算...

機器學習 支援向量機

線性可分支援向量機 1.回顧感知機模型 2.函式間隔與幾何間隔 3.支援向量 4.svm模型目標函式與優化 5.線性可分svm的演算法過程 線性可分支援向量機 1.軟間隔最大化 2.線性分類svm的軟間隔最大化目標函式的優化 3.軟間隔最大化時的支援向量 4.軟間隔最大化的線性可分svm的演算法過程...