郭若楠
(西安石油大學,陜西西安)
SVM 是一種用途極為廣泛的小樣本分類器,在對數據進行二元分類的過程中開展有導師學習[1],稀疏和穩定為其典型特征,在處理線性不可分數據的分類問題上有極為優異的解決手段[2],在處理陶瓷原料分類中也有很好的分類效果。
SVM 同時考慮了經驗風險和結構風險的最小化[3],在解決不具有線性可分性的問題上,它是一個尋求最小化結構風險和經驗風險的線性組合的過程,通過訓練數量有限的訓練樣本,可以得到一個具有良好統計規律并且誤差很小的分類器。
SVM 的稀疏性和穩定性使其具有良好的泛化能力,其思想就是將不可分的數據變換到高維空間,建立最好的分類超平面,使得空間間隔最大化,從而讓數據變得線性可分,而在將輸入空間變換到高維特征空間時,會增大計算量,核函數是節約計算資源和空間資源的關鍵。SVM 的出現有效地解決了傳統算法因強調執行機器學習時經驗風險最小化導致出現“過度學習”和泛化能力差的弊端。另外,SVM 因其特有優點被人們廣泛應用于圖像識別、模式識別和文本分類中。
SVM 主要是立足于兩類問題分類中同時應用的帶線性可分性最優分類面的基礎上所提出的[4],如圖1所示。下面內容以二分類為例,詳細分析SVM 基本理念。

圖1 最優超平面

式中:i=1,…,N。

其約束條件是:
式中:i=1,…,N。
得到以下拉格朗日函數:

通過式(2)和式(6)達到了利用對偶原理把解決最優分類面的問題轉為求解最優凸二次規劃的目的,有:
約束條件是:

這樣就求得了支持向量機的一般表達式。
處理非線性分類時,在輸入空間中尋找到的最優分類面沒有辦法取得令人滿意的分類效果。解決這個難題需要在輸出的高維空間中映射出原空間中的非線性樣本數據,同時找到高維空間中最好的超平面來實現對樣本數據的線性分離,但這種方式的映射無疑使運算量大大增加。核函數的巧妙運用使得支持向量機靈活地解決了該問題。通過將N 維輸入空間中的向量X 映射到高維的輸出空間中,并且在高維空間中表現出線性可分性,就可以在輸出空間中對樣本實行線性分類,核函數轉換的基本理念就是這樣來的。通過觀察式(7)和式(11),只與訓練樣本之間的點積運算xi,xj有關系。若存在一個非線性映射Φ將Rn空間樣本映射到了一個更高維度的H 空間,即可表示為:

(1) 線性函數
(2) 徑向基函數
式中:σ 是超參數,用于控制點之間的相似度。
(3) 多項式函數
式中:d 是度數,用于控制多項式函數的形狀。
(4) Sigmoid 函數
式中:ɑ 是Sigmoid 函數的閾值。
基于這四個核函數形成了線性、RBF、多項式、感知四個SVM。
SVM 是一個二分類分類器,但在實際中有大量的多分類問題亟待解決,因此此處需要闡述一下多類分類問題的基本原理。目前學者們主要使用以下兩種方法將SVM 推廣至多類SVM。一種是將所有數據在一個優化公式中進行綜合優化;另一種是將若干類問題分解成若干個二值分類問題。第一種想法的計算比后者的計算對于同樣的數據來說要復雜得多。目前多類分類器有一對多、一對一和有向無環圖SVM 三種。
本文采用《陶瓷工藝學》一書中我國常用的陶瓷原料主要化學組成作為原始數據,為了測試SVM 算法的分類效果,所有108 種陶瓷原料數據進行歸一化處理并采用五折交叉驗證,對陶瓷原料類別分別采用線性核和高斯核支持向量機對樣本數據進行分類。首先對SVM 分類算法進行參數設置,分別采用線性核和高斯核創建SVM 分類器。通過訓練集中的78 組陶瓷原料數據有效對模型進行訓練,再面向測試集的30組陶瓷原料數據完成分類預測。
將SVM 線性核懲罰系數默認設置為1,利用SVM 線性核對陶瓷原料進行預判,得到測試集各樣本預測分類情況與每種類別識別正確率如圖2 和圖3所示。除此之外,還設計了混淆矩陣用于對陶瓷原料分類模型的準確性進行監測和評估,如圖4 所示,圖中矩陣的每一列表示每一個類的預測結果,矩陣的每一行代表被分類數據的真實屬性。

圖2 SVM 線性核預測分類情況

圖3 SVM 線性核各類別識別正確率
從實驗結果可得,SVM 線性核算法對陶瓷原料預測正確率較高,SVM 線性核預測結果見表1。

表1 SVM 線性核分類結果
由表1 可得,Ⅰ類、Ⅱ類和Ⅲ類模型預測結果正確率均為100%;對于Ⅳ類陶瓷原料而言,有25%識別成了Ⅰ類,其余識別正確,整體預測準確率是96.7%。
陶瓷原料種類豐富,每種原料成分組成相當復雜,但化學含量是可方便測量的,因此將其定為識別因素,保證了研究的合理性與科學性。本文使用的線性核支持向量機預測準確率為96.7%,其分類結果足以解決大部分陶瓷材料分類問題,結果合理,方法實用,為陶瓷原料分類和實際選取帶來諸多便捷,對實際生產意義重大。