iT邦幫忙

2022 iThome 鐵人賽

DAY 7
0

今日大綱

  • 什麼是支持向量機?
  • 支持向量機種類
  • 支持向量機特點

什麼是支持向量機?

支持向量機可以處理迴歸與分類的問題,其目標為最大化間距 (Margin)。那什麼是支持向量?
支持向量為決定決策邊界的資料,於間距內與間距上的皆稱為支持向量 (Support vector),而間距外的資料對決策邊界無任何影響力。

支持向量機種類

  1. 線性分類
  • 硬性間距支持向量機 (Hard-margin support vector machine)
    Hard-margin不允許資料落在間距內,完整地分割樣本內的資料,如下圖。
    https://ithelp.ithome.com.tw/upload/images/20220920/20145688N8D73B4HoJ.jpg
  • 軟性間距支持向量機 (Soft-margin support vector machine)
    在一般的情況下,無法找到完美的分類器,軟性間距允許部分資料落在間距範圍內。
    https://ithelp.ithome.com.tw/upload/images/20220920/201456887kbITpG5Fb.jpg
  1. 非線性分類
    SVM引用核函數 (Kernel function)即可處理非線性的資料。假設有一個維度比訓練資料更高維空間存在,將這些資料映射到更高維的空間,找出能夠將這些資料分割的超平面 (Hyperplane)。
    https://ithelp.ithome.com.tw/upload/images/20220920/20145688mJXeFQur86.jpg

常見的kernel function有以下四個:
(1) Guaussian kernel:又稱Radial basis function (RBF),它能夠學習較複雜的決策邊界,在python如果沒有特別指定,kernel function default 為RBF。
(2) Linear kernel: 與線性支持向量機一樣。
(3)Sigmoid kernel: 此函數能夠學習曲線的決策邊界,此函數就是邏輯斯迴歸 (Logistic regression)所使用的。
(4)Polynomial kernel: 多項式kernel能夠學習圓形的決策邊界。
https://ithelp.ithome.com.tw/upload/images/20220920/20145688SbTLrxMWxx.png
圖片來源:Xie et al., 2018

支持向量機特點

  • 理論基礎是非線性對映,利用核函數向高維空間進行非線性映射。
  • SVM的目標是找到最適合分割資料的高平面 (Hyperplane),最大化分類邊界。
  • SVM模型是由少數的支持向量所決定的,計算的複雜度取決於支持向量的數目,避免了維度災難 (Curse of dimensionality)問題發生。
  • 在小樣本的資料集能夠比其他演算法得到更好的結果。

參考文獻

  • Xie, M., Wang, D., & Xie, L. (2018). A Feature-Weighted SVR Method Based on Kernel Space Feature. Algorithms, 11, 62.
  • 談繼勇, 郭子釗, 李劍, 佃松宜, 2021, 500個必問題:深度學習AI頂尖企業面試實況, ISBN: 9789865501938
  • 秋庭伸也, 2020, 零基礎入門的機器學習圖鑑, ISBN:9789865072414

感謝您的瀏覽,明天將介紹SVM的loss function以及實作,我們明天見!
/images/emoticon/emoticon29.gif


上一篇
【Day 6】邏輯斯迴歸實作 Logistic regression Implementation
下一篇
【Day 8】支持向量機實作 Support vector machine implementation
系列文
從機器學習到深度學習 - 30天搞懂常見演算法的基礎理論30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言