ML:基礎技法學習
Package:scikit-learn
課程:機器學習技法
簡介:第二講 dual SVM (support vector machine)
原始演算法
個變數 跟 N 個條件
但因特徵轉換, 可能會很大甚至無限,導致計算過度複雜,甚至無法實現
所以此講的目的是,令變數的數量與資料量一樣,進而縮減其計算量,需搭配下一講
同時滿足兩邊 primal & dual
則同時滿足以下條件
sklearn.svm.SVC
Package:scikit-learn
課程:機器學習技法
簡介:第二講 dual SVM (support vector machine)
- 得
with
但因特徵轉換,
所以此講的目的是,令變數的數量與資料量一樣,進而縮減其計算量,需搭配下一講
Dual Model
KKT(Karush-Kuhn-Tucker) Optimality Conditins
若最佳解則同時滿足以下條件
- primal feasible
(原來問題的條件)- dual feasible
(對偶問題的條件)- dual-inner optimal
-
, (推導過程中得到的最佳化條件) - primal-inner optimal
-
(原來問題取 max 得到的條件,兩者必定至少一個為 0) - 事實上,若滿足以上條件的
,則必為最佳解
此為充要條件
Dual Hard-Margin SVM Algorithm
- dual SVM 的
通常稱作 內的值幾乎不為 0,需使用專門 for SVM 的 QP solver- 如何得
- 如何得 b
- 任意
,則 (by KKT) -
的意義- 只有
才會影響 的值 的 必定落在邊界,因- 只有
的 才稱作 support vectors
落在邊界上的 不見得是 support vectors - SV
位於邊界
SVM 概念
- 除了 SV 以外的資料皆是無用的
-
是由 SV 所表示出來 為 的線性組合- 稱為
可被資料所表示 時,以下的演算法也是如此的- PLA
為錯誤的次數- 所以 PLA 的
是由錯誤的資料所表示出來 - GD-based LogReg/LinReg
- SGD-based LogReg/LinReg
- 適用範圍
- Primal
夠小- Dual
夠小
參考
【整理】深入理解拉格朗日乘子法(Lagrange Multiplier) 和KKT条件sklearn.svm.SVC
留言
張貼留言