李巖 吳國(guó)文
摘 要: 支持向量機(jī)(SVM)是一種基于統(tǒng)計(jì)學(xué)習(xí)理論的新型機(jī)器學(xué)習(xí)方法,由于其出色的性能,已成為當(dāng)前機(jī)器學(xué)習(xí)界的研究熱點(diǎn)之一。本文實(shí)現(xiàn)了基于SVM的SMO算法的分析,并使用徑向基高斯核函數(shù)對(duì)數(shù)據(jù)進(jìn)行維度映射處理,最后結(jié)合系統(tǒng)運(yùn)維中產(chǎn)生的仿真數(shù)據(jù)進(jìn)行試驗(yàn),實(shí)現(xiàn)了對(duì)該領(lǐng)域的應(yīng)用研究。
關(guān)鍵詞: SVM;SMO;高斯核函數(shù);系統(tǒng)運(yùn)維應(yīng)用
Abstract:Support Vector Machine is a new machine learning method based on statistical learning theory due to its excellent performance which has become one of the research hotspots in the discipline of machine learning nowadays. This paper analyzes the SMO algorithm based on SVM and uses the Gaussian RBF kernel function to deal with the data transformed in different dimension. Based on the above combining with the simulation data produced in the system operation the paper designs and conducts the experiment therefore completes the research of its application in this field.
Key words: SVM;SMO;Gaussian kernel function;application in system operation
引言
隨著科技信息化的高速發(fā)展,特別是互聯(lián)網(wǎng)的普及,信息服務(wù)已經(jīng)深入到社會(huì)的各個(gè)領(lǐng)域,如今人們的衣、食、住、行都已離不開信息系統(tǒng)的服務(wù);而各種各樣的信息服務(wù)都離不開其底層系統(tǒng)的支持,因此,保障信息系統(tǒng)的穩(wěn)定性已成為系統(tǒng)運(yùn)維的重要事件。對(duì)于系統(tǒng)的穩(wěn)定性而言,除了自身硬件和軟件的協(xié)同配合外,日常運(yùn)行的數(shù)據(jù)指標(biāo)分析,也是保障系統(tǒng)持續(xù)穩(wěn)定長(zhǎng)期運(yùn)行的關(guān)鍵因素。
傳統(tǒng)的系統(tǒng)運(yùn)維,主要依靠人工的定期巡檢及突發(fā)事件的應(yīng)急響應(yīng)機(jī)制,在絕大部分情況下可以滿足設(shè)計(jì)指定的運(yùn)維功能需求,但成本開銷較大,而且對(duì)于系統(tǒng)歷史運(yùn)行產(chǎn)生的歷史數(shù)據(jù),也并未形成良好的回溯機(jī)制。一種觀念認(rèn)為,人工智能在運(yùn)維領(lǐng)域的應(yīng)用發(fā)展已成為必然趨勢(shì)[1]。而一些已有的機(jī)器學(xué)習(xí)方法在該領(lǐng)域的研究進(jìn)展,也多為采用K-近鄰算法(KNN)對(duì)運(yùn)維數(shù)據(jù)處理后的時(shí)間結(jié)果進(jìn)行分類,不僅計(jì)算和空間復(fù)雜度高,其普適性也欠佳、又不好。本文采用了另一種機(jī)器學(xué)習(xí)的方法,探討和分析了支持向量機(jī)和已經(jīng)獲得廣泛使用的序列最小優(yōu)化算法的原理,并結(jié)合使用徑向基核函數(shù)實(shí)現(xiàn)了對(duì)于非線性分類的優(yōu)化[2-3];同時(shí),通過仿真樣本數(shù)據(jù)進(jìn)行了模擬實(shí)驗(yàn)[4],結(jié)果證實(shí)了這一算法在系統(tǒng)運(yùn)維領(lǐng)域中應(yīng)用的可行性。
1 基于SVM的SMO算法分析及實(shí)現(xiàn)
1.1 SVM模型分析
支持向量機(jī)(Support Vector Machine SVM)是一種二分類模型,其基本模型是定義在特征空間上的間隔最大的線性分類器。對(duì)于具有N個(gè)維度的線性可分(linearly separable)的數(shù)據(jù),存在N-1維的對(duì)象來將這些數(shù)據(jù)進(jìn)行分隔,這種N-1維的對(duì)象就是分隔超平面(separating hyperplane);單個(gè)的數(shù)據(jù)點(diǎn)到分隔超平面的距離,可稱為間隔(margin);而與分隔超平面距離最近的那些點(diǎn)就是支持向量(support vector)。支持向量機(jī)學(xué)習(xí)的基本指導(dǎo)思想就是求解能夠正確劃分訓(xùn)練集并且集合間隔最大的分離超平面。對(duì)訓(xùn)練數(shù)據(jù)集找到幾何間隔最大的超平面,意味著以充分大的確信度對(duì)訓(xùn)練集進(jìn)行分類。也就是說,不僅將二類情況以正負(fù)實(shí)例點(diǎn)分開,而且對(duì)最難以區(qū)分的點(diǎn)(距離分隔超平面間隔最小的點(diǎn))也有足夠大的確信度將其辨認(rèn)分開。這樣的分隔超平面將會(huì)對(duì)位置的新實(shí)例具有較好的分類預(yù)測(cè)能力。
其中,常數(shù)C用于控制“最大化間隔”和“保障大部分點(diǎn)的函數(shù)間隔小于1.0”這2個(gè)目標(biāo)的權(quán)重,可稱之為松弛變量。通過調(diào)節(jié)該參數(shù)的值,可以得到不同的結(jié)果。
1.2 SMO算法分析
序列最小優(yōu)化(Sequential Minimal Optimization, SMO)是一種公認(rèn)流行的用于訓(xùn)練SVM的算法,其本質(zhì)是將一個(gè)優(yōu)化問題分解為多個(gè)小優(yōu)化問題來求解。這些被分解的小問題往往更容易計(jì)算,而且對(duì)其按既定順序求解后的結(jié)果與將其作為一個(gè)整體求解的結(jié)果是完全等價(jià)的,因此一般情況下SMO有著更低的時(shí)間和空間復(fù)雜度。SMO算法的原理是每次循環(huán)中選擇2個(gè)alpha(α1,α2)進(jìn)行優(yōu)化處理,如果α1確定,α2也隨即可得;這2個(gè)alpha必須在間隔邊界之外,或者還未經(jīng)過區(qū)間化處理或者不在邊界上[5-6]。SMO算法的步驟執(zhí)行過程可表述如下:
基于前述給出的SMO算法分析,就可以得出SMO算法實(shí)現(xiàn)的一般方法。進(jìn)一步,將推得該通用方法的偽代碼設(shè)計(jì)邏輯流程如圖1所示。
1.3 利用核函數(shù)進(jìn)行優(yōu)化
對(duì)于線性分類問題,一般的線性分類支持向量機(jī)已經(jīng)是一種成功有效的學(xué)習(xí)方法。但是,對(duì)于數(shù)據(jù)集分類為非線性的時(shí)候,這種線性分類的支持向量機(jī)將不再適用。SVM優(yōu)化中,所有的運(yùn)算都可以寫成內(nèi)積的形式,即2個(gè)向量相乘之后得到的單個(gè)標(biāo)量或者數(shù)值。此時(shí),可以使用核方法,利用核函數(shù)表示將輸入從輸入空間映射到特征空間得到的特征向量之間的內(nèi)積。通過使用核函數(shù)學(xué)習(xí)的非線性支持向量機(jī),等價(jià)于隱式地在高維的特征空間中學(xué)習(xí)線性支持向量機(jī)。
本文中采用了徑向基核函數(shù)(Radial Basis Function RBF)來設(shè)計(jì)展開研究?jī)?yōu)化過程。徑向基函數(shù)是一個(gè)采用向量作為自變量的函數(shù),其高斯核函數(shù)的數(shù)學(xué)公式為:
其中,σ為可調(diào)參數(shù)。不同的σ值會(huì)使得模型具有不同的支持向量個(gè)數(shù),并影響模型的分類準(zhǔn)確率。其對(duì)應(yīng)的支持向量機(jī)是高斯徑向基函數(shù)分類器,分類決策函數(shù)的公式表述如下:[JP6]
通過利用上述的高斯核函數(shù),就會(huì)將數(shù)據(jù)從其特征空間映射到更高維的空間來變換處理,從而大大增強(qiáng)了這一算法的適用性。
2 實(shí)驗(yàn)與結(jié)果
由于在實(shí)際的系統(tǒng)運(yùn)行環(huán)境中,系統(tǒng)性能的指標(biāo)數(shù)值與系統(tǒng)自身是否存在異常并未設(shè)定一個(gè)明確可分的界限,故本次實(shí)驗(yàn)采用了一組非線性可分的仿真數(shù)據(jù)。訓(xùn)練數(shù)據(jù)集和測(cè)試數(shù)據(jù)集中均有100個(gè)數(shù)據(jù),有2個(gè)屬性A1,A2,分別為系統(tǒng)硬件的健康狀態(tài)性能指標(biāo)和軟件的性能評(píng)估指標(biāo),標(biāo)簽“-1”表示存在風(fēng)險(xiǎn),標(biāo)簽“1”表示系統(tǒng)正常運(yùn)行。實(shí)驗(yàn)先通過訓(xùn)練數(shù)據(jù)集訓(xùn)練生成了核函數(shù)優(yōu)化的SMO-SVM模型,然后分別在不同的σ值條件下用訓(xùn)練數(shù)據(jù)實(shí)現(xiàn)回溯,并用測(cè)試數(shù)據(jù)集來測(cè)試模型分類預(yù)測(cè)的錯(cuò)誤率,記錄錯(cuò)誤數(shù)據(jù)個(gè)數(shù)并統(tǒng)計(jì)支持向量的個(gè)數(shù)。實(shí)驗(yàn)運(yùn)行結(jié)果可見表1。
具體地,實(shí)驗(yàn)結(jié)果的可視化柱狀圖如圖2所示。
實(shí)驗(yàn)數(shù)據(jù)證明,通過調(diào)節(jié)參數(shù)σ的數(shù)值,會(huì)影響到訓(xùn)練模型中支持向量的個(gè)數(shù)。當(dāng)σ取值非常?。é?0.1)時(shí),有大部分?jǐn)?shù)據(jù)實(shí)例(88個(gè))成為支持向量,得到的測(cè)試數(shù)據(jù)錯(cuò)誤率也較低;逐漸增大σ值發(fā)現(xiàn),當(dāng)σ=1.3時(shí),研究中測(cè)試數(shù)據(jù)的錯(cuò)誤率最低,降為3%,支持向量的個(gè)數(shù)為26個(gè),這就表明此時(shí)的數(shù)據(jù)分類效果最好;當(dāng)σ再逐漸增大,支持向量個(gè)數(shù)和測(cè)試數(shù)據(jù)的錯(cuò)誤率都隨之上升。特別地,當(dāng)σ=5時(shí),測(cè)試數(shù)據(jù)的錯(cuò)誤率高達(dá)38%,分類器的分類效果較差。
3 結(jié)束語
本文研究了支持向量機(jī)SVM的模型原理,分析了序列最小優(yōu)化算法SMO的運(yùn)行機(jī)制[8],并使用徑向基高斯核函數(shù)對(duì)SMO-SVM進(jìn)行改造優(yōu)化,使其可以處理非線性分類的數(shù)據(jù)。結(jié)合系統(tǒng)運(yùn)維中產(chǎn)生的性能指標(biāo)參數(shù),設(shè)計(jì)采用了仿真實(shí)驗(yàn),且由實(shí)驗(yàn)結(jié)果證實(shí)了其在該領(lǐng)域應(yīng)用的可行性[9];通過調(diào)節(jié)參數(shù)σ的數(shù)值得出了性能最好的參數(shù)解,具有一定的創(chuàng)新及實(shí)踐意義。
參考文獻(xiàn)
[1] 屠要峰,吉鋒,文韜. 機(jī)器學(xué)習(xí)在大視頻運(yùn)維中的應(yīng)用[J]. 中興通訊技術(shù),2017(4):2-8.
[2] 閻曉娜,趙犁豐. 基于支持向量機(jī)的改進(jìn)高斯核函數(shù)聚類算法研究[J]. 現(xiàn)代電子技術(shù),2011,34(13):67-70,73.
[3] 黃嘯. 支持向量機(jī)核函數(shù)的研究[D]. 蘇州:蘇州大學(xué) 2008.
[4] 趙振江. 基于SMO_SVM算法的變壓器故障診斷[J]. 煤礦機(jī)械,2011,32(1):247-249.
[5] 周曉劍,馬義中,朱嘉鋼. SMO算法的簡(jiǎn)化及其在非正定核條件下的應(yīng)用[J]. 計(jì)算機(jī)研究與發(fā)展,2010,47(11):1962-1969.
[6] 趙長(zhǎng)春,姜曉愛,金英漢.非線性回歸支持向量機(jī)的SMO算法改進(jìn)[J]. 北京航空航天大學(xué)學(xué)報(bào),2014,40(1):125-130.
[7] 李航. 統(tǒng)計(jì)學(xué)習(xí)方法[M]. 北京:清華大學(xué)出版社,2012.
[8] 丁世飛,齊丙娟,譚紅艷. 支持向量機(jī)理論與算法研究綜述[J]. 電子科技大學(xué)學(xué)報(bào),2011,40(1):125-130.
[9] HARRINGTON P. Machine learning in action[M] . 李銳,李鵬,曲亞東,等譯. 北京:人民郵電出版社,2013.