iT邦幫忙

2022 iThome 鐵人賽

DAY 28
0
AI & Data

Machine Learning A-Z 學習筆記系列 第 28

[Day 28] Kernel SVM (01)

  • 分享至 

  • xImage
  •  

https://ithelp.ithome.com.tw/upload/images/20221013/20152557iBvpl5ie8V.png

當數據是linearly separable: 傳統的SVM 可以將兩種數據很好的分類
當數據是not linearly separable: 無法在二維空間用單純的直線來將數據做分類
因此需要加上kernel setting 來解決這樣的問題
後面會從三點來講解:

  1. 從二維到高維空間的投射
  2. 如何用kernel function算出界線
  3. 幾種科學家常用的kernel function

從二維到高維空間的投射(A Higher-Dimensional Space)

一維問題

f = x - 5 -> 原先的點在一維線上, 難以用直線切開
f = (x-5)^2 -> 將這些點投射到二維平面上, 就可以用一條直線將點切分開來
https://ithelp.ithome.com.tw/upload/images/20221013/20152557Ap6fT0EoOp.png

二維問題

https://ithelp.ithome.com.tw/upload/images/20221013/201525571CPEqyyq78.png
現在問題變成二維的, 我們一樣將所有的點(x,y)座標增加z座標, 代表投影成三維空間中的點
這時候就可以用一個超平面(Hyperplane)將兩邊點切分開了
這邊忽略z 的算法, 只要知道z和x1,x2一定有關係
https://ithelp.ithome.com.tw/upload/images/20221013/20152557RbFHMXgETx.png
接著再將三維空間的超平面做投影, 降維到二維空間上, 剛剛的超平面就會變成一個圓
這個圓就是SVM分類邊界

compute-intensive

然而從計算角度來說非常耗時間, 因此需要引用kernel function可以避免繁瑣的計算並達到從高維->低維->高維的效果


上一篇
[Day27] SVM - Example
下一篇
[Day 29] Kernel SVM (02)
系列文
Machine Learning A-Z 學習筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言