SVM原理
參考:
http://eric-gcm.iteye.com/blog/1981771
https://blog.csdn.net/wsj998689aa/article/details/47027365
(1)SVM的引入,線性可分(通常,先是看二維)——後在一併假設在高維空間中也能找到一條線性可分的直線;由於直線可旋轉,因此滿足條件的有很多條,怎麼選擇最好的那一條,需要引入刻畫該線性可分模型的分割,注意(此處兩點定義:(1)一組資料(一組樣本)到該線性可分直線的間隔的定義:取得是所有點中到這條直線間隔中最小的那條間隔;(2)模型好壞的定義:使正負樣本距離這條線性直線間隔最大的那條直線;在此基礎上,理論推導,首先引入線性可分表示式,定義距離,將前面兩個定義轉化為約束和目標函式,通過進一步轉化,(考慮到引數和截距成倍增長,會導致間隔翻4倍,但其實平分直線並沒有改變,因此,進行歸一化),將最大化目標函式轉化成最小化(是二次方的),由於條件約束是線性的,因此問題為二次優化,可用現成的包,也可用拉格朗日對偶極值法求;
上述思路只能處理線性情況,要處理非線性情況,需要考慮到核函式;
核函式解決了:原本高維空間需要用自變數多次組合表達的困難情形,比如2個變數,可以表達高維空間中5個基向量(包含常數項);3個變數對應19個基向量,諸如此類…………..;數量隨著自變數維度增加,高維空間表達越來越複雜;因此,通過一種技術,類似於PCA裡面的一種推導,高維空間表示:可以通過低維空間的自變數作為基向量,將低維空間自變數進行構造模型,再通過一個高維對映得到;;這個與先將低維向量對映到高維向量,然後在高維向量中建模,其可以達到的結果一樣,這就是核函式的功效;一個是F(x),F(y)——先對映到高維建模;一個是F(x,y)——直接基於原來空間建模,一樣!!!
總結,核心理論點:
(1)樣本點(正樣本點)到平分線的間隔;——最初始的表示,進一步轉乘約束
(2)正樣本、負樣本點到平分線的間隔——目標函式
(3)將約束及目標函式組合,構成最終模型;
(4)通過拉格朗日對偶方法求取模型
上述是針對線性可分,針對非線性可分,引入核函式;
相關文章
- Svm演算法原理及實現演算法
- 機器學習 | 深入SVM原理及模型推導(一)機器學習模型
- SVM 支援向量機演算法-原理篇演算法
- SVM
- [機器學習]SVM---硬間隔最大化數學原理機器學習
- 支援向量機(SVM)從原理到python程式碼實現Python
- 支援向量機SVM:從數學原理到實際應用
- Python機器學習筆記:SVM(1)——SVM概述Python機器學習筆記
- Python機器學習筆記:SVM(3)——證明SVMPython機器學習筆記
- 支援向量機(Support Vector Machine,SVM)—— 線性SVMMac
- opencv中SVMOpenCV
- OpenCV 與 SVMOpenCV
- opencv SVM 使用OpenCV
- Python機器學習筆記:SVM(2)——SVM核函式Python機器學習筆記函式
- 學習SVM(五)理解線性SVM的鬆弛因子
- 學習SVM(四) 理解SVM中的支援向量(Support Vector)
- opencv SVM的使用OpenCV
- opencv + SVM 程式碼OpenCV
- opencv svm分類OpenCV
- OpenCV的SVM用法OpenCV
- 學習OpenCV——SVMOpenCV
- SVM演算法演算法
- 第八篇:支援向量機 (SVM)分類器原理分析與基本應用
- 機器學習:支援向量機(SVM)機器學習
- opencv SVM分類DemoOpenCV
- 機器學習——支援向量機(SVM)機器學習
- opencv中svm原始碼OpenCV原始碼
- svm 多分類機制
- 學習SVM(一) SVM模型訓練與分類的OpenCV實現模型OpenCV
- AI面試之SVM推導AI面試
- OpenCV進階---介紹SVMOpenCV
- OpenCV中使用SVM簡介OpenCV
- [譯] 支援向量機(SVM)教程
- 機器學習——支援向量機SVM(一)機器學習
- SVM知識點彙總
- svm的smo演算法演算法
- OpenCL中的SVM使用案例
- Scikit-learn SVM 實現