機器學習(三) 支援向量機(神經網路對比分析)

2021-10-07 16:48:54 字數 2650 閱讀 1959

支援向量機的概念:

在統計學習理論中發展起來的支援向量機(support vector machines, svm)方法是一種新的通用學習方法,表現出理論和實踐上的優勢。

svm在非線性分類、函式逼近、模式識別等應用中有非常好的推廣能力,擺脫了長期以來形成的從生物仿生學的角度構建學習機器的束縛。此外,基於svm的快速迭代方法和相關的簡化演算法也得到發展。

與神經網路相比,支援向量機方法具有更堅實的數學理論基礎,可以有效地解決有限樣本條件下的高維資料模型構建問題,並具有泛化能力強、收斂到全域性最優、維數不敏感等優點。

目前,統計學習理論和svm已經成為繼神經網路之後機器學習領域最熱門的研究方向之一,並有力推動了機器學習理論的發展。svm已被初步研究使用在核天線陣列處理的波束成形,智慧型天線系統的波達角估計,盲均衡器的設計;盲波束成形器設計。

支援向量機中分類和**:

svm分類,就是找到乙個平面,讓兩個分類集合的支援向量或者所有的資料(lssvm)離分類平面最遠;

svr回歸,就是找到乙個回歸平面,讓乙個集合的所有資料到該平面的距離最近。

svr是支援向量回歸(support vector regression)的英文縮寫,是支援向量機(svm)的重要的應用分支。

支援向量機和神經網路的對比:

二者在形式上有幾分相似,但實際上有很大不同。

簡而言之,神經網路是個「黑匣子」,優化目標是基於經驗風險最小化,易陷入區域性最優,訓練結果不太穩定,一般需要大樣本;

而支援向量機有嚴格的理論和數學基礎,基於結構風險最小化原則, 泛化能力優於前者,演算法具有全域性最優性, 是針對小樣本統計的理論。

目前來看,雖然二者均為機器學習領域非常流行的方法,但後者在很多方面的應用一般都優於前者。

svm 就是個分類器,它用於回歸的時候稱為svr(support vector regression),svm和svr本質上都一樣。下圖就是svm分類:

svm的目的:尋找到乙個超平面使樣本分成兩類,並且間隔最大。

神經網路和支援向量機的優缺點對比:

1、神經網路優缺點

優點:神經網路有很強的非線性擬合能力,可對映任意複雜的非線性關係,而且學習規則簡單,便於計算機實現。具有很強的魯棒性、記憶能力、非線性對映能力以及強大的自學習能力,因此有很大的應用市場。

缺點:(1)最嚴重的問題是沒能力來解釋自己的推理過程和推理依據。

(2)不能向使用者提出必要的詢問,而且當資料不充分的時候,神經網路就無法進行工作。

(3)把一切問題的特徵都變為數字,把一切推理都變為數值計算,其結果勢必是丟失資訊。

(4)理論和學習演算法還有待於進一步完善和提高。

2、svm的優缺點

優點:(1)非線性對映是svm方法的理論基礎,svm利用內積核函式代替向高維空間的非線性對映;

(2)對特徵空間劃分的最優超平面是svm的目標,最大化分類邊際的思想是svm方法的核心;

(3)支援向量是svm的訓練結果,在svm分類決策中起決定作用的是支援向量.

(4)svm 是一種有堅實理論基礎的新穎的小樣本學習方法.它基本上不涉及概率測度及大數定律等,因此不同於現有的統計方法.從本質上看,它避開了從歸納到演繹的傳統過程,實現了高效的從訓練樣本到預報樣本的「轉導推理」,大大簡化了通常的分類和回歸等問題.

(5)svm 的最終決策函式只由少數的支援向量所確定,計算的複雜性取決於支援向量的數目,而不是樣本空間的維數,這在某種意義上避免了「維數災難」.

(6)少數支援向量決定了最終結果,這不但可以幫助我們抓住關鍵樣本、「剔除」大量冗餘樣本,而且注定了該方法不但演算法簡單,而且具有較好的「魯棒」性.這種「魯棒」性主要體現在:

①增、刪非支援向量樣本對模型沒有影響;

②支援向量樣本集具有一定的魯棒性;

③有些成功的應用中,svm 方法對核的選取不敏感

缺點:(1) svm演算法對大規模訓練樣本難以實施

由於svm是借助二次規劃來求解支援向量,而求解二次規劃將涉及m階矩陣的計算(m為樣本的個數),當m數目很大時該矩陣的儲存和計算將耗費大量的機器記憶體和運算時間.針對以上問題的主要改進有有j.platt的smo演算法、t.joachims的svm、c.j.c.burges等的pcgc、張學工的csvm以及o.l.mangasarian等的sor演算法

(2) 用svm解決多分類問題存在困難

經典的支援向量機演算法只給出了二類分類的演算法,而在資料探勘的實際應用中,一般要解決多類的分類問題.可以通過多個二類支援向量機的組合來解決.主要有一對多組合模式、一對一組合模式和svm決策樹;再就是通過構造多個分類器的組合來解決.主要原理是克服svm固有的缺點,結合其他演算法的優勢,解決多類問題的分類精度.如:與粗集理論結合,形成一種優勢互補的多類問題的組合分類器。

總結:

神經網路的優勢要在資料量很大,計算力很強的時候才能體現,資料量小的話,很多任務上的表現都不是很好。

svm屬於非引數方法,擁有很強的理論基礎和統計保障。損失函式擁有全域性最優解,而且當資料量不大的時候,收斂速度很快,超引數即便需要調整,但也有具體的含義,比如高斯kernel的大小可以理解為資料點之間的中位數距離(median heuristic)。在神經網路普及之前,引領了機器學習的主流,那時候理論和實驗都同樣重要。

機器學習(三) 支援向量機

支援向量機是一種判別模型,它構建乙個超平面使得距離這個超平面最近的點的距離最大。支援向量機的任務是在較低的模型泛化誤差下尋找乙個合適的超平面。如果超平面的函式是如下表示式 那麼超平面與資料點 label 1 之間的幾何關係為 定義 幾何間隔和函式間隔 因此,轉換為帶約束的優化問題 我們無法保證資料是...

機器學習(三)支援向量機

本文只涉及二分類支援向量機。支援向量機問題可以分為三種情況來討論 1 硬間隔支援向量機 用於可以被乙個超平面嚴格分開的問題中,又稱為線性可分支援向量機 2 軟間隔支援向量機 用於可以被乙個超平面非嚴格分開的問題中,又稱線性支援向量機 3 核支援向量機 用於可以被乙個超曲面分開的問題中,又稱非線性支援...

機器學習筆記三 支援向量機

給定訓練集d,在樣本空間上找到最魯棒的超平面,將不同類別的樣本分開。對於線性可分問題,超平面的線性方程為 優化目標 找到引數w和b在劃分正確的前提下使得間隔最大,即 上述問題等價於 此為支援向量機 svm 的基本型,將引數求解問題轉化為凸二次規劃問題,為了方便求解且易於推廣到非線性情況下的核函式,採...