ML:基礎技法學習
Package:scikit-learn
課程:機器學習技法
簡介:第三講 Kernel SVM (support vector machine)
inner product in
如何簡化 ?將 簡化為
因使用 Polynomial Kernel,故稱作 Polynomial SVM
事實上調整 kernel 就等同在調整 margin definition
因 kernel 隱含映射的函數,不同的映射函數,即使對應到同樣的 , 的位置也都不一樣
如下圖,SV 的點完全不同
因有最大化 margin 的限制,故即使是十次方,表示仍可接受,甚至 margin 為 0.1
Linear Kernel 就是最原本的線性轉換,
記住,若 Linear Kernel 已足夠好,那就無需往下做,越簡單越準確
如上,解其實就是在 SV 上的高斯函數的線性組合
因為此特性也叫做 Radial Basis Function (RBF) kernel
能做無限多維,又有 maximum margin 限制,是否就很美好呢?不
當 選太大時,仍會有 overfit 的風險
甚至無限大時就等同於 ,完全跟訓練點一樣才會為 1
sklearn.svm.SVC
Package:scikit-learn
課程:機器學習技法
簡介:第三講 Kernel SVM (support vector machine)
dual SVM model
如何簡化
Kernel Hard-Margin SVM Algorithm
General Polynomial Kernel
事實上調整 kernel 就等同在調整 margin definition
因 kernel 隱含映射的函數,不同的映射函數,即使對應到同樣的
如下圖,SV 的點完全不同
因有最大化 margin 的限制,故即使是十次方,表示仍可接受,甚至 margin 為 0.1
Linear Kernel 就是最原本的線性轉換,
記住,若 Linear Kernel 已足夠好,那就無需往下做,越簡單越準確
Infinite Dimensional Transform (Gaussian SVM)
因為此特性也叫做 Radial Basis Function (RBF) kernel
能做無限多維,又有 maximum margin 限制,是否就很美好呢?不
當
甚至無限大時就等同於
Kernel 比較
- Kernel 代表著兩者之間的相似性,因為是內積
- Linear Kernel
- 優點
- 安全
- 快速,使用特別的 QP solver
- 可被解釋
- 缺點
- 若不是 線性可分 無法分類
- Polynomial Kernel
- Q 若很低次,有時候回到原本的 primal 解法,用特別的 solver,還比較快
- 優點
- 比 linear 限制少一點,不需要 線性可分
- 透過 Q 表示限制轉換空間的維度
- 缺點
- 數值範圍太大會影響電腦處理
小於 1 時,Q 比較大會近乎 0
大於 1 時,Q 比較大會是很大的值 - 參數太多
- Gaussian Kernel
- 優點
- 最強大
- 數值範圍比 polynomial 好
- 參數只有一個
- 缺點
- 無法解釋在做什麼
- 計算慢
- 容易 overfit
Mercer's condition
可自定 kernel,只要 Kernel Matrix 滿足條件,以下為充要條件
- symmetric
- let
,此 Kernel Matrix 必定是半正定
參考
支持向量机(三)核函数sklearn.svm.SVC
留言
張貼留言