熱線電話:13121318867

登錄
首頁精彩閱讀簡單易學的機器學習算法—支持向量機
簡單易學的機器學習算法—支持向量機
2017-03-20
收藏

簡單易學的機器學習算法—支持向量機

支持向量機(Support Vector Machines, SVM)被公認為比較優秀的分類模型,有很多人對SVM的基本原理做了闡述,我在學習的過程中也借鑒了他們的研究成果,在我介紹基本的原理,用通俗易懂的方式把原理解釋清楚,并期望通過MATLAB的代碼實現這些基本的原理。由于SVM對數學理論的要求很高,并且SVM的形式也有多種,有不同的實現方式,在這個系列中我們重點關注以下幾個方面:

支持向量機的一些基本概念

線性可分支持向量機的原理

線性支持向量機的原理

非線性支持向量機的原理

支持向量機的實現方法——序列最小優化算法(SMO)二、支持向量機的基本原理

在博文“簡單易學的機器學習算法——Rosenblatt感知機”中介紹了Rosenblatt感知機的基本原理,Rosenblatt感知機神經網絡模型和支持向量機SVM的基礎,但是Rosenblatt感知機只能處理線性可分的問題,神經網絡支持向量機的功能就更強大了,既能處理線性可分的問題,又能處理非線性可分的問題。
支持向量機SVM是定義在特征空間上的間隔最大的線性分類器,在Rosenblatt感知機中是通過計算分類誤差求得分離超平面的,在SVM中則使用了間隔最大這樣的特征。
SVM可以這樣定義:對于數據集(無論線性可分還是非線性可分),通過間隔最大(處理線性可分與非線性可分略有不同)這樣的優化問題求得分離超平面
這樣就可以得到分類決策函數

其中,為符號函數

三、支持向量機的分類

針對不同的問題有不同的支持向量機,主要會有這樣幾種支持向量機

線性可分支持向量機:主要求解線性可分的問題

線性支持向量機:主要處理近似線性可分問題

非線性支持向量機:主要處理線性不可分的問題四、支持向量機里的一些基本概念

支持向量機有著強大的理論基礎,在分析SVM算法的過程中需要使用到一些基本的概念,在這里羅列一下,主要有以下幾個方面:1、函數間隔和幾何間隔

對于一個線性可分問題,如下圖所示:

分隔超平面上方的為正類,下方的為負類。一個點距離分離超平面的遠近可以表示為分類預測的確信程度,如上圖中的A,B和C三個正類,由于A離分離超平面較遠,若預測A為正類,則比較確信預測是正確的;C離超平面較近,若預測其為正類就不那么確信。數據分析師培訓

對于數據集和分離超平面

函數間隔:定義分離超平面關于樣本點的函數間隔為

幾何間隔:定義分離超平面關于樣本點的函數間隔為

拉格朗日對偶性

拉格朗日函數主要是用來處理帶約束的優化問題。
假設是定義在上的連續可微函數,對于帶約束的優化問題:

引進廣義拉格朗日函數:

要求的最小值:,可以通過求解其對偶問題,即求解

數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢