雷湘琦
摘要:本文使用的支持向量機以訓(xùn)練誤差作為優(yōu)化問題的約束條件,以置信范圍值最小化作為優(yōu)化目標(biāo),即SVM是一種基于結(jié)構(gòu)風(fēng)險最小化準(zhǔn)則的學(xué)習(xí)方法,其推廣能力優(yōu)于其他的一些機器學(xué)習(xí)方法?,F(xiàn)今運用的都是一些比較經(jīng)典的算法,如傳統(tǒng)的決策樹算法等,同時這些算法也是學(xué)習(xí)數(shù)據(jù)挖掘算法的根基。文中主要列舉相關(guān)算法并應(yīng)用相應(yīng)的實例加以佐證,指出其中的不足和需要改進的地方。
關(guān)鍵詞:支持向量機;鳶尾花數(shù)據(jù)
引言
支持向量機(Support Vector Machine,SVM)SVM被提出于1964年,在二十世紀(jì)90年代后得到快速發(fā)展并衍生出一系列改進和擴展算法,在人像識別、文本分類等模式識別問題中有得到應(yīng)用。它是一類按監(jiān)督學(xué)習(xí)方式對數(shù)據(jù)進行二元分類的廣義線性分類器,其決策邊界是對學(xué)習(xí)樣本求解的最大邊距超平面。SVM使用鉸鏈損失函數(shù)計算經(jīng)驗風(fēng)險并在求解系統(tǒng)中加入了正則化項以優(yōu)化結(jié)構(gòu)風(fēng)險,是一個具有稀疏性和穩(wěn)健性的分類器。SVM可以通過核方法進行非線性分類,是常見的核學(xué)習(xí)方法之一。
1 基本原理
標(biāo)準(zhǔn)SVM是基于二元分類問題設(shè)計的算法,無法直接處理多分類問題。利用標(biāo)準(zhǔn)SVM的計算流程有序地構(gòu)建多個決策邊界以實現(xiàn)樣本的多分類,通常的實現(xiàn)為“一對多”和“一對一”。一對多SVM對m個分類建立m個決策邊界,每個決策邊界判定一個分類對其余所有分類的歸屬;一對一SVM是一種投票法,其計算流程是對m個分類中的任意2個建立決策邊界,樣本的類別按其對所有決策邊界的判別結(jié)果中得分最高的類別選取。一對多SVM通過對標(biāo)準(zhǔn)SVM的優(yōu)化問題進行修改可以實現(xiàn)一次迭代計算所有決策邊界
傳統(tǒng)的統(tǒng)計模式識別方式只有在樣本趨向無窮大的時候,其性能才有理論的保證。統(tǒng)計學(xué)習(xí)理論研究有限樣本情況下的機器學(xué)習(xí)問題。SVM的理論基礎(chǔ)就是統(tǒng)計學(xué)習(xí)理論。
根據(jù)統(tǒng)計學(xué)習(xí)理論,學(xué)習(xí)機器的實際風(fēng)險由經(jīng)驗風(fēng)險值和置信范圍值兩部分組成。而基于經(jīng)驗風(fēng)險最小化準(zhǔn)則的學(xué)習(xí)方法只強調(diào)了訓(xùn)練樣本的經(jīng)驗風(fēng)險最小誤差,沒有最小化置信范圍值,因此其推廣能力較差。
1.1 尋找最佳超平面
SVM的主要目標(biāo)是找到最佳超平面,以便在不同類的數(shù)據(jù)點之間進行正確分類。超平面維度等于輸入特征的數(shù)量減去1(例如,當(dāng)使用三個特征時,超平面將是二維平面)。
為了分離兩類數(shù)據(jù)點,可以選擇許多可能的超平面。我們的目標(biāo)是找到一個具有最大邊距的平面,即兩個類的數(shù)據(jù)點之間的最大距離。最大化邊距的目的是最大概率的對未知的數(shù)據(jù)點進行正確分類。
1.2超平面和支持向量
超平面是決策邊界,有助于對數(shù)據(jù)點進行分類。落在超平面兩側(cè)的數(shù)據(jù)點可歸因于不同的類。此外,超平面的尺寸取決于特征的數(shù)量。如果輸入要素的數(shù)量是2,則超平面只是一條線。如果輸入要素的數(shù)量是3,則超平面變?yōu)槎S平面。當(dāng)特征數(shù)量超過3時,就超出我們的想象了。
最接近超平面的數(shù)據(jù)點稱為支持向量。支持向量確定超平面的方向和位置,以便最大化分類器邊界(以及分類分?jǐn)?shù))。SVM算法應(yīng)該使用的支持向量的數(shù)量可以根據(jù)應(yīng)用任意選擇。
1.3 SVM內(nèi)核
如果我們使用的數(shù)據(jù)不是線性可分的(因此導(dǎo)致線性SVM分類結(jié)果不佳),則可以應(yīng)用稱為Kernel Trick的技術(shù)。此方法能夠?qū)⒎蔷€性可分離數(shù)據(jù)映射到更高維空間,使我們的數(shù)據(jù)可線性分離。使用這個新的維度空間SVM可以很容易地實現(xiàn)。
SVM中有許多不同類型的內(nèi)核可用于創(chuàng)建這種更高維度的空間,例如線性,多項式,Sigmoid和徑向基函數(shù)(RBF)。在Scikit-Learn中,可以通過添加內(nèi)核參數(shù)來指定內(nèi)核函數(shù)svm.SVC,也可以通過gamma參數(shù)來指定內(nèi)核對模型的影響。如果特征數(shù)量大于數(shù)據(jù)集中的樣本數(shù)量,則建議使用線性內(nèi)核(否則RBF可能是更好的選擇)。
1.4 特征選擇
減少機器學(xué)習(xí)中的功能數(shù)量起著非常重要的作用,尤其是在處理大型數(shù)據(jù)集時。實際上,這可以:加速訓(xùn)練,避免過度擬合,并最終通過降低數(shù)據(jù)噪音來獲得更好的分類結(jié)果。例如下圖中顯示了在Pima Indians糖尿病數(shù)據(jù)庫中使用SVM識別的主要特征。在綠色中顯示對應(yīng)于負(fù)系數(shù)的所有特征,而藍色顯示為正系數(shù)。
1.5 支持向量機的算法
比較經(jīng)典的如1)Vapnik提出的Chunking方法;其出發(fā)點是刪除矩陣中對應(yīng)Lagrange乘數(shù)為零的行和列將不會影響最終結(jié)果,然而,在訓(xùn)練集的支持向量數(shù)很大的時候,Chunking算法仍然無法將矩陣放入內(nèi)存中;2)Qsuna提出的Qsuna算法;該算法存在效率問題,因為在每一步中,進行一次QP問題的最優(yōu)化只能使一個樣本符合Kuhn-Tucker條件;3)Plat提出的序貫最小優(yōu)化方法(sequential minimal optimization,簡稱SMO);將一個大型的QP問題分解為一系列最小規(guī)模的QP子問題,即僅具有兩個Lagrange乘數(shù)的QP問題,從而使得原問題可以通過分析的方法加以解決,避免了在內(nèi)循環(huán)中使用數(shù)值算法進行QP最優(yōu)化。該算法在訓(xùn)練線性SVM時,可以獲得非常好的性能。
2 數(shù)據(jù)選擇
Iris 鳶尾花數(shù)據(jù)集是一個經(jīng)典數(shù)據(jù)集。數(shù)據(jù)集內(nèi)包含 3 類共 150 條記錄,每類各 50 個數(shù)據(jù),每條記錄都有 4 項特征:花萼長度、花萼寬度、花瓣長度、花瓣寬度,可以通過這4個特征預(yù)測鳶尾花卉屬于中的哪一品種。
3利用Support_Vector_Machines對Iris data進行分類
利用SVM對Iris data進行二分類后的到結(jié)果:
SVM是一種有堅實理論基礎(chǔ)的新穎的適用小樣本學(xué)習(xí)方法。它基本上不涉及概率測度及大數(shù)定律等,也簡化了通常的分類和回歸等問題。計算的復(fù)雜性取決于支持向量的數(shù)目,而不是樣本空間的維數(shù),這在某種意義上避免了“維數(shù)災(zāi)難”。因此可以利用已知的有效算法發(fā)現(xiàn)目標(biāo)函數(shù)的全局最小值,有優(yōu)秀的泛化能力。
參考文獻:
[1]程一芳.數(shù)據(jù)挖掘中的數(shù)據(jù)分類算法綜述[J].數(shù)字通信世界,2021(02):136-137+140.
[2]韓成成,增思濤,林強,曹永春,滿正行.基于決策樹的流數(shù)據(jù)分類算法綜述[J].西北民族大學(xué)學(xué)報(自然科學(xué)版),2020,41(02):20-30.
[3]李建新. 基于小波支持向量機的邊坡變形預(yù)測研究[D].江西理工大學(xué),2020.
[4]姚奇峰,楊連賀.數(shù)據(jù)挖掘經(jīng)典分類聚類算法的研究綜述[J].現(xiàn)代信息科技,2019,3(24):86-88.
[5]李璐. 基于機器學(xué)習(xí)的滑坡地質(zhì)災(zāi)害預(yù)報模型研究[D].西安工程大學(xué),2019.
[6]郭天頌. 基于粒子群優(yōu)化支持向量機的滑坡易發(fā)性評價與滑坡位移預(yù)測[D].長安大學(xué),2019.