郭若楠
(西安石油大學(xué),陜西西安)
SVM 是一種用途極為廣泛的小樣本分類器,在對(duì)數(shù)據(jù)進(jìn)行二元分類的過(guò)程中開(kāi)展有導(dǎo)師學(xué)習(xí)[1],稀疏和穩(wěn)定為其典型特征,在處理線性不可分?jǐn)?shù)據(jù)的分類問(wèn)題上有極為優(yōu)異的解決手段[2],在處理陶瓷原料分類中也有很好的分類效果。
SVM 同時(shí)考慮了經(jīng)驗(yàn)風(fēng)險(xiǎn)和結(jié)構(gòu)風(fēng)險(xiǎn)的最小化[3],在解決不具有線性可分性的問(wèn)題上,它是一個(gè)尋求最小化結(jié)構(gòu)風(fēng)險(xiǎn)和經(jīng)驗(yàn)風(fēng)險(xiǎn)的線性組合的過(guò)程,通過(guò)訓(xùn)練數(shù)量有限的訓(xùn)練樣本,可以得到一個(gè)具有良好統(tǒng)計(jì)規(guī)律并且誤差很小的分類器。
SVM 的稀疏性和穩(wěn)定性使其具有良好的泛化能力,其思想就是將不可分的數(shù)據(jù)變換到高維空間,建立最好的分類超平面,使得空間間隔最大化,從而讓數(shù)據(jù)變得線性可分,而在將輸入空間變換到高維特征空間時(shí),會(huì)增大計(jì)算量,核函數(shù)是節(jié)約計(jì)算資源和空間資源的關(guān)鍵。SVM 的出現(xiàn)有效地解決了傳統(tǒng)算法因強(qiáng)調(diào)執(zhí)行機(jī)器學(xué)習(xí)時(shí)經(jīng)驗(yàn)風(fēng)險(xiǎn)最小化導(dǎo)致出現(xiàn)“過(guò)度學(xué)習(xí)”和泛化能力差的弊端。另外,SVM 因其特有優(yōu)點(diǎn)被人們廣泛應(yīng)用于圖像識(shí)別、模式識(shí)別和文本分類中。
SVM 主要是立足于兩類問(wèn)題分類中同時(shí)應(yīng)用的帶線性可分性最優(yōu)分類面的基礎(chǔ)上所提出的[4],如圖1所示。下面內(nèi)容以二分類為例,詳細(xì)分析SVM 基本理念。
圖1 最優(yōu)超平面
式中:i=1,…,N。
其約束條件是:
式中:i=1,…,N。
得到以下拉格朗日函數(shù):
通過(guò)式(2)和式(6)達(dá)到了利用對(duì)偶原理把解決最優(yōu)分類面的問(wèn)題轉(zhuǎn)為求解最優(yōu)凸二次規(guī)劃的目的,有:
約束條件是:
這樣就求得了支持向量機(jī)的一般表達(dá)式。
處理非線性分類時(shí),在輸入空間中尋找到的最優(yōu)分類面沒(méi)有辦法取得令人滿意的分類效果。解決這個(gè)難題需要在輸出的高維空間中映射出原空間中的非線性樣本數(shù)據(jù),同時(shí)找到高維空間中最好的超平面來(lái)實(shí)現(xiàn)對(duì)樣本數(shù)據(jù)的線性分離,但這種方式的映射無(wú)疑使運(yùn)算量大大增加。核函數(shù)的巧妙運(yùn)用使得支持向量機(jī)靈活地解決了該問(wèn)題。通過(guò)將N 維輸入空間中的向量X 映射到高維的輸出空間中,并且在高維空間中表現(xiàn)出線性可分性,就可以在輸出空間中對(duì)樣本實(shí)行線性分類,核函數(shù)轉(zhuǎn)換的基本理念就是這樣來(lái)的。通過(guò)觀察式(7)和式(11),只與訓(xùn)練樣本之間的點(diǎn)積運(yùn)算xi,xj有關(guān)系。若存在一個(gè)非線性映射Φ將Rn空間樣本映射到了一個(gè)更高維度的H 空間,即可表示為:
(1) 線性函數(shù)
(2) 徑向基函數(shù)
式中:σ 是超參數(shù),用于控制點(diǎn)之間的相似度。
(3) 多項(xiàng)式函數(shù)
式中:d 是度數(shù),用于控制多項(xiàng)式函數(shù)的形狀。
(4) Sigmoid 函數(shù)
式中:ɑ 是Sigmoid 函數(shù)的閾值。
基于這四個(gè)核函數(shù)形成了線性、RBF、多項(xiàng)式、感知四個(gè)SVM。
SVM 是一個(gè)二分類分類器,但在實(shí)際中有大量的多分類問(wèn)題亟待解決,因此此處需要闡述一下多類分類問(wèn)題的基本原理。目前學(xué)者們主要使用以下兩種方法將SVM 推廣至多類SVM。一種是將所有數(shù)據(jù)在一個(gè)優(yōu)化公式中進(jìn)行綜合優(yōu)化;另一種是將若干類問(wèn)題分解成若干個(gè)二值分類問(wèn)題。第一種想法的計(jì)算比后者的計(jì)算對(duì)于同樣的數(shù)據(jù)來(lái)說(shuō)要復(fù)雜得多。目前多類分類器有一對(duì)多、一對(duì)一和有向無(wú)環(huán)圖SVM 三種。
本文采用《陶瓷工藝學(xué)》一書(shū)中我國(guó)常用的陶瓷原料主要化學(xué)組成作為原始數(shù)據(jù),為了測(cè)試SVM 算法的分類效果,所有108 種陶瓷原料數(shù)據(jù)進(jìn)行歸一化處理并采用五折交叉驗(yàn)證,對(duì)陶瓷原料類別分別采用線性核和高斯核支持向量機(jī)對(duì)樣本數(shù)據(jù)進(jìn)行分類。首先對(duì)SVM 分類算法進(jìn)行參數(shù)設(shè)置,分別采用線性核和高斯核創(chuàng)建SVM 分類器。通過(guò)訓(xùn)練集中的78 組陶瓷原料數(shù)據(jù)有效對(duì)模型進(jìn)行訓(xùn)練,再面向測(cè)試集的30組陶瓷原料數(shù)據(jù)完成分類預(yù)測(cè)。
將SVM 線性核懲罰系數(shù)默認(rèn)設(shè)置為1,利用SVM 線性核對(duì)陶瓷原料進(jìn)行預(yù)判,得到測(cè)試集各樣本預(yù)測(cè)分類情況與每種類別識(shí)別正確率如圖2 和圖3所示。除此之外,還設(shè)計(jì)了混淆矩陣用于對(duì)陶瓷原料分類模型的準(zhǔn)確性進(jìn)行監(jiān)測(cè)和評(píng)估,如圖4 所示,圖中矩陣的每一列表示每一個(gè)類的預(yù)測(cè)結(jié)果,矩陣的每一行代表被分類數(shù)據(jù)的真實(shí)屬性。
圖2 SVM 線性核預(yù)測(cè)分類情況
圖3 SVM 線性核各類別識(shí)別正確率
從實(shí)驗(yàn)結(jié)果可得,SVM 線性核算法對(duì)陶瓷原料預(yù)測(cè)正確率較高,SVM 線性核預(yù)測(cè)結(jié)果見(jiàn)表1。
表1 SVM 線性核分類結(jié)果
由表1 可得,Ⅰ類、Ⅱ類和Ⅲ類模型預(yù)測(cè)結(jié)果正確率均為100%;對(duì)于Ⅳ類陶瓷原料而言,有25%識(shí)別成了Ⅰ類,其余識(shí)別正確,整體預(yù)測(cè)準(zhǔn)確率是96.7%。
陶瓷原料種類豐富,每種原料成分組成相當(dāng)復(fù)雜,但化學(xué)含量是可方便測(cè)量的,因此將其定為識(shí)別因素,保證了研究的合理性與科學(xué)性。本文使用的線性核支持向量機(jī)預(yù)測(cè)準(zhǔn)確率為96.7%,其分類結(jié)果足以解決大部分陶瓷材料分類問(wèn)題,結(jié)果合理,方法實(shí)用,為陶瓷原料分類和實(shí)際選取帶來(lái)諸多便捷,對(duì)實(shí)際生產(chǎn)意義重大。