孫湛青,謝 蕾
(河海大學 商學院,江蘇 南京 211100)
?
基于GA-SVM的河川徑流量預測模型研究
孫湛青,謝 蕾
(河海大學 商學院,江蘇 南京 211100)
利用遺傳算法(GA)尋優(yōu)優(yōu)化傳統(tǒng)的支持向量機(SVM),并將GA-SVM模型應用到水文預測中,建立了基于GA-SVM的河川徑流量預測回歸模型,利用雙累積曲線剔除人類活動的不確定因素。以云南省昆明高古馬站的月平均徑流量作為實證研究對象,將預測結果與BP神經(jīng)網(wǎng)絡的預測結果進行對比。結果表明,支持向量機的預測值與實際值誤差較小,具有較高的預測精度;利用支持向量機回歸方法進行水文預測具有較高的研究價值和應用前景。
支持向量機;回歸模型;徑流量預測;遺傳算法尋優(yōu)
水資源的合理利用是一個關系到國計民生的大問題,長期影響著國家的可持續(xù)發(fā)展,可靠的水文預測對于合理利用水資源具有重要的意義。然而,水文系統(tǒng)是一個影響因素眾多的復雜系統(tǒng),涉及到氣候、自然地理及人類活動等多種因素,難以準確地定量描述這些作用機制[1-3]。因此,要科學地進行水文預測十分困難。
常用的水文預測方法主要有兩類[4]:一類是在分析水文要素本身的變化規(guī)律基礎上建立的預測模型,如時間序列方法和人工神經(jīng)網(wǎng)絡方法;另一類是通過分析水文要素與其影響要素之間的關聯(lián)得到的預測模型,如多元線性回歸模型和模糊模式預測模型。然而,這些方法都要求有大量典型的訓練樣本數(shù)據(jù)或者先驗知識,而在實際的水文預測中,由于季節(jié)性及地理環(huán)境等因素,很難獲取到大量典型的水文數(shù)據(jù)訓練樣本。因此,在實際預測的應用中,上述方法難以達到滿意效果。
統(tǒng)計學習理論(statistical learning theory, SLT)是在訓練樣本有限,即小樣本的情況下,研究機器學習規(guī)律的一種理論方法[5]。支持向量機(support vector machine, SVM)是以統(tǒng)計學習理論為基礎,逐漸形成的一種新型機器學習方法[6]。對于小樣本、高維模式識別及非線性等問題,表現(xiàn)出其特有的優(yōu)勢,逐漸成為水文預測研究領域中的熱門課題。
當前,國內外學者在支持向量機理論方法及水文預測模型領域取得了一定的研究成果。張利平等[7]利用相空間神經(jīng)網(wǎng)絡模型進行水文站月徑流序列的中長期預測,并取得了較為理想的結果;王義民等[8]提出了BP 神經(jīng)網(wǎng)絡與馬爾科夫相耦合的BP神經(jīng)網(wǎng)絡馬爾科夫模型,以石泉水庫年入庫徑流量為例,驗證了該方法的可行性;鄧紅霞等[9]引入SPA方法建立水文預測模型,并結合實例證明了TR模型優(yōu)于線性模型;李文莉等[10]運用最小二乘支持向量機回歸原理建立水文預測模型,并利用粒子群算法進行參數(shù)尋優(yōu),證明該方法可以提高預測精度;李慶國等[11]嘗試把模糊識別理論引入支持向量機,提出一種模糊識別核函數(shù),并結合水文預測實例驗證了其有效性和可行性;MOHSEN等[12]將支持向量機運用在河川徑流量預測中,將預測結果與基于遺傳算法的人工神經(jīng)網(wǎng)絡(ANN-GA)對比,驗證SVM的推廣能力;DEBASMITA等[13]也利用支持向量機對河川徑流量及泥沙沉淀量作出預測,并驗證其結果準確性高于人工神經(jīng)網(wǎng)絡。
由此可見,國內外學者正在努力嘗試將支持向量機應用到水文預測中。然而,由于水文預測指標具有高維、非線性等復雜特點,傳統(tǒng)的最小二乘支持向量機難以較好地在這種環(huán)境中快速準確地進行參數(shù)尋優(yōu);由于人類活動因素的存在會影響水文數(shù)據(jù)在一段時間內的一致性,使模型的預測結果產(chǎn)生誤差。因此,尋找一種合適的參數(shù)尋優(yōu)方法,在盡量減少人類活動因素的情況下建立水文預測模型,具有重要的理論與現(xiàn)實意義。
筆者將遺傳算法作為支持向量機的參數(shù)尋優(yōu)方法,建立GA-SVM水文預測模型,利用雙累積曲線剔除人類活動因素,再以云南省昆明高古馬站月平均徑流量為例進行計算,并與BP神經(jīng)網(wǎng)絡預測結果相對比,分析對比結果,可為水文預測的研究提供理論參考。
1.1 支持向量機
支持向量機是一種新型機器學習方法。它根據(jù)統(tǒng)計學習理論中的VC維理論,并考慮到結構風險最小原理,具有較好的推廣能力。
在線性可分的前提下,模式識別中的最優(yōu)分類超平面是支持向量機方法的原型。其基本思想可用圖1來表示,圖1中的實心點和空心點各表示一類,H1、H2分別為通過兩類樣本中離H最近的點且平行于H的直線。
圖1 支持向量機最優(yōu)超平面分割
分類線方程為x·ω+b=0,將其進行歸一化處理,使其具有線性可分性的樣本集(xi,yi),i=1,2,…,n,x∈Rd,y∈{1,-1}滿足:
yi[(ω·xi)+b]-1≥0,i=1,2,…,n
(1)
其中分類間隔為2/‖ω‖2,要使分類間隔最大化,即令‖ω‖2取最小值。利用拉格朗日乘子優(yōu)化方法,將最優(yōu)分類面的問題轉換為其對偶問題,使下列函數(shù)取得最大值:
(2)
αi為Lagrange乘子,與約束條件式(1)一一對應。解得的最優(yōu)分類函數(shù)為:
(3)
式(3)的求和運算只針對支持向量機。b*為分類的閾值,用任意滿足不等式(1)中等號的支持向量即可求得,也可以用任意一對支持向量機取中值算得。
在非線性條件下,利用非線性變換,將問題轉換到高維空間上,再來求解線性問題。若有非線性映射Φ:Rd→H,將在輸入空間的較低維度的樣本映射到較高維的特征空間H中。因此,若存在函數(shù)K,有K(xi·xj)=Φ(xi)·(xj),使得在高維空間中的運算僅涉及內積運算,且可以通過原低維空間的函數(shù)來求得該類內積。目標函數(shù)式(2)的形式相應地變?yōu)椋?/p>
(4)
與之對應的分類函數(shù)轉變?yōu)椋?/p>
(5)
根據(jù)支持向量機理論,對于訓練集,i=1,2,…,n,x∈Rd,y∈Rd,有:
(6)
C為懲罰因子,相應的對偶問題即:
解該最大值問題,可以得到:
(8)
這即為支持向量機的回歸預測方法,基于結構風險最小化原則,綜合考慮了訓練樣本的合理性與復雜性,具備較好的外推預測能力。
1.2 GA-SVM的參數(shù)尋優(yōu)
支持向量機可以較好地運用于預測中,尋找最優(yōu)的超平面,重要的是需要預先設置好參數(shù)再進行試驗。由于水文預測的非線性特征,需要利用對于非線性復雜特征有較高分析能力的參數(shù)尋優(yōu)算法進行研究。因此,筆者選擇遺傳算法進行參數(shù)尋優(yōu)。
以模擬自然選擇與遺傳學機理為基礎,遺傳算法(geneticalgorithm,GA)是一種迭代自適應概率搜索算法[14]。遺傳算法的主要特點為群體搜索策略和種群中個體之間的信息交換。由于該算法具有較強的健壯性,對于非線性的復雜問題有較高的分析能力。
遺傳優(yōu)化算法進行參數(shù)尋優(yōu)的步驟如下:①隨機初始化種群。對隨機產(chǎn)生在參數(shù)空間中的一組群體進行編碼;②計算個體的適應度;③判斷是否滿足預先設定的停止準則,若滿足轉步驟⑥,不滿足轉步驟④;④根據(jù)個體的適應度值來決定應復制的個數(shù),進行交叉和變異操作,產(chǎn)生新種群;⑤計算新產(chǎn)生種群的適應度值,返回步驟③;⑥得到GA優(yōu)化的新參數(shù),建立GA-SVM模型;⑦判斷GA-SVM模型精度是否滿足預先設定的停止準則,若滿足則轉步驟⑧,若不滿足返回步驟①;⑧確定SVM最優(yōu)的懲罰因子C及核函數(shù)參數(shù)g。
利用遺傳算法的全局尋優(yōu)能力,確定SVM中的懲罰因子C及核函數(shù)參數(shù)g。遺傳算法的搜索區(qū)間由當前樣本集確定,確定搜索區(qū)間之后,在區(qū)間內進行參數(shù)尋優(yōu)。
2.1 構建樣本數(shù)據(jù)集
影響河川徑流量的因素非常復雜,根據(jù)國內外學者的研究成果[15-16],可以將這些影響因素分為兩類:降雨因素和人類活動因素。降雨因素主要有月降水量、月降水日數(shù)、月蒸發(fā)量和月平均水位。而人類活動因素非常復雜,涉及空間、地理的因素非常廣,較難用數(shù)據(jù)量化。
為了選取降雨因素與徑流量一致性較高的時間段,利用雙累積曲線剔除人類活動因素變化幅度較大的時間段,即選擇一個時間段的數(shù)據(jù)作為測試數(shù)據(jù),使得人類活動因素的影響最小。雙積累曲線(double mass curve,DMC)是一種簡單直觀的分析水文氣象要素一致性及其長期演變趨勢的方法[17]。在一致的時段內,如果既定的變量數(shù)據(jù)成正比,那么在直角坐標內,一個變量的累積值與另一個變量的累積值呈直線關系,兩變量的對應點的比例常數(shù)即為直線斜率;如果其斜率突變,說明兩個變量之間的比例常數(shù)產(chǎn)生了變化。與斜率突變點相對應的年份,即為兩個累積變量關系發(fā)生突變的時間。
2.2 樣本輸入?yún)?shù)歸一化
為了消除各個影響因素由于類型不同及非量綱化的影響,用離差標準化的歸一化方法將學習樣本的輸入?yún)?shù)限定在[0, 1]的區(qū)間內。
2.3 模型的輸出
以歸一化變量rij作為模型的輸入,以預測的月平均徑流量作為對應的輸出,對SVM模型進行訓練。
3.1 研究區(qū)域和數(shù)據(jù)
首先構建樣本數(shù)據(jù)集。選擇昆明高古馬水文站1956年1月至2010年12月的數(shù)據(jù),繪制月降水量、月降水日數(shù)、月蒸發(fā)量、月平均水位與月平均徑流量的雙累積曲線,如圖2所示。其中月降水量、月蒸發(fā)量、月降水日數(shù)和月平均水位的數(shù)據(jù)從1956年1月開始,月平均徑流量的數(shù)據(jù)從1956年2月開始。
從圖2中可知,4類降雨量因素與月平均徑流量在1956—2010年這段期間內,斜率大致保持一致,人類活動因素在這段時間保持穩(wěn)定,1986—2010年的時間段中,降雨因素與徑流量有著相對更好的一致性,波動起伏對應關系良好,故應選取1986—2010年時間段內的數(shù)據(jù)。
圖2 月平均徑流量與各降雨因素的雙累積曲線
為使預測模型更具實用性,在建模中不選擇當月的降水因素作為輸入變量。在外推預測中,往往使用前一步數(shù)的影響因子來推測后一步的輸出值。綜合考慮各個因素,建立徑流量預測模型的關系式為:
yt=f(yt-1,at-1,bt-1,ct-1,…)
(9)
式中:yt、yt-1分別為第t、t-1個月的月平均徑流量;at-1、bt-1、ct-1等為第t-1個月的各個降水量因素。根據(jù)昆明高古馬水文站提供的資料,以1986—2000年每月的數(shù)據(jù)作為支持向量機學習的訓練樣本,2001—2010年每月的數(shù)據(jù)作為測試樣本。
3.2 結果及討論
將相應影響因素指標及月平均徑流量數(shù)據(jù)共同組成25年的評價樣本,其中前15年共179組評價樣本作為支持向量機的訓練樣本,后10年共119組評價樣本作為支持向量機的預測樣本。
模型使用徑向基核函數(shù),設定的遺傳算法尋優(yōu)參數(shù)為:最大進化代數(shù)取值為200,種群最大數(shù)量為20,懲罰因子C的取值范圍為[1,100],核函數(shù)參數(shù)g的取值范圍為[1,1 000],交叉驗證次數(shù)為3。最終,參數(shù)尋優(yōu)結果懲罰參數(shù)C=5.482,核函數(shù)參數(shù)g=1.966。將云南省昆明高古馬水文站1986—2010年的179組樣本數(shù)據(jù)采用極差標準化方法歸一化后的結果代入測試,得出后119組的月平均徑流量預測結果,偏差計算結果MSE=2.607×10-3。預測結果如圖3所示,實際徑流量與預測相對誤差分布的對比圖如圖4所示。
圖3 實際月平均徑流量和SVM回歸預測數(shù)據(jù)對比
圖4 實際流量與相對誤差對比圖
由圖4不難發(fā)現(xiàn),月平均徑流量實際值較小的月份,支持向量機預測模型的相對預測誤差較大。究其原因是在徑流量較小時,影響水文條件的因素較多,所涉及的時空尺度大。然而從長期的趨勢看,預測值和實際值總體還是趨于一致的,擬合程度較為理想。
BP神經(jīng)網(wǎng)絡有著很強的非線性擬合能力,能以任意精度逼近任意非線性連續(xù)函數(shù),是水文預測研究常用方法[18]。筆者同時利用BP神經(jīng)網(wǎng)絡進行昆明高古馬水文站月平均徑流量的預測,目的是與GA-SVM的預測結果對比。根據(jù)預測結果,BP神經(jīng)網(wǎng)絡回歸預測的偏差MSE=8.834×10-3,大于支持向量機的MSE值。而兩者的平均相對誤差,BP神經(jīng)網(wǎng)絡為1.28%,支持向量機為0.84%。兩者的預測相對誤差對比如圖5所示。
圖5 支持向量機和人工神經(jīng)網(wǎng)絡的預測相對誤差對比
由圖5可知,除了上述分析的月平均徑流量較小的時段,GA-SVM預測結果的誤差大部分時候都低于BP神經(jīng)網(wǎng)絡的預測誤差。研究得出,支持向量機預測的準確性高于BP神經(jīng)網(wǎng)絡,這也體現(xiàn)了SVM較強的泛化與預測能力的特點,從側面驗證了GA-SVM預測模型的可靠性。
筆者將遺傳算法優(yōu)化的支持向量機算法引入到水文預測中,建立基于GA-SVM的河川徑流量預測模型,利用雙累積曲線剔除了人類活動因素,并結合云南省昆明高古馬水文站1986—2010年的月平均徑流量樣本實例與實際情況進行比較分析。結果表明,基于GA-SVM的水文預測模型有較高的預測精度。
[1] 李文莉,李郁俠.基于粒子群最小二乘支持向量機的水文預測[J].計算機應用,2012,32(4):1188-1190.
[2] 暢明琦,劉俊萍.蘭州站徑流支持向量機預測[J].水力發(fā)電學報,2010,29(4):32-38.
[3] 李彥彬,尤鳳,黃強,等.多元變量徑流預測的最小二乘支持向量機模型[J].水力發(fā)電學報,2010,29(3):28-33.
[4] 廖杰,王文圣,李躍清,等.支持向量機及其在徑流預測中的應用[J].四川大學學報,2006,38(6):24-28.
[5] 張學工.關于統(tǒng)計學習理論與支持向量機[J].自動化學報,2000,26(1):32-42.
[6] 祁亨年.支持向量機及其應用研究綜述[J].計算機工程,2004,30(10):6-9.
[7] 張利平,王德智,夏軍,等.相空間神經(jīng)網(wǎng)絡模型及其在水文預測中的應用[J].水電能源科學,2004,22(1):5-8.
[8] 王義民,于興杰,暢建霞,等.基于BP神經(jīng)網(wǎng)絡馬爾科夫模型的徑流量預測[J].武漢大學學報(工學版),2008,41(5):14-17.
[9] 鄧紅霞,李存軍,趙太想,等.基于SPA的水文預測模型評估[J].四川大學學報(工程科學版),2007,38(6):34-37.
[10] 李文莉,李郁俠.基于粒子群最小二乘支持向量機的水文預測[J].計算機應用,2012,32(4):1188-1190.
[11] 李慶國,陳守煜.基于模糊模式識別的支持向量機的回歸預測方法[J].水科學進展,2006,16(5):741-746.
[12] MOHSEN B, ASGHARI K, EAZI M, et al. Generalization performance of support vector machines and neural networks in runoff modeling[J]. Expert Systems with Applications, 2009,36(4):7624-7629.
[13] DEBASMITA M, OOMMEN T, AGARWAL A, et al. Application and analysis of support vector machine based simulation for runoff and sediment yield[J]. Biosystems Engineering, 2009,103(4):527-535.
[14] ZHOU J, BAI T, SUO C. The SVM optimized by culture genetic algorithm and its application in forecasting share price[C]∥2008 IEEE International Conference on Granular Computing. Hangzhou :IEEE, 2008:838-843.
[15] 張峰,任全志,秦秀梅.徑流變化的影響因素分析[J].水土保持應用技術,2013(3):31-32.
[16] ORTIZ R F. Methods to identify changes in background water-quality conditions using dissolved-solids concentrations and loads as indicators, Arkansas River and Fountain Creek, in the vicinity of Pueblo, Colorado[J]. US Geological Survey, 2004(6):24-25.
[17] 穆興民,張秀勤,高鵬,等.雙累積曲線方法理論及在水文氣象領域應用中應注意的問題[J].水文,2010,2(4):47-51.
[18] 李存軍,鄧紅霞,朱兵,等.BP神經(jīng)網(wǎng)絡預測日徑流序列的數(shù)據(jù)適應性分析[J].四川大學學報(工程科學版),2007,39(2):25-29.
SUN Zhanqing:Postgraduate; School of Business, Hohai University, Nanjing 211100, China.
[編輯:王志全]
River Runoff Forecasting Using GA-based Support Vector Machines
SUNZhanqing,XIELei
The traditional support vector machine was optimized by genetic algorithm. A river runoff forecasting model based on GA-SVM was established. Double mass curve was used to reduce the effect factors of human activities. The statistic data of runoff of Gaoguma Hydrometrical Station in Yunnan were used as the empirical research object. The comparison of predicting outcomes was conducted between the BP neural networks and SVMs. It is proved that the GA-SVM model is more precise and effective in runoff forecast.
support vector machines (SVMs); regression model; runoff forecast; genetic algorithm
2015-03-12.
孫湛青(1989-),男,浙江杭州人,河海大學商學院碩士研究生.
2095-3852(2015)05-0593-05
A
P338.2
10.3963/j.issn.2095-3852.2015.05.015