07SVM-軟間隔模型
六、硬間隔和軟間隔模型
之前兩章介紹的內容是硬間隔模型:
《05 SVM – 支援向量機 – 概念、線性可分》
《06 SVM – 線性可分SVM演算法和案例》
線性可分SVM中要求資料必須是線性可分的,才可以找到分類的超平面,但是有的時候線性資料集中存在少量的異常點,由於這些異常點導致了資料集不能夠線性劃分;直白來講就是:正常資料本身是線性可分的,但是由於存在異常點資料,導致資料集不能夠線性可分;
如果線性資料中存在異常點導致沒法直接使用SVM線性分割模型的時候,我們可以通過引入__軟間隔__的概念來解決這個問題;
__硬間隔:__可以認為線性劃分SVM中的距離度量就是硬間隔,線上性劃分SVM中,要求函式距離一定是大於1的,最大化硬間隔條件為:
軟間隔: SVM對於訓練集中的每個樣本都引入一個鬆弛因子(ξ),使得函式距離加上鬆弛因子後的值是大於等於1;這表示相對於硬間隔,對樣本到超平面距離的要求放鬆了。
鬆弛因子(ξ)越大,表示樣本點離超平面越近。如果鬆弛因子大於1,那麼表示允許該樣本點分錯。
所以說加入鬆弛因子是有成本的,過大的鬆弛因子可能會導致模型分類錯誤,所以最終的目標函式就轉換成:
__PS:__函式中的C>0是懲罰引數,是一個超引數,類似L1/L2 norm的引數;C越大表示對誤分類的懲罰越大,C越小表示對誤分類的懲罰越小;C值的給定需要調參。
優化損失函式的公式推導:
1、同線性可分SVM,構造軟間隔最大化的約束問題對應的拉格朗日函式如下:
2、從而將我們的優化目標函式轉換為:
3、優化目標同樣滿足KKT條件,所以使用拉格朗日對偶將優化問題轉換為等價的對偶問題:
4、先求優化函式對於w、b、ξ的極小值,這個可以通過分別對優化函式L求w、b、ξ的偏導數得,從而可以得到w、b、ξ關於β和μ之間的關係。
5、將w、b、ξ的值帶入L函式中,就可以消去優化函式中的w、b、ξ,定義優化之後的函式如下:
6、最終優化後的目標函式/損失函式和線性可分SVM模型基本一樣,除了約束條件不同而已, 也就是說也可以使用SMO演算法來求解。
硬間隔和軟間隔模型小結:
在__硬間隔__最大化的時候,支援向量比較簡單,就是離超平面的函式距離為1的樣本點就是支援向量。
在__軟間隔__中,根據KKT條件中的對偶互補條件: β(y(wx+b)-1+ξ)=0,從而有:當0<βi≤C的時候,並且ξi=0的樣本點均是支援向量(即所有的0<βi
PS: 軟間隔和硬間隔中的支援向量的規則是一樣的;
相關文章
- 深入理解SVM,軟間隔與對偶問題
- 支援向量機 (二): 軟間隔 svm 與 核函式函式
- 函式間隔(functional margin)和幾何間隔(geometric margin)函式Function
- 機器學習,詳解SVM軟間隔與對偶問題機器學習
- [20200402]增量檢查點時間間隔.txt
- 間隔呼叫方法(setInterval與setTimeout)
- 連續順子間隔思路
- 有可以間隔兩個月提醒的電腦桌面便籤軟體嗎?
- echarts間隔餅圖實現方法Echarts
- 怎麼去除img之間存在的間隔縫隙?
- Eureka 多環境隔離方案(包含本地開發人員間隔離)
- 如何修改Fiori Launchpad裡Tile計數呼叫的時間間隔
- 機器學習之支援向量與間隔機器學習
- javascript 手機號間隔顯示 123 4567 8910JavaScript
- 演示如何建立 POSIX 相容的間隔定時器定時器
- 兔盯雲下發定位上報間隔指令
- 軟體測試模型-其他模型 (W 模型|H 模型|X 模型)模型
- 關於MySql 設定一個間隔時間 執行一個事件MySql事件
- iOS UIButton之防止重複點選(控制事件響應時間間隔)iOSUI事件
- win10桌面圖示間隔怎麼調整_win10桌面圖示間隔如何設定Win10
- 軟體測試模型-瀑布模型模型
- 軟體測試模型-V 模型模型
- 軟體測試模型-敏捷模型模型敏捷
- 如何使用SQL計算寶寶每次吃奶的時間間隔(文末含PPT)SQL
- Actor模型淺析 一致性和隔離性模型
- Android之TextView設定drawableRight等圖片文字間隔AndroidTextView
- mobaxterm隔一段時間就斷開連線
- win10桌面圖示間隔怎麼還原_win10桌面圖示間隔如何恢復預設Win10
- 軟體設計原則—介面隔離原則
- Android佈局中動態新增ImageView並設定間隔AndroidView
- 按條件查出兩條記錄後求其位置間隔
- 軟體測試模型模型
- 分散式系統監視工具WGCLOUD - 監測docker容器的採集時間間隔分散式GCCloudDocker
- 不同時間段的光色模型模型
- SpringBoot整合Quartz實現動態修改定時任務間隔Spring Bootquartz
- excel怎麼批量間隔插行 excel表格如何隔行插行Excel
- excel怎麼批次間隔插行 excel表格如何隔行插行Excel
- [Python輿情分析] 二.時間間隔分佈研究及冪律分佈圖繪製Python