譚立云,劉海生,譚 龍
(1.華北科技學院基礎(chǔ)部,北京 東燕郊 101601;2.武漢大學經(jīng)濟與管理學院,湖北 武漢 430072)
證券市場是金融市場中最具魅力的市場,每位投資者都想從證券交易中獲取高額利潤。然而證券市場是一個典型的具有隨機性、時變、波動性較大的非線性系統(tǒng),難以建立精確的數(shù)學模型,多年來,人們一直在尋找有效方法試圖對證券市場建立精確的預測[1]。許多學者采用傳統(tǒng)回歸分析和時間序列方法對證券市場進行了預測和分析,通過證券價格的歷史時間序列挖掘其變化趨勢[2-5]。然而這些傳統(tǒng)預測方法是假設(shè)證券價格是呈線性趨勢變化的,不能反映描述實際證券市場非線性特點,預測結(jié)果可靠性不高。
80年代以來,神經(jīng)網(wǎng)絡(luò)算法得到了不斷發(fā)展,由于神經(jīng)網(wǎng)絡(luò)具有自組織、自學習能力,不需要考慮數(shù)學模型的內(nèi)部結(jié)構(gòu),可以對非線性系統(tǒng)進行無限逼近和擬合,為證券市場預測和分析的深入研究開拓了新的空間[6-7]。然而神經(jīng)網(wǎng)絡(luò)自身存在難以克服缺陷,如網(wǎng)絡(luò)結(jié)構(gòu)復雜、過擬合、泛化能力不強等,預測結(jié)果與期望值之間有一定差距。極限學習機是近十年剛提出的一種單隱層前饋神經(jīng)網(wǎng)絡(luò)的學習算法,相對于傳統(tǒng)神經(jīng)網(wǎng)絡(luò),該方法具有訓練誤差小、權(quán)重范數(shù)小、訓練速度快、泛化性能強的優(yōu)點[8-10],目前極限學習機已經(jīng)在許多領(lǐng)域的中長期預測中得到廣泛應用。但尚未有應用于證券指數(shù)預測的研究報道。本文利用1991年1月2日到2014年3月19日的上證綜合指數(shù)歷史數(shù)據(jù)作為樣本,構(gòu)建了基于極限學習機的神經(jīng)網(wǎng)絡(luò)模型,為證券指數(shù)預測提供新的思路和方法。最后,將這種方法的估算結(jié)果與BP網(wǎng)絡(luò)的估算結(jié)果作對比,結(jié)果顯示該算法具有估算速度快、泛化性能強,估算精度高的優(yōu)勢。
ELM極限學習機是單隱含層前饋神經(jīng)網(wǎng)絡(luò)(SLFN)的一種改進的新算法,2004年由南洋理工大學黃廣斌副教授提出。傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)學習算法(如BP算法)需要人為設(shè)置大量的網(wǎng)絡(luò)訓練參數(shù),并且很容易產(chǎn)生局部最優(yōu)解。極限學習機只需要設(shè)置網(wǎng)絡(luò)的隱層節(jié)點個數(shù),在算法執(zhí)行過程中不需要調(diào)整網(wǎng)絡(luò)的輸入權(quán)值以及隱元的偏置,并且產(chǎn)生唯一的最優(yōu)解,與傳統(tǒng)的訓練方法相比,該方法具有學習速度快、泛化性能好的優(yōu)點。
該算法是源于Huang等人提出的下面的兩個定理:
由定理1可知,若隱含層神經(jīng)元的個數(shù)與訓練樣本個數(shù)相等,則對于任意的ωi∈Rn和bi∈R,SLFN都可以零誤差逼近樣本。
然而,當訓練樣本數(shù)較大時,為了減少計算量,隱含層神經(jīng)元個數(shù)K通常要比Q小的多,定理2可知,SLFN的訓練誤差可以逼近一個任意的ε>0。
因此,當激活函數(shù)無限可微時,SLFN的參數(shù)并不需要全部進行調(diào)整,權(quán)值ω和閾值b在訓練前可以隨機選擇,且在訓練過程中保持不變。而隱含層與輸出層間的連接權(quán)值β可以通過求解以下方程組的最小二乘解獲得:
ELM在訓練之前可以隨機產(chǎn)生權(quán)值ω和閾值b,只需確定隱含層神經(jīng)元個數(shù)及隱含層神經(jīng)元的激活函數(shù)(無限可微),即可計算出β。具體地,ELM學習算法主要過程分為三步:
(1) 確定隱含層神經(jīng)元個數(shù),隨機設(shè)置輸入權(quán)值ω及偏置;
(2) 選擇一個無限可微函數(shù)作為隱含層神經(jīng)元的激活函數(shù),進而計算隱層輸出矩陣H;
(3) 計算輸出權(quán)值β。
按照ELM的算法步驟,可以方便地利用Matlab實現(xiàn)ELM學習算法。
EIM訓練函數(shù)elmtrain:調(diào)用格式為
[IW,B,LW,TF,TYPE]=elmtrain(P,T,N,TF,TYPE)
其中,P為訓練集的輸入矩陣;T為訓練集的輸出矩陣;N為隱含層神經(jīng)元的個數(shù)(默認為訓練集的樣本數(shù));TF為隱含層神經(jīng)的激活函數(shù),TYPE為ELM的應用類型,取0(默認)表示回歸擬合,取1表示分類;IW為輸入層與隱含層間的連接權(quán)值;B為隱含層神經(jīng)元的閾值;LW為隱含層與輸出層的連接權(quán)值。
ELM預測函數(shù)elmpredict:調(diào)用格式為
Y=elmpredict(P,IW,B,LW,TF,TYPE)
Y為測試集對應的輸出預測值,其它各變量含義解釋同上。
本文研究對象是1991年1月2日到2014年3月19日共計5677個交易日內(nèi)每日的上證綜合指數(shù),指標包括開盤價、最高價、最低價、收盤價、成交量四個變量,選取每日的開盤價、最高價、最低價、收盤價、成交量作為自變量,第2日的開盤價為因變量。選取前5577個數(shù)據(jù)為訓練集,后100個數(shù)據(jù)為測試集,考察極限學習機的預測效果,因為數(shù)據(jù)本身是時間序列的數(shù)據(jù),因此所選樣本均按自然時間排列,不再進行隨機抽樣。為了減少變量差異較大對模型性能的影響,在建立模型之前先對數(shù)據(jù)進行了歸一化處理,隱含層的神經(jīng)元選取20個,激活函數(shù)選取‘sig’,其他選取默認值。
限于篇幅,我們選取了測試數(shù)據(jù)的最后20個,基于極限學習機的開盤價預測值及相對誤差見表1。
表1 ELM預測預測誤差比較表
ELM預測值與真實值的對比圖如1所示。
圖1 上證開盤指數(shù)真實值與ELM極限學習機預測值對比圖
用極限學習機網(wǎng)絡(luò)總的均方誤差MSE=32.49,復相關(guān)系數(shù)R2=0.9935。從這兩個指標來講,可見極限學習的預測精度非常高,從圖形上也可以看出來預測效果非常好,精度非常高。
隱含層神經(jīng)元個數(shù)對ELM性能的影響如圖2所示,我們選擇隱含層神經(jīng)元個數(shù)20-200,計算結(jié)果顯示其復相關(guān)系數(shù)都在0.992~0.994之間,沒太大的區(qū)別,200之后的多個值我們也進行了計算,發(fā)現(xiàn)基本沒變化,因此綜合考慮,我們在最后的計算中隱含層神經(jīng)元個數(shù)選擇20個。
為了驗證ELM模型的優(yōu)點,本文將ELM的估算結(jié)果與BP網(wǎng)絡(luò)的預測結(jié)果進行了對比。在同一臺計算機上的MATLABR2009a中調(diào)用BP神經(jīng)網(wǎng)絡(luò)程序,隱含層取20,用Levenberg-Marquardt (LM)規(guī)則算法的BP算法對相同的樣本進行訓練估算,用BP神經(jīng)網(wǎng)絡(luò)預測總的均方誤差MSE=581.1,復相關(guān)系數(shù)R2=0.9888,與極限學習機網(wǎng)絡(luò)預測相比,預測效果不理想,如圖3。
圖2 隱含層神經(jīng)元個數(shù)與復相關(guān)系數(shù)關(guān)系圖
圖3 BP神經(jīng)網(wǎng)絡(luò)預測對比圖
本文根據(jù)1991年1月2日到2014年3月19日上證綜合指數(shù)的原始數(shù)據(jù),建立了基于極限學習機的上證開盤指數(shù)預測模型,驗證了該預測方法的可行性和有效性。通過與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)算法的比較,發(fā)現(xiàn)了極限學習機用于指數(shù)預測領(lǐng)域,預測精度和泛化能力非常令人滿意,且具有簡單易實現(xiàn)、算法穩(wěn)定、估算速度快的優(yōu)越性。極限學習機是一種預測精度高、誤差小的證券指數(shù)預測算法,預測結(jié)果可以為用戶提供有價值的參考意見。
[1] 胡杉杉,等.中國證券市場的可預測性研究[J].財經(jīng)科學,2001,(3):35-39.
[2] 周廣旭. 一種新的時間序列分析算法及其在股票預測中的應用[J].計算機應用,2005,25( 9): 2179-2184.
[3] 余敏,等.上證指數(shù)、深圳指數(shù)預測的馬爾柯夫鏈預測模糊模型[J].數(shù)學的實踐與認識,2003,33( 9): 30-34.
[4] 馬軍海,等.混沌時序重構(gòu)及上海股票指數(shù)預測的應用研究[J].系統(tǒng)工程理論與實踐,2003,12: 86-95.
[5] 譚華,等.基于模糊粗糙集挖掘方法的證券價格預測研究[J].運籌與管理.2008,17( 4):118-124.
[6] 陳可,等.BP神經(jīng)網(wǎng)絡(luò)在證券分析預測中應用[J].計算機工程.2001,27(11):95-97.
[7] 陳英葵.基于支持向量機的上證指數(shù)預測和分析[J].計算機仿真.2013,30(1):297-301.
[8] 崔東文.極限學習機在湖庫總磷、總氮濃度預測中的應用[J].水資源保護真.2013,29(2):61-66.
[9] 王小川,等.Matlab神經(jīng)網(wǎng)絡(luò)43個案例分析[M].北京:北京航空航天大學出版社,2013.
[10] 史峰,等.Matlab智能算法30個案例分析[M].北京: 北京航空航天大學出版社,2011.