摘要:神經(jīng)網(wǎng)絡和支持向量機都能有效地預測時間序列數(shù)據(jù),但各自結(jié)構(gòu)特點不同,導致其預測性能有差別。文章從理論和實踐上比較了支持向量機與神經(jīng)網(wǎng)絡的優(yōu)缺點。
關(guān)鍵詞:支持向量;神經(jīng)網(wǎng)絡;時間序列;預測
時間序列數(shù)據(jù)具有躁聲、不穩(wěn)定、隨機性、非線性等特點[1,2],而神經(jīng)網(wǎng)絡在非線性建模中具有優(yōu)勢,它不必建立復雜的數(shù)學模型即可完成預測。目前已有很多工作者研究神經(jīng)網(wǎng)絡,并將其應用到時間序列數(shù)據(jù)預測中去,取得了不錯的效果。但由于神經(jīng)網(wǎng)絡算法采用的是經(jīng)驗風險最小化原則,容易陷入局部極小點,收斂速度慢等缺點,這些不足極大地限制這些方法在實際中的應用。支持向量機(Support Vector Machines,SVM)采用的結(jié)構(gòu)風險最小化原則,整個求解過程轉(zhuǎn)化一個凸二次規(guī)劃問題,解是全局最優(yōu)的和唯一的。由于很好地克服了神經(jīng)網(wǎng)絡的一些不足,而在實際應用中取得了很好的性能表現(xiàn)。
一、 支持向量機理論
支持向量機是基于統(tǒng)計學習理論(Statistical Learning Theory,SLT)發(fā)展起來的。傳統(tǒng)的統(tǒng)計學所研究的主要是漸近理論,即當樣本趨向于無窮多時的統(tǒng)計性質(zhì)。在現(xiàn)實問題中,給出的樣本數(shù)目通常是有限的,但傳統(tǒng)上仍以樣本數(shù)目無窮多為假設(shè)來推導各種算法,并期望算法在樣本較少時也能有較好的(至少是可接受的)表現(xiàn)。不過情況往往相反,其中,神經(jīng)網(wǎng)絡過學習問題就是一個典型的代表:當樣本數(shù)有限時,本來很不錯的一個學習機器卻可能表現(xiàn)出很差的推廣能力。人們對于解決此類問題的努力實際上一直在進行。但是,其中多數(shù)工作集中在對已有(基于傳統(tǒng)統(tǒng)計學原則的)方法的改進和修正,或者利用啟發(fā)式方法設(shè)計某些巧妙的算法。而統(tǒng)計學習理論則系統(tǒng)地研究了機器學習的問題,尤其是有限樣本情況下的統(tǒng)計學習問題。統(tǒng)計學習理論是目前針對小樣本統(tǒng)計估計和預測學習的最佳理論,它從理論上系統(tǒng)地研究了經(jīng)驗風險最小化原則成立的條件、有限樣本下經(jīng)驗風險與期望風險的關(guān)系及如何利用這些理論找到新的學習原則和方法等問題,統(tǒng)計學習理論因為對有限樣本情況下模式識別、函數(shù)逼近中的一些根本性問題進行了系統(tǒng)的理論研究,在很大程度上解決了模型選擇與過學習問題、非線性和維數(shù)災難問題、局部極小點問題等,因此成為研究的熱點。
20世紀90年代中期,在這一理論框架下產(chǎn)生出了支持向量機這一新的機器學習方法,或者說支持向量機是統(tǒng)計學習理論實現(xiàn)的具體表現(xiàn)。
或許是由于統(tǒng)計學習理論為人們系統(tǒng)研究有限樣本情況下機器學習問題提供了有力的理論基礎(chǔ),或許更是因為在這一基礎(chǔ)上的支持向量機方法所表現(xiàn)出的令人向往的優(yōu)良特性,人們開始迅速重視起該學術(shù)方向。現(xiàn)在,越來越多的學者認為,關(guān)于統(tǒng)計學習理論和支持向量機的研究,將很快出現(xiàn)象在80年代后期人工神經(jīng)網(wǎng)絡研究那樣的飛速發(fā)展階段。與傳統(tǒng)神經(jīng)網(wǎng)絡所不同的是,統(tǒng)計學習理論有完備的理論基礎(chǔ)和嚴格的理論體系(相比之下神經(jīng)網(wǎng)絡有更多的啟發(fā)式成分),而且其出發(fā)點是更符合實際情況的有限樣本假設(shè),具有更強的科學性。
Vapnik博士就是統(tǒng)計學習理論的創(chuàng)立者之一,也是支持向量機方法的主要發(fā)明者。該理論方法最早是由Vapnik領(lǐng)導的ATTBell實驗室研究小組提出,最初用來解決模式識別的,其第一個應用是Vapnik等人在美國ATT實驗室做的手寫數(shù)字識別,他們利用美國國家郵政總局數(shù)據(jù)庫提供的7 300個訓練樣本和2 000個測試數(shù)據(jù)設(shè)計了多項式、徑向基函數(shù)、二層神經(jīng)網(wǎng)絡等不同形式的支持向量機,樣本的分辨率為16×16象素,系統(tǒng)維數(shù)為256,實驗表明3種結(jié)果SVM得到的支持向量數(shù)目接近(274、291、254),其中共同的支持向量數(shù)目約為80%,識別率要好于神經(jīng)網(wǎng)絡。
后來支持向量機擴展應用到函數(shù)逼近、回歸估計等問題。無論是模式識別還是函數(shù)逼近,支持向量機都將求解問題最終歸結(jié)為一個線性約束的凸二次規(guī)劃(QP)問題,求出的解是全局最優(yōu)的和唯一的。
二、 徑向基神經(jīng)網(wǎng)絡理論
1988年Broomhead和Lowe提出了一種多變量函數(shù)迭代和自適應網(wǎng)絡,稱為徑向基函數(shù)網(wǎng)絡(Radial Basis Function Network,簡稱RBFN)。這種結(jié)構(gòu)近似于多層前向神經(jīng)網(wǎng)絡。徑向基函數(shù)網(wǎng)絡由輸入層、隱藏層和輸出層組成的三層結(jié)構(gòu),由于這種網(wǎng)絡結(jié)構(gòu)簡單,學習速度快,引起了人們的廣泛關(guān)注。D. S. Broomhead,J. Moody,S. Chen等人分別提出了一種徑向基函數(shù)網(wǎng)絡的快速學習算法,把徑向基函數(shù)網(wǎng)絡的學習過程分成兩個獨立的過程,這種算法稱為兩步算法(Two—Step Algorithm)。第一步確定隱藏層參數(shù);第二步基于最小均方差標準學習確定輸出層參數(shù)。
具體算法中隱藏層采用高斯函數(shù):
其中Ti為高斯函數(shù)的中心,而為高斯函數(shù)的寬度, C為隱藏層的神經(jīng)元數(shù)。算法步驟設(shè)計如下:第一步,利用k-mean分類法確定RBF函數(shù)的中心和寬度,第二步,確定隱藏層到輸出層的權(quán)值。
兩步法學習徑向基函數(shù)網(wǎng)絡計算量小、速度快,而且具有良好的推廣能力,是目前使用比較廣泛的一種RBF神經(jīng)網(wǎng)絡學習算法。
三、 SVM與神經(jīng)網(wǎng)絡學習結(jié)構(gòu)比較
統(tǒng)計學習理論系統(tǒng)地研究了各種類型函數(shù)集的經(jīng)驗風險和實際風險之間的關(guān)系,即推廣性的界。即給出經(jīng)驗風險
上式右邊包含了兩項,第一項是經(jīng)驗風險,第二項是置信范圍,這樣要最小化風險,有兩種方法:第一種方法是保持置信范圍不變,最小化經(jīng)驗風險,這就是神經(jīng)網(wǎng)絡方法。這意味著神經(jīng)網(wǎng)絡先要確定網(wǎng)絡結(jié)構(gòu),然后按照經(jīng)驗風險最小化原則訓練,確定了結(jié)構(gòu)就等于確定了機器學習的置信范圍,為達到經(jīng)驗風險最小,其VC維往往很大而造成過學習的現(xiàn)象。第二種方法則是保持經(jīng)驗風險不變(比如等于零),最小化置信范圍,這就是支持向量機方法。支持向量機選擇的是經(jīng)驗風險和置信范圍的最佳組合,可以防止欠學習與過學習現(xiàn)象。
通過支持向量機與神經(jīng)網(wǎng)絡的比較分析,可以歸納出支持向量機有如下三個主要特點:(1)于結(jié)構(gòu)風險最小化原則,給出實際風險的上界,保證學習機器具有良好的泛化能力。(2)算法最終轉(zhuǎn)化為一個線性約束的凸優(yōu)化問題,保證了算法的全局最優(yōu)性和解的唯一性。(3)應用核技術(shù),將輸入空間中的線性不可分問題轉(zhuǎn)化為特征空間的線性可分問題。
相對支持向量機,神經(jīng)網(wǎng)絡存在以下不足:(1)網(wǎng)絡結(jié)構(gòu)需要事先指定或應用啟發(fā)式算法在訓練過程中修正,這些啟發(fā)式算法難以保證網(wǎng)絡結(jié)構(gòu)的最優(yōu)化。對于多層網(wǎng)絡,這是一個很復雜的組合問題。(2)網(wǎng)絡權(quán)系數(shù)的調(diào)整方法存在局限性。具體表現(xiàn)在訓練可能過早結(jié)束而產(chǎn)生權(quán)值衰退。(3)神經(jīng)網(wǎng)絡容易陷入局部最優(yōu),有些訓練算法甚至無法得到最優(yōu)解。(4)過分依賴學習樣本,即模型性能的優(yōu)劣過分依賴于模型訓練過程中樣本數(shù)據(jù)的數(shù)量和質(zhì)量。大多數(shù)情況下,樣本數(shù)據(jù)是有限的。另外,許多實際問題中的輸入空間是高維的,樣本數(shù)據(jù)僅是輸入空間中的稀疏分布,即使能得到高質(zhì)量的訓練數(shù)據(jù),數(shù)據(jù)量也必然很大。大量的樣本數(shù)據(jù)勢必會大大增加算法的訓練時間。(5)目前尚無一種理論能定量地分析神經(jīng)網(wǎng)絡的訓練過程的收斂速度,以及收斂速度的決定條件,并對其加以控制。(6)神經(jīng)網(wǎng)絡方法的優(yōu)化目標是基于經(jīng)驗的風險最小化(ERM,Empirical Risk Minimization),這只能保證學習樣本點的估計(分類)誤差最小,實際上,該誤差應對所有可能的點都達到最小,即泛化性能最好。神經(jīng)網(wǎng)絡方法回避了經(jīng)驗風險能否收斂于實際風險以及收斂條件等重要問題。
盡管存在上述問題,神經(jīng)網(wǎng)絡在原有框架內(nèi)仍然取得了很多成功應用。其原因就在于這些應用的設(shè)計者,在設(shè)計神經(jīng)網(wǎng)絡過程中,有效利用了自己的經(jīng)驗和先驗知識。因此,神經(jīng)網(wǎng)絡系統(tǒng)的優(yōu)劣是因人而異的。而支持向量機具有嚴格的理論和數(shù)學基礎(chǔ),可以有效克服神經(jīng)網(wǎng)絡的不足問題。
四、實證分析
我們采用2002年1月4日~2004年4月13日的上證180指數(shù)和深圳成指各543個數(shù)據(jù)點,采用相空間重構(gòu)技術(shù),通過某日前一段時間收盤價的歷史數(shù)據(jù)來預測某日的收盤價格,也就是估計下面的動態(tài)系統(tǒng):xt=f(xt-1,xt-2,…,xt-k),其中xt為在時間t的證券指數(shù)收盤價,k為滯后時間值,這樣系統(tǒng)的輸入就是時間t前k個歷史數(shù)據(jù),而輸出則是時間t時的值。本文中我們?nèi)=5,與每周的開市天數(shù)一樣。記xt=(xt-1,xt-2,L,xt-5),yt=xt,則訓練樣本數(shù)據(jù)可表示為:
(T為重構(gòu)后樣本數(shù)),經(jīng)過相空間重構(gòu)后樣本數(shù)由原來543個變?yōu)?38個。
文中采用 作評測標準,其中ai,pi分別表示實際值和預測值。數(shù)據(jù)模擬前先對數(shù)據(jù)預處理,歸一化后的數(shù)據(jù)分為兩部分,第一部分為訓練數(shù)據(jù),第二部分為測試數(shù)據(jù),訓練數(shù)據(jù)為前500個,而測試數(shù)據(jù)為后38個。
表1中MSE為測試誤差,TR_MSE為訓練誤差,第二欄為標準支持向量機預測誤差,第三欄為采用兩步法的10個神經(jīng)元RBFN預測誤差,第四欄為采用兩步法的20個神經(jīng)元RBFN預測誤差。
表中數(shù)據(jù)表明支持向量機的預測誤差比神經(jīng)網(wǎng)絡小。
參考文獻:
1.段虎,沈菲.證券市場的混沌研究及相空間預測.數(shù)量經(jīng)濟技術(shù)經(jīng)濟研究,2002,(7):111-114.
2.呂金虎等.混沌時間序列分析及其應用.武漢:武漢大學出版社,2001.
3.L.J.Cao,Q.M.Gu.Dynamic support vector machines for non—stationary time series forecasting.Intelligent Data Analysis,2002,6(1):1-16.
作者簡介:奉國和,博士,華南師范大學經(jīng)濟管理學院講師。
收稿日期:2006-08-03。
(本文中所涉及到的圖表、注解、公式內(nèi)等請以PDF格式閱讀原文)