孫九兵 王珊珊
【摘 要】本文基于滑坡時間序列位移,根據(jù)相空間理論構(gòu)建位移時間序列矩陣,利用熵值理論求取熵值。通過熵值變化及位移預(yù)測誤差反饋調(diào)整該時序相空間重構(gòu)的嵌入維數(shù),然后利用支持向量機學(xué)習(xí)創(chuàng)建支持向量回歸機模型。并通過實例進行位移時間序列預(yù)測,預(yù)測效果好。
【關(guān)鍵詞】滑坡;時間序列;相空間
0 前言
在對滑坡的位移演化研究中,由于滑坡的形態(tài)、類型、規(guī)模等各不相同,一般選擇單個滑坡研究其位移時間曲線的變化。在傳統(tǒng)的位移時序研究方法[1-2]中,是采用時間序列分析法直接從位移這個序列研究滑坡的時間演變。隨著滑坡可以被視為一種具有混沌特征的復(fù)雜過程這一觀點的提出,根據(jù)混沌系統(tǒng)特征預(yù)測滑坡位移可能比統(tǒng)計學(xué)方法的預(yù)測更好[3]。相空間重構(gòu)理論是混沌時間序列預(yù)測的基礎(chǔ)。在滑坡這個受地質(zhì)條件、地下水、地震和人類工程活動等多種因素影響而發(fā)展演化的多維非線性動力系統(tǒng)中,位移作為滑坡變形破壞的重要反饋信息,包括整個系統(tǒng)的非線性動力特征,通過位移數(shù)據(jù)的相空間重構(gòu)可體現(xiàn)整個系統(tǒng)的運動特征。
1 相空間重構(gòu)理論
1.1 滑坡位移時間序列相空間
相空間重構(gòu)理論系統(tǒng)中分量之間存在著相互作用,并且任一分量的變化與其他分量之間不可分割,這些分量的信息也可以說就隱藏在任何一個分量的變化過程中[4-5]。因此系統(tǒng)的混沌行為可以通過系統(tǒng)長期演變的任一單變量時間序列來研究[6]。
對滑坡位移時間序列重構(gòu)相空間,引入延遲時間和嵌入維,建立恰當?shù)哪P?,根?jù)一維位移序列轉(zhuǎn)換出多維的相空間,可研究滑坡位移系統(tǒng)的動態(tài)特征[7]。
1.2 嵌入維
記逆序重構(gòu)的相空間轉(zhuǎn)置矩陣為時序重構(gòu)矩陣(1),取m為整數(shù)N/2,則該矩陣包括所有的樣本。
a)為方便計算,首先對重構(gòu)的位移時間序列矩陣按照原序列按照自底向上的順序進行擴充,并在空白位置填補零值。令dij表示擴充后位移時間序列矩陣中第i行第j列的位移記錄值,則根據(jù)熵值理論的要求,其熵值計算如式(2),式中,k是一個常數(shù)1/In(l2),l1,l2分別為擴充后位移時間序列矩陣的行數(shù)和列數(shù)。并且當pij=0時,則令I(lǐng)n(pij)=0。
b)找出峰值點對應(yīng)的維數(shù)。定義在熵值變化量曲線中的任意三個連續(xù)維數(shù),如果中間維數(shù)對應(yīng)的值大于兩端維數(shù)對應(yīng)的值,則稱中間維數(shù)對應(yīng)的熵值變化量為峰值,中間維數(shù)為峰值維。即先對上式(2)中求得的熵值求取其變化量,再從中尋找峰值對應(yīng)的峰值維,如式(3):
Fi=max{(hi-hi-1),(hi+1-hi),(hi+1-hi)},i∈{1,2,…,l2}(3)
其下標i就是峰值點對應(yīng)的峰值維。根據(jù)這個維數(shù)可以重新構(gòu)建相空間位移時序矩陣作為模型的訓(xùn)練集。如果峰值維只有一個,則可以唯一確定相空間重構(gòu)維,否則需要根據(jù)多個峰值維以相同的方式分別建立位移時序預(yù)測子模型,并計算子模型的均方根誤差,選取均方根誤差最小的峰值維作為整個序列的重構(gòu)嵌入維數(shù)。
2 支持向量機
支持向量機[8-9]是一種比較好的實現(xiàn)了結(jié)構(gòu)風(fēng)險最小化思想的方法,對給定的數(shù)據(jù)逼近的精度與逼近函數(shù)的復(fù)雜性之間尋求折衷,以期獲得最好的推廣能力。從理論上說,支持向量機解決了在神經(jīng)網(wǎng)絡(luò)方法中無法避免的局部極值問題,并將實際問題通過非線性變換轉(zhuǎn)換到高維的特征空間,在高維空間中構(gòu)造線性決策函數(shù)來實現(xiàn)原空間中的非線性決策函數(shù),巧妙地解決了維數(shù)問題,并保證了有較好的推廣能力[10-11]。一般采用回歸在邊坡位移非線性時間序列中預(yù)測期位移值[12]。
3 模型建立
Oracle Data Mining (ODM) 強大的數(shù)據(jù)挖掘功能以 Oracle 數(shù)據(jù)庫中的原生 SQL 函數(shù)形式提供[13]。Oracle SVM會基于算法的復(fù)雜度及樣本不大的原因自動取樣來實現(xiàn)線性擴展[14]。但在創(chuàng)建模型之前,為了滿足數(shù)據(jù)的平穩(wěn)性,還需要進行趨勢移動、目標轉(zhuǎn)換、屬性選擇數(shù)據(jù)處理。
3.1 數(shù)據(jù)處理
采取對已知觀測數(shù)據(jù)序列進行對數(shù)變換可以在一定程度上減小不可觀測的誤差和預(yù)測變量的相關(guān)性,差分可以消除其趨勢以及降低其波動幅度,Z-score方法的常態(tài)化可以使其在零值附近波動而成為平穩(wěn)序列,即tdi=log(di),tdi+1=tdi+1-tdi,tdi=(tdi-td)/σtd,其中td,σtd分別為參與模型訓(xùn)練的樣本均值及方差。
3.2 模型建立
ODM通過PL/SQL API等接口的調(diào)用可以實現(xiàn)數(shù)據(jù)挖掘的建模、測試及應(yīng)用模型等基本功能,并為多種數(shù)據(jù)挖掘算法提供支持[15-17]。其中ODM SVM回歸支持通過時間延遲或lag方法的時序建模,提供時序預(yù)測功能,但是訓(xùn)練更簡化。在其簡單的形式中,以時序想要預(yù)測內(nèi)容作為目標,目標的過去值被作為模型的輸入。
在滑坡的位移時序模型建立中,其位移是模型預(yù)測的目標,而位移樣本數(shù)據(jù)則會預(yù)留小部分作為檢驗數(shù)據(jù),其余數(shù)據(jù)則作為位移過去值成為模型的輸入部分。單變量位移序列通過時序重構(gòu)矩陣變換后則構(gòu)成模型的訓(xùn)練集。這一過程不僅使單變量的序列從一維擴展到了多維,還給加入其他影響因素提供了機會。鑒于位移數(shù)據(jù)的非平穩(wěn)性,在訓(xùn)練模型之前還需要經(jīng)過一系列的數(shù)據(jù)處理。然后通過在處理后的訓(xùn)練集上利用PL/SQL API訓(xùn)練創(chuàng)建SVR數(shù)據(jù)挖掘模型。同時利用得到的模型進行多步預(yù)測,并對預(yù)測結(jié)果經(jīng)過與數(shù)據(jù)處理相反的還原操作后得到預(yù)測的位移序列后n個時刻的實際預(yù)測值。
4 以白家包滑坡為例
4.1 數(shù)據(jù)準備
本文以庫區(qū)三期監(jiān)測滑坡的秭歸白家包滑坡作為研究對象。滑坡體上共布置有4個GPS監(jiān)測點。監(jiān)測時間始于2006年。對滑坡地表觀測原位移數(shù)據(jù)通過樣條差值處理得到65個觀測數(shù)據(jù),整個數(shù)據(jù)分為兩部分,第一部分取前59個為觀測樣本數(shù)據(jù),剩余數(shù)據(jù)組成第二部分,作為檢驗數(shù)據(jù)。對數(shù)據(jù)進行分析發(fā)現(xiàn):監(jiān)測數(shù)據(jù)都與時間有關(guān),具有一定的連續(xù)性,適合采用回歸算法以及擬合算法來建立模型。
4.2 相空間定維
時序重構(gòu)矩陣的變換與相空間重構(gòu)維數(shù)密切相關(guān)。而在相空間中,其維數(shù)直接關(guān)系到時間演變因子與其他因子的各種相互作用,因此,維數(shù)的確定是重構(gòu)的一個關(guān)鍵。
在本實例中,4個監(jiān)測點的位移時序分別使用相同的方式進行處理及預(yù)測。首先利用單個監(jiān)測點等距處理后第一部份的54個樣本初次確定時序重構(gòu)矩陣,其重構(gòu)時延默認為1,維數(shù)初值是樣本數(shù)的一半為27。然后根據(jù)變換得到的時序重構(gòu)矩陣求取其熵值信息。在熵值信息中可以發(fā)現(xiàn),噪聲的影響會隨著維數(shù)的擴大而增加,且各個監(jiān)測點位移序列得到的熵值大小相差不大。因此,我們需要選擇一個合適的范圍進一步觀察。當本實例中的熵值大于0.85時,其對應(yīng)的維數(shù)不僅滿足相空間維數(shù)確定的經(jīng)驗賦值法,而且也符合時間序列所代表活動先驗知識中選取維數(shù)的范圍。故主要處理熵值大于0.85時的部分,進一步求取其對應(yīng)熵值與相鄰維對應(yīng)熵值差的絕對值作為該維對應(yīng)的熵變化量,從而確定熵變化量曲線。再根據(jù)熵的變化量曲線尋找其峰值維的過程中,發(fā)現(xiàn)每個監(jiān)測點分別包含2個維數(shù)待定選項。為了確定最終的維數(shù),則先以樣本數(shù)據(jù)第一部分的子集作為輸入,根據(jù)這些維數(shù)分別以相同方式建立子模型并求取其RMSE。
不同維數(shù)最終得到的預(yù)測值之間存在明顯差異,為盡可能預(yù)測其變化趨勢,需要根據(jù)誤差反饋進一步調(diào)整維數(shù)。選擇其誤差最小時對應(yīng)維數(shù)作為該序列的合適重構(gòu)維數(shù),即4個監(jiān)測點位移分別確定維數(shù)為6,7,16和15。
4.3 滑坡位移時間序列預(yù)測
各個監(jiān)測點觀測序列分別利用最終確定的嵌入維數(shù)重復(fù)位移時間序列矩陣構(gòu)建過程,從而使原始的一維序列通過變形得到用于短期預(yù)測的學(xué)習(xí)樣本。通過對學(xué)習(xí)樣本的訓(xùn)練得到支持向量機時序預(yù)測模型,并以檢驗數(shù)據(jù)以外的所有樣本作為模型輸入,模擬后續(xù)情況下的位移時間序列預(yù)測。其預(yù)測值同樣需要經(jīng)過與數(shù)據(jù)處理過程完全逆向的還原操作。各個監(jiān)測點的預(yù)測結(jié)果(如表1所示)與原位移相對接近,前四步的誤差均保持在6%以內(nèi),預(yù)測效果較好。
5 結(jié)束語
從理論上說,相空間重構(gòu)中的嵌入維數(shù)選擇越大越好。但隨著嵌入維數(shù)的增大,其噪聲的影響也會放大,因此需要選擇合適的嵌入維數(shù)。但用于相空間重構(gòu)的維數(shù)也不可能不斷擴大,在實際中往往需要一個學(xué)習(xí)效果好且相對穩(wěn)定的模型進行預(yù)測。對比發(fā)現(xiàn),基于熵值理論尋找的維數(shù)通過重構(gòu)后訓(xùn)練集的預(yù)測效果擬合較好,能夠提高一定的準確性。從而說明,熵值理論對尋找合適的相空間嵌入維可能會有幫助。另外,SVM回歸提供的時序預(yù)測功能訓(xùn)練簡化,能夠使用大量變量,因此被廣泛應(yīng)用于金融預(yù)測、電力負載預(yù)測等很多領(lǐng)域。
【參考文獻】
[1]徐峰,等.基于時間序列分析的滑坡位移預(yù)測模型研究[J].巖石力學(xué)與工程學(xué)報,2011,30(4).
[2]彭令,牛瑞卿,吳婷.時間序列分析與支持向量機的滑坡位移預(yù)測[J].浙江大學(xué)學(xué)報:工學(xué)版,2013,47(9).
[3]周創(chuàng)兵,陳益峰.基于相空間重構(gòu)的邊坡位移預(yù)測[J].巖土力學(xué),2000,21(3).
[4]吳湘寧,胡炫,胡光道,胡成玉,李桂玲.Oracle 中使用支持向量機的時間序列預(yù)測方法[J].計算機工程與應(yīng)用,2013,49(14):121-125.
[5]唐璐,齊歡.混沌和神經(jīng)網(wǎng)絡(luò)結(jié)合的滑坡預(yù)測方法[J].巖石力學(xué)與工程學(xué)報,2003,22(12):1984:1986.
[6]劉華明,齊歡,蔡志強.滑坡預(yù)測的非線性混沌模型[J].巖土力學(xué)與工程學(xué)報,2003,22(3):434-437.
[7]楊虎,吳北平,汪利.混沌序列PSO-RBF耦合模型在滑坡位移預(yù)測中的應(yīng)用[J].科學(xué)技術(shù)與工程,2013,13(30).
[8]劉華煜.基于支持向量機的機器學(xué)習(xí)研究[D].大慶石油學(xué)院,2005.
[9]林大超,安鳳平,郭章林,張立寧.滑坡位移的多模態(tài)支持向量機模型預(yù)測[J].巖土力學(xué),2011,4(32):451-458.
[10]熊天安,劉邦兵,雷暢.相空間重構(gòu)理論支持下的滑坡預(yù)測方法[J].地理空間信息,2011(3).
[11]董輝,傅鶴林,冷伍明.支持向量機的時間序列回歸與預(yù)測[J].系統(tǒng)仿真學(xué)報,2006,18(7):1785-1788.
[12]劉開云,喬春生,滕文彥.邊坡位移非線性時間序列采用支持向量機算法的智能建模與預(yù)測研究[J].巖土工程學(xué)報,2004(1):57-61.
[13]陳榮鑫,陳維斌.基于Oracle ODM的數(shù)據(jù)挖掘研究[J].微機發(fā)展,2005(7):84-85.
[14]劉維會.不平衡數(shù)據(jù)集上支持向量機算法研究[D].山東科技大學(xué),2010.Liu weihui. Study of Support Vector Machine Algorithms on Unbalanced Dataset. ShandongUniversityofSeienceandTechnolog,2010.
[15]朱傳華.三峽庫區(qū)地質(zhì)災(zāi)害數(shù)據(jù)倉庫與數(shù)據(jù)挖掘應(yīng)用研究[D].中國地質(zhì)大學(xué),2010.
[16]http://blog.csdn.net/wonder4/article/details/1919156[Z].
[17]Oracle USA, Inc. Oracle data mining application developers guide 11g release 1 (11.1), B28131-04[R]. CA, USA: Red-wood City, 2008[Z].
[責任編輯:湯靜]