支援向量機(SVM)演算法

2021-08-01 13:40:40 字數 1370 閱讀 7683

支援向量機(support vector machine)是一種分類演算法,通過尋求結構化風險最小來提高學習機泛化能力,實現經驗風險和置信範圍的最小化,從而達到在統計樣本量較少的情況下,亦能獲得良好統計規律的目的。通俗來講,它是一種二類分類模型,其基本模型定義為特徵空間上的間隔最大的線性分類器,即支援向量機的學習策略便是間隔最大化,最終可轉化為乙個凸二次規劃問題的求解。

具體原理:

1. 在n維空間中找到乙個分類超平面,將空間上的點分類。如下圖是線性分類的例子。

2. 一般而言,乙個點距離超平面的遠近可以表示為分類**的確信或準確程度。svm就是要最大化這個間隔值。而在虛線上的點便叫做支援向量supprot verctor。

3. 實際中,我們會經常遇到線性不可分的樣例,此時,我們的常用做法是把樣例特徵對映到高維空間中去(如下圖);

3. 線性不可分對映到高維空間,可能會導致維度大小高到可怕的(19維乃至無窮維的例子),導致計算複雜。核函式的價值在於它雖然也是講特徵進行從低維到高維的轉換,但核函式絕就絕在它事先在低維上進行計算,而將實質上的分類效果表現在了高維上,也就如上文所說的避免了直接在高維空間中的複雜計算。

4.使用鬆弛變數處理資料噪音

svm的優點:

1. svm學習問題可以表示為凸優化問題,因此可以利用已知的有效演算法發現目標函式的全域性最小值。而其他分類方法(如基於規則的分類器和人工神經網路)都採用一種基於貪心學習的策略來搜尋假設空間,這種方法一般只能獲得區域性最優解。

2. 假設現在你是乙個農場主,圈養了一批羊群,但為預防狼群襲擊羊群,你需要搭建乙個籬笆來把羊群圍起來。但是籬笆應該建在**呢?你很可能需要依據牛群和狼群的位置建立乙個「分類器」,比較下圖這幾種不同的分類器,我們可以看到svm完成了乙個很完美的解決方案。

這個例子從側面簡單說明了svm使用非線性分類器的優勢,而邏輯模式以及決策樹模式都是使用了直線方法。

摘抄自

分類演算法SVM(支援向量機

支援向量機 support vector machine svm 的主要思想是 建立乙個最優決策超平面,使得該平面兩側距離該平面最近的兩類樣本之間的距離最大化,從而對分類問題提供良好的泛化能力。對於乙個多維的樣本集,系統隨機產生乙個超平面並不斷移動,對樣本進行分類,直到訓練樣本中屬於不同類別的樣本點...

SVM 支援向量機演算法概述

對不起,看到好東西忍不住搬過來了推薦大家去這看這裡 一 svm的背景簡介 支援向量機 support vector machine 是cortes和vapnik於1995年首先提出的,它在解決小樣本 非線性及高維模式識別中表現出許多特有的優勢,並能夠推廣應用到函式擬合等其他機器學習問題中 10 支援...

支援向量機(SVM)

簡介 術語 支援向量機 svm 是乙個類分類器,正式的定義是乙個能夠將不同類樣本在樣本空間分隔的超平面。換句話說,給定一些標記 label 好的訓練樣本 監督式學習 svm演算法輸出乙個最優化的分隔超平面。首先我們假定有乙個未知的欲分類的集合,可以進行分割,但是我們不知道分割的函式 超平面,也叫真實...