劉佳星
(齊齊哈爾大學,黑龍江 齊齊哈爾 161006)
支持向量機(SVM)是一種監(jiān)督學習的數(shù)據(jù)挖掘模型,其主要目標是找到一個使類之間距離最大化的超平面[1-2]。支持向量機分為支持向量分類機和支持向量回歸機。支持向量分類機(SVC)用于研究輸入變量與二分類型輸出變量的關系預測;支持向量回歸機(SVR)用于研究輸入變量與數(shù)值型輸出變量的關系,對新觀測的輸出變量值進行預測。
SVM基于統(tǒng)計學習理論,在解決非線性、小樣本和高維的回歸和分類問題上有許多優(yōu)勢。正因如此,SVR 已經(jīng)成功應用與諸多領域,例如:工業(yè)建筑[3-7]、生物醫(yī)療[8-9]、地理環(huán)境[10-11]、農(nóng)業(yè)金融[12-13]和物理化學[14-17]。
如圖1 所示是有兩個輸入變量情況下的支持向量回歸超平面。

圖1 支持向量回歸超平面


為了降低過擬合風險,采用ε- 不敏感損失函數(shù),ε(ε>0)是觀測X 輸出變量的實際值與預測值之間允許的最大偏差。“管道”內(nèi)的ε 很重要,ε 過大或過小都會影響預測結果(見圖2)。所以,需要權衡過擬合風險和預測偏差。一方面通過適當增加“管道”內(nèi)的ε,盡量降低過擬合風險,另一方面損失函數(shù)值也不能過高。

圖2 ε- 管


目標函數(shù)中的可調(diào)參數(shù)C(Cost>0)是損失懲罰函數(shù),用于平衡模型復雜度和損失。C較大時,將導致“管”過窄;C較小或趨近于0 時,將導致“管“過寬。參數(shù)C太大或太小都不恰當,可通過N折交叉驗證方式確定參數(shù)C。
支持向量機具有如下優(yōu)點:(1)SVM訓練相對容易。與神經(jīng)網(wǎng)絡不同,沒有局部最優(yōu)。(2)SVM有正則化參數(shù),可以幫助避免過度擬合。(3)在高維空間中依然有效。(4)在決策函數(shù)中使用訓練點的子集(稱為支持向量,見圖2 右圖),因此它也具有內(nèi)存效率。盡管如此,SVM也存在求解模型的參數(shù)難以解釋、SVR 的超參數(shù)對模型精度有顯著影響這一不足。
在機器學習中,超參數(shù)優(yōu)化旨在尋找使得機器學習算法在驗證數(shù)據(jù)集上表現(xiàn)性能最佳的超參數(shù),這些超參數(shù)返回一個優(yōu)化模型,該模型減少了預定義的損失函數(shù),進而提高了給定獨立數(shù)據(jù)的預測或者分類精度。那么如何優(yōu)化超參數(shù)至關重要。
為了進行超參數(shù)調(diào)優(yōu),我們一般會采用網(wǎng)格搜索、隨機搜索和貝葉斯優(yōu)化等算法[20]。隨機搜索要求樣本點集足夠大,貝葉斯優(yōu)化算法又容易陷入局部最優(yōu)值。網(wǎng)格搜索是最應用最廣泛的超參數(shù)搜索算法,通過查找搜索范圍內(nèi)的所有的點來確定最優(yōu)值。如果采用較大的搜索范圍以及較小的步長,網(wǎng)恪搜索大概率找到全局最優(yōu)值。
本研究通過計算平均絕對誤差(Mean Absolute Error,MAE)、均方誤差(Mean Square Error,MSE)和均方根誤差(Root Mean Square Error,RMSE) 來測試回歸器的準確性。三種衡量標準的計算公式如下:
假設,預測值:y^={y^1,y^2,y^3,…,y^n},真實值:y={y1,y2,y3,…,yn},

其中n 是預測數(shù)據(jù)長度。四種評估指標均用于測量觀察值與真實值之間的偏差,同時也是機器學習模型預測準確性的度量標準。他們的值越大,代表模型的性能越低,預測值和真實值之間的偏差也越大。
本研究在R 語言(64 位)平臺上進行,首先將線性回歸(lm)、SVR 和超參數(shù)優(yōu)化的支持向量回歸三種回歸器建模,然后通過三種評價指標,分析三個模型的準確性。
實驗第一步創(chuàng)建線性回歸模型并將其可視化,如圖3所示:實心圓表示輸入變量X 的真實值,直線為其線性擬合。此時線性回歸的均方根誤差為5.719515,平均絕對誤差為4.758571,均方誤差為32.71286。從評價指標和圖3 中都看出lm的準確性較差,有效性不佳。

圖3 觀測值與線性回歸
實驗第二步在R 平臺上調(diào)用e1071 包創(chuàng)建支持向量回歸模型,如圖4 所示:×表示輸出的預測值。此時SVR 的均方根誤差是3.003165,平均絕對誤差是2.529023,均方誤差是9.019002。SVR 的衡量指標相較于lm均有顯著提高。

圖4 觀測值與支持向量回歸
為了提高支持向量回歸的性能,我們將采用網(wǎng)格搜索方法進行超參數(shù)優(yōu)化,為模型選擇最佳參數(shù)C 和ε。實驗第三步調(diào)用tune( )函數(shù),并繪制網(wǎng)格搜索結果。在圖5 中可以觀察到,區(qū)域顏色越深,模型性能就越好(因為RMSE 在深色區(qū)域更接近于零)。實驗第四步將在更窄的范圍內(nèi)嘗試另一個網(wǎng)格搜索,嘗試在0 和0.2 之間的尋找ε 值。

圖5 SVRcost 與ε
最終通過網(wǎng)格搜索獲得SVR 的最佳參數(shù):cost=128,ε=0.09。(圖6)

圖6 優(yōu)化的SVRcost 與ε
超參數(shù)優(yōu)化SVR 的均方根誤差是1.931165,平均絕對誤差降低到1.632323,均方誤差為3.729399,三種評價指標均獲得最低值(見圖7)。

圖7 三種評價指標柱狀對比圖
實驗第五步將SVR 和超參數(shù)優(yōu)化的SVR 這兩個模型可視化。在圖8 中,細線條表示默認參數(shù)的SVR,粗線條表示超參數(shù)調(diào)優(yōu)后的SVR 模型,擬合效果最佳。

圖8 SVR 超參數(shù)調(diào)優(yōu)前后對比
支持向量回歸機已經(jīng)廣泛應用于諸多領域,皆取得了良好的效果,但其精度受超參數(shù)影響顯著。本文通過使用網(wǎng)格搜索進行超參數(shù)優(yōu)化,通過實驗獲得最佳SVR。下一步將考慮如何進一步降低誤差值。