謝小軍,馬 虹,楊付貴,邱云蘭
(1.廣州工商學(xué)院 基礎(chǔ)教學(xué)部,廣東 廣州 510850;2.廣東金融學(xué)院 金融數(shù)學(xué)與統(tǒng)計學(xué)院,廣東 廣州 510521)
模糊集理論自Zadeh教授提出后,其理論得到了快速發(fā)展。1994年,Song在Zadeh教授提出的模糊集理論基礎(chǔ)上,研究并構(gòu)建了模糊時間序列預(yù)測模型[1-2]。此后對于模糊時間序列的研究受到越來越多的專家和研究者的關(guān)注與重視,并已經(jīng)取得大量的研究成果。例如袁潮清等[3]提出了將區(qū)間灰數(shù)序列分別采用發(fā)展趨勢序列和認知程度序列來進行描述,此方法使得區(qū)間灰數(shù)預(yù)測過程中的灰數(shù)運算問題得到成功避免,而且使得區(qū)間灰數(shù)序列本身所擁有的信息得到成功利用;余文利等[4]基于模糊C均值算法建立了模糊時間序列預(yù)測模型,并利用該模型對杭州的溫度進行了預(yù)測和分析;還有很多學(xué)者結(jié)合一些新穎的機器學(xué)習(xí)的方法,例如粒子群算法模型[5]、神經(jīng)網(wǎng)絡(luò)方法[6]、決策樹[7]等,它們不需要建立模糊關(guān)系矩陣,而是利用各預(yù)測規(guī)則得到的值加權(quán)后求得預(yù)測值,但是總體上這些方法的預(yù)測結(jié)果還是令人比較滿意的,而且在實踐中其模糊規(guī)則也具有說服力,可作為模糊時間序列預(yù)測模型未來的重要研究方法之一。曾祥艷等[8]提出了一種利用灰色模型對三角模糊數(shù)序列進行預(yù)測,在此文章中提出了將三角模糊數(shù)序列轉(zhuǎn)換為等量信息的三個精確數(shù)序列的方法,轉(zhuǎn)換后只需要利用灰模型對精確數(shù)列分別進行建模即可,再利用還原公式還原為三角模糊數(shù),成功的實現(xiàn)了利用灰色模型對三角模糊數(shù)的擬合和預(yù)測。劉齊林等[9]在文獻[8]的基礎(chǔ)上建立了支持向量機的模糊時間序列預(yù)測模型。要瑞璞等[10]對模糊數(shù)的HFGB(Hesitant fuzzy geometric Bonferronimeans)算子進行擴展,定義了區(qū)間值三角模糊數(shù)幾何加權(quán)均值(interval valued triangular fuzzy geometric weighted means,ITFGWM)算子.同時對Carlsson定義的均值進行擴展,從而給出了區(qū)間值三角模糊數(shù)的均值定義,并基于ITFGWM算子、均值及可能度,提出了區(qū)間值三角模糊數(shù)預(yù)測方法。高志方等[11]提出了一種新的計算區(qū)間二型模糊數(shù)之間距離的測度,然后結(jié)合該距離測度公式構(gòu)造一種新的基于距離測度來求權(quán)重的方法。最近幾年組合模型越來越受到研究者的青睞,基于現(xiàn)實中模糊時間序列具有不確定性,既包含了線性的時序成分,也蘊含了非線性關(guān)系。因此只利用單一的線性預(yù)測模型或非線性預(yù)測模型都將無法準(zhǔn)確的捕捉實踐序列中的復(fù)合特征。故一些學(xué)者提出了利用組合模型進行預(yù)測的方法[12-16],在一定程度上能夠提高區(qū)間模糊數(shù)時間序列的預(yù)測精度。
本文鑒于ARIMA(auto regressive moving average)模型[17-19]可以很好的獲取數(shù)據(jù)之間的線性關(guān)系,而 BP(back propagation)神經(jīng)網(wǎng)絡(luò)[20-21]可以捕捉數(shù)據(jù)之間的非線性關(guān)系,故文章結(jié)合ARIMA模型和BP神經(jīng)網(wǎng)絡(luò)各自的優(yōu)點,以二元模糊數(shù)時間序列為研究對象,首先利用轉(zhuǎn)換公式將二元模糊數(shù)轉(zhuǎn)換為兩個等量信息的確數(shù)序列,然后對兩個數(shù)序列分別建立以ARIMA與BP神經(jīng)網(wǎng)絡(luò)模型相結(jié)合的組合模型,最后將兩個精確序列的擬合值和預(yù)測值利用公式還原為二元區(qū)間模糊數(shù)時間序列。通過實驗與傳統(tǒng)ARIMA模型對比,所提出的組合模型對區(qū)間模糊數(shù)時間序列具有更好地預(yù)測精度。
大量的研究者對于二元區(qū)間模糊數(shù)序列的處理是直接對兩個個界點建模進行建模和預(yù)測,這樣做往往會存在缺陷:不能很好地描述序列整體性的發(fā)展趨勢;建立的模型所預(yù)測的結(jié)果容易發(fā)生錯亂,導(dǎo)致預(yù)測失效。因此出于整體性考慮,先將二元區(qū)間模糊數(shù)序列轉(zhuǎn)換成等量信息的兩個精確數(shù)序列,然后對轉(zhuǎn)換后的兩個精確數(shù)列構(gòu)建組合模型并進行預(yù)測,最后再將預(yù)測結(jié)果利用還原公式轉(zhuǎn)換為二元區(qū)間模糊時間數(shù)序列。
設(shè)二元區(qū)間模糊數(shù)X=(x(t1),x(t2),…,x(tn)),Δti=ti-ti-1=1,其中第i個二元模糊數(shù)為:
此二元模糊數(shù)的隸屬函數(shù)為:
隸屬函數(shù)所覆蓋的面積為:
比較和排序的指標(biāo)以模糊數(shù)的重心代替,利用如下公式計算:
二元模糊數(shù)x(ti)=(ai,bi)利用式(3)計算得重心為:
定義1在二元模糊數(shù)序列中,將各個二元模糊數(shù)的隸屬函數(shù)所覆蓋的面積構(gòu)成的實數(shù)序列定義為面積序列,記為:S=(s(t1),s(t2),…,s(tn))。
定義2在二元模糊數(shù)序列中,將各個二元模糊數(shù)計算所得的重心構(gòu)成的實數(shù)序列定義為重心序列,記為:
上述方法將二元模糊數(shù)序列轉(zhuǎn)換成了兩個精確數(shù)序列:面積序列和重心序列。由此兩個精確數(shù)列也可以推導(dǎo)出原二元模糊序列的兩個界點,由式(2)和式(4)可得
轉(zhuǎn)換后的兩個精確序列同時受到二元模糊數(shù)的兩個界點的約束,從而保持了模糊數(shù)的整體性,且避免了模糊數(shù)的界點可能產(chǎn)生跳躍,也讓序列的光滑性更好,也避免了預(yù)測的兩個界點相對位置出現(xiàn)錯亂的情況。此方法還可以推廣到對三角模糊數(shù)序列和梯形模糊數(shù)序列的轉(zhuǎn)換。
ARIMA模型建模的基本流程如圖1所示。
圖1 ARIMA模型建模流程
BP神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)往往由輸入層、輸出層以及多個隱含層構(gòu)成:以一個三層結(jié)構(gòu)的為例,即含有一個輸入層、一個輸出層和一個隱含層,每層由不同的神經(jīng)元組成,其基本結(jié)構(gòu)如圖2所示。
圖2 BP神經(jīng)網(wǎng)絡(luò)基本結(jié)構(gòu)
具體BP神經(jīng)網(wǎng)絡(luò)模型的建立按照如下過程:
1)輸入層中節(jié)點的信息輸入為:xi,則隱含層第k個節(jié)點的接受到的信息netk為:
其中:ak為閾值;wki為第i個輸入神經(jīng)元到隱含層第k個神經(jīng)元的權(quán)值。
2)在隱含層激勵函數(shù)處理下,隱含層每個神經(jīng)元輸出uk為
其中:f表示隱含層激勵函數(shù)。
3)輸出層神經(jīng)元j接受信息Oj為:
其中:bj表示輸出層第j個節(jié)點閾值;vjk為隱含層第k個輸入神經(jīng)元到輸出層第j個神經(jīng)元的權(quán)重。
4)輸出層第j個節(jié)點的在激勵函數(shù)處理后輸出信息yj:
其中:g表示輸出層激勵函數(shù)。
對于第j個神經(jīng)元的輸出誤差由以下公式計算:
為了獲得一組最優(yōu)權(quán)值與閾值,需反復(fù)利用正向傳播過程與誤差反向傳播過程對網(wǎng)絡(luò)訓(xùn)練學(xué)習(xí),直至訓(xùn)練結(jié)束,模型對應(yīng)參數(shù)為連接權(quán)重值與閾值,繼而進行預(yù)測直至網(wǎng)絡(luò)輸出與期望輸出的誤差滿足設(shè)定的精度要求。
設(shè)時間序列Υt為精確序列線性主體Lt與非線性殘差Et兩部分的組成,即
首先運用ARIMA模型對精確數(shù)列的線性主體部分進行預(yù)測,假設(shè)預(yù)測結(jié)果為,其殘差記為Et,由以下公式計算:
序列Et蘊含了非線性關(guān)系,利用BP神經(jīng)網(wǎng)絡(luò)模型對序列Et進行建模,預(yù)測結(jié)果記為,最后用以下組合公式計算得到原序列的預(yù)測值:
可見在組合模型中,其線性部分利用ARIMA模型進行預(yù)測,非線性部分利用BP神經(jīng)網(wǎng)絡(luò)模型進行預(yù)測,結(jié)合ARIMA和BP神經(jīng)模型各自的優(yōu)勢,從而達到更好的預(yù)測效果。
為了驗證所提出的模型的有效性,文章以2019年1月2日至2019年3月7日上證指數(shù)為原始數(shù)據(jù),數(shù)據(jù)來源于東方財富網(wǎng)(http://quote.eastmoney.com/zs000001.html),將每日的最小值和最大值作為二元區(qū)間模糊數(shù)的兩個界點,總共樣本39組。利用2019年1月2日至2019年3月4日的原始數(shù)據(jù)進行構(gòu)建模型,預(yù)測2019年3月5日至2019年3月7日三天的值,實驗過程采用MATLAB和Eviews軟件完成。
首先,對2019年1月2日至2019年3月5日二元區(qū)間模糊數(shù)序列的兩個界點ai、bi利用式(2)和式(4)轉(zhuǎn)換為兩個精確數(shù)列,然后對精確序列S、分別利用Eviews軟件建立ARIMA模型,具體建立過程如下:
(?。┟娣e序列S=(s(t1),s(t2),…,s(tn))建模過程:
首先進行平穩(wěn)性檢驗,由時序圖可知不具有明顯的周期變化和季節(jié)波動,整體蘊涵曲線增長趨勢,結(jié)合ADF檢驗知該序列是非平穩(wěn)的。先對其取對數(shù),然后進行一階差分,其新序列記為Υt,經(jīng)檢驗,Υt序列為平穩(wěn)非白噪聲序列,故可對Υt序列進行擬合建模。
不斷嘗試,最終確立的模型為AR(1),并由條件最小二乘估計得到AR(1)的參數(shù)估計,對應(yīng)參數(shù)估計結(jié)果見表1。
表1 AR(1)的參數(shù)估計
根據(jù)參數(shù)估計結(jié)果可得Υt模型的口徑為:
其中:B為滯后算子;εt為隨機誤差。
然后采用此模型口徑對序列S進行預(yù)測,由公式(14)計算得殘差項序列Es,殘差白噪聲檢驗結(jié)果顯示:Q檢驗統(tǒng)計量在延遲1至12階的P值均顯著大于0.05,表示信息提取充分,所以AR(1)模型顯著有效。接下來對殘差序列Es利用MATLAB構(gòu)建BP神經(jīng)網(wǎng)絡(luò)。
以序列Es為網(wǎng)絡(luò)輸入樣本,總樣本N=34。隱含層的激勵函數(shù)采用Log-sigmoid型函數(shù),輸出層激勵函數(shù)為純線性,網(wǎng)絡(luò)訓(xùn)練函數(shù)為共軛梯度法,設(shè)置BP神經(jīng)網(wǎng)絡(luò)參數(shù):網(wǎng)絡(luò)結(jié)構(gòu)最佳設(shè)定為4-6-1,預(yù)設(shè)精度、最大訓(xùn)練次數(shù)、步長分別設(shè)定為:0.001、10 000、0.01。網(wǎng)絡(luò)的初始權(quán)值、學(xué)習(xí)率和閾值由網(wǎng)絡(luò)自動選取,經(jīng)過129次訓(xùn)練與學(xué)習(xí)達到精度要求。
將BP神經(jīng)網(wǎng)絡(luò)模型與AR(1)模型擬合值以及對未來3天預(yù)測值利用公式(11)組合模型得到精確序列S的擬合值和預(yù)測值。
類似面積S序列的建模過程如圖2,原序列為非平穩(wěn)的,取對數(shù)作一次差分后的序列記為Zt,對Zt進行平穩(wěn)非白噪聲序列檢驗,進而建立ARIMA,最終建立AR(5)模型,參數(shù)估計見表2。
表2 AR(5)的參數(shù)估計
參數(shù)估計結(jié)果可得Zt模型的口徑為:
首先,利用此口徑對重心序列進行預(yù)測,并利用公式(10)得到殘差項序列記為,然后,采用BP神經(jīng)網(wǎng)絡(luò)對序列進行擬合預(yù)測,總樣本:N=30。設(shè)置BP神經(jīng)網(wǎng)絡(luò)參數(shù):網(wǎng)絡(luò)結(jié)構(gòu)最佳設(shè)定為5-7-1,預(yù)設(shè)精度、最大訓(xùn)練次數(shù)、步長分別設(shè)定為:0.001、10 000、0.05。
將BP神經(jīng)網(wǎng)絡(luò)模型與AR(5)模型擬合值以及對未來3天預(yù)測值利用公式(11)組合模型得到精確序列的擬合值和預(yù)測值。
最后,將精確序列S的擬合值和預(yù)測值和精確序列的擬合值和預(yù)測值利用式(5)還原為二元模糊序列的兩個界點。兩個界點的擬合值對比情況見圖3和圖4,本文提出的組合模型的擬合平均相對誤差為1.92%,傳統(tǒng)ARIMA模型為2.76%,2019年3月5日至2019年3月7日三天的值預(yù)測值結(jié)果對比見表3。
從圖3和圖4可見組合模型的擬合程度要優(yōu)于ARIMA模型,說明組合模型能夠充分發(fā)揮它們各自的長處,從而有效的提高模型的擬合精度。由表3可知組合模型的預(yù)測為誤差為1.04%,要小于單一的ARIMA模型的預(yù)測誤差值1.87%,所以利用組合模型對二元區(qū)間模糊時間序列進行擬合和預(yù)測更加有效。
表3 組合模型與ARIMA模型預(yù)測對比
圖3 下界點擬合值對比
圖4 上界點擬合值對比
文章研究了二元區(qū)間模糊數(shù)的預(yù)測方法,提出了一種基于ARIMA模型和BP神經(jīng)網(wǎng)絡(luò)相結(jié)合的一種組合模型來對二元區(qū)間模糊數(shù)進行預(yù)測。實驗結(jié)果表明,文章提出的組合模型具有更好的擬合效果和預(yù)測精度,可用于區(qū)間模糊序的建模。所提出的組合模型可適用于離散型一、二元區(qū)間時間序列建模,也可考慮進一步推廣實現(xiàn)對三角模糊數(shù)以及梯形模糊數(shù)序列的建模。