張豐婷,楊菊花*,任金薈,金坤
(1.蘭州交通大學(xué)交通運(yùn)輸學(xué)院,蘭州 730070;2.中國鐵路蘭州局集團(tuán)有限公司蘭州貨運(yùn)中心安全生產(chǎn)部,蘭州 730030)
在全球經(jīng)濟(jì)一體化的背景下,港口在國際貿(mào)易活動中的作用日益顯著[1],特別在21 世紀(jì),集裝箱航運(yùn)業(yè)務(wù)的迅速增長引發(fā)了一系列問題,如港口日常運(yùn)營管理、基礎(chǔ)設(shè)施建設(shè)和升級改造等,所以港口吞吐量預(yù)測尤為重要[2]。準(zhǔn)確的港口吞吐量預(yù)測不僅可以避免重復(fù)建設(shè),而且可以提高港口資源利用效率[3]。如果吞吐量預(yù)測的準(zhǔn)確性較差,就會發(fā)生政策偏差,導(dǎo)致重大的財務(wù)損失。因此,準(zhǔn)確預(yù)測港口集裝箱吞吐量很有必要。本研究采用深圳港集裝箱吞吐量月度數(shù)據(jù)集,建立混合模型進(jìn)行短期預(yù)測。
集裝箱吞吐量預(yù)測是一個熱門的研究內(nèi)容,目前采用的集裝箱吞吐量預(yù)測模型可以粗略地分為三類:傳統(tǒng)的計量經(jīng)濟(jì)模型、人工智能模型和混合集成模型[4]。傳統(tǒng)的計量經(jīng)濟(jì)模型是一類發(fā)展比較成熟的建模技術(shù),常用模型主要包括:指數(shù)平滑(Exponential Smoothing,ES)、整合移動平均自回歸(AutoRegressive Integrated Moving Average,ARIMA)等基礎(chǔ)模型,以及它們的擴(kuò)展模型,如季節(jié)自回歸移動平均(Seasonal ARIMA,SARIMA)[5]等。計量經(jīng)濟(jì)模型通過捕捉集裝箱吞吐量變量及其影響因素之間的因果關(guān)系來預(yù)測集裝箱吞吐量。如Zhang 等[6]利用因果分析模型預(yù)測港口短期貨物吞吐量;杜柏松等[7]利用馬爾可夫理論對優(yōu)化后的GM(1,1)預(yù)測殘差值進(jìn)行修正,得出上海港集裝箱吞吐量的預(yù)測值。實驗結(jié)果表明,計量經(jīng)濟(jì)模型能夠成功地將觀測數(shù)據(jù)與理論相結(jié)合,修正后的回歸模型提高了預(yù)測精度;但是,具有強(qiáng)大理論支撐的計量經(jīng)濟(jì)模型需要完整的輸入信息和準(zhǔn)確的因果關(guān)系[8],而樣本數(shù)據(jù)通常被施加較為嚴(yán)格的假設(shè),如平穩(wěn)性、自變量不相關(guān)性等,這些假設(shè)往往與現(xiàn)實情況相悖。
隨著研究的不斷深入,鑒于集裝箱吞吐量的非平穩(wěn)性、非線性和復(fù)雜性[9],神經(jīng)網(wǎng)絡(luò)模型通過在線調(diào)整權(quán)值和閾值等方法可以將任意非線性函數(shù)逼近到預(yù)期的精度,并捕捉數(shù)據(jù)中固有的復(fù)雜、動態(tài)和非線性特征,實驗結(jié)果表明,基于神經(jīng)網(wǎng)絡(luò)的人工智能模型通常比計量經(jīng)濟(jì)模型具有更高的預(yù)測精度。神經(jīng)網(wǎng)絡(luò)算法中最著名的是反向傳播(Back Propagation,BP)神經(jīng)網(wǎng)絡(luò)[10],其衍生的算法有:廣義回歸神經(jīng)網(wǎng)絡(luò)(Generalized Regression Neural Network,GRNN)、徑向基函數(shù)(Radial Basis Function,RBF)[11]和支持向量機(jī)(Support Vector Machine,SVM)[12]等。人工智能模型利用歷史數(shù)據(jù)模式中的相關(guān)空間和時間特征,通過模擬人類智力或自然現(xiàn)象設(shè)計輸入與輸出變量的規(guī)則關(guān)系[13]。由于這些人工智能技術(shù)可以在不知道問題解決方案的前提下近似任何復(fù)雜水平,因此它們被廣泛應(yīng)用于港口吞吐量預(yù)測[14],如Xie 等[15]基于最小二乘支持向量回歸(Least Squares Support Vector Regression,LSSVR)模型對集裝箱吞吐量進(jìn)行預(yù)測;Geng 等[16]利用魯棒支持向量回歸(Robust Support Vector Regression,RSVR)預(yù)測港口吞吐量。但人工智能模型并不是十全十美的,人工智能模型參數(shù)的訓(xùn)練需要足夠的樣本量[17];另外,參數(shù)敏感性較高,容易在學(xué)習(xí)的過程中陷入局部最優(yōu)和存在過擬合現(xiàn)象。
大多數(shù)的集裝箱吞吐量預(yù)測模型都有各自的優(yōu)點和缺點,沒有一種預(yù)測模型總能得到預(yù)期的預(yù)測結(jié)果。綜上,傳統(tǒng)計量經(jīng)濟(jì)模型與人工智能模型都存在各自的數(shù)據(jù)針對性與優(yōu)劣勢,而分解集成模型可以通過提取不同個體模型的優(yōu)點來提高預(yù)測精度。目前,基于“分而治之”思想提出的分解集成模型取得了巨大的進(jìn)步,由于它精確的預(yù)測結(jié)果,分解集成模型被廣泛應(yīng)用于許多領(lǐng)域的預(yù)測問題,如風(fēng)速預(yù)測[18]、空氣污染預(yù)測[19]和貨運(yùn)量預(yù)測[20]等。
在預(yù)測之前,許多研究者一直利用不同的數(shù)據(jù)預(yù)處理技術(shù)處理數(shù)據(jù)序列中存在的波動性和噪聲。比較常見的分解技術(shù)有:經(jīng)驗?zāi)B(tài)分解(Empirical Mode Decomposition,EMD)、集成經(jīng)驗?zāi)B(tài)分解(Ensemble EMD,EEMD)、互補(bǔ)集成經(jīng)驗?zāi)B(tài)分解(Complementary EEMD,CEEMD)、經(jīng)驗小波變換(Empirical Wavelet Transform,EWT)等。近年,Dragomiretskiy 等[21]提出了一個創(chuàng)新的分解方法變分模態(tài)分解(Variational Mode Decomposition,VMD),與其他分解技術(shù)相比,VMD 不僅可以分離出相似頻率的特征,而且具有優(yōu)越的去噪性能。然而,預(yù)設(shè)的超參數(shù)比如分解模態(tài)個數(shù)K,在沒有先驗知識的情況下較難確定,。本文利用循環(huán)法尋找最優(yōu)K值,提出一種更加具有實際應(yīng)用價值的分解技術(shù)優(yōu)化的VMD。
在預(yù)測的方法中,基于一類前饋神經(jīng)網(wǎng)絡(luò)的機(jī)器學(xué)習(xí)算法極限學(xué)習(xí)機(jī)(Extreme Learning Machine,ELM),Huang 等[22]提出了核極限學(xué)習(xí)機(jī)(Kernel ELM,KELM)算法,KELM 將核函數(shù)引入了ELM 中代替隱含層映射,提高了ELM 的泛化能力。使用KELM 算法的研究不多,在集裝箱吞吐量預(yù)測中的應(yīng)用也很少。
目前已有研究將分解集成模型應(yīng)用到集裝箱吞吐量預(yù)測領(lǐng)域。如:文獻(xiàn)[23]建立了VMD-SVR(Variational Mode Decomposition-Support Vector Regression)分解集成模型,文獻(xiàn)[24]建立了VMD-ELM(Variational Mode Decomposition-Extreme Learning Machine)分解集成模型,文獻(xiàn)[25]提出了CEEMD-ELM(Complementary Empirical Mode Decomposition Ensemble-Extreme Learning Machine)的分解集成預(yù)測模型。由于各個模型之間有效的組合還需大量研究驗證,所以進(jìn)一步提高混合預(yù)測模型的性能不可或缺。
本文借助分解集成思想提出一種創(chuàng)新的集裝箱吞吐量混合短期預(yù)測方法,主要包括四步:
1)分解。用漢佩爾辨識法(Hampel Identifier,HI)方法對數(shù)據(jù)進(jìn)行預(yù)處理,剔除異常數(shù)據(jù)后用分解效率較高的優(yōu)化變分模態(tài)分解(Optimal VMD,OVMD)技術(shù)將集裝箱吞吐量信號分解成一系列相對平穩(wěn)的分量。
2)分類。計算出各個分量的樣本熵(Sample Entropy,SE)值,根據(jù)樣本熵的大小將各分量分為高頻低幅、中頻中幅和低頻高幅信號。
3)建模預(yù)測。用相空間重構(gòu)方法優(yōu)化模態(tài)分量,計算出預(yù)測維數(shù),并根據(jù)不同種類模態(tài)分量的特點單獨建立核極限學(xué)習(xí)機(jī)預(yù)測模型,即選用不同的核函數(shù)進(jìn)行預(yù)測。
4)集成。累加所有模型的預(yù)測值,完成對集裝箱吞吐量時間序列的預(yù)測。
最后將本文模型分別與傳統(tǒng)模型和采用其他模態(tài)分解方法的模型對比,并結(jié)合預(yù)測誤差進(jìn)行分析,檢驗本文模型的準(zhǔn)確性。
離群點是指數(shù)據(jù)中遠(yuǎn)離數(shù)值一般水平的極大值和或極小值,也稱之為奇異值或野值,不論是何種原因引起的離群點對之后的時間序列分析都會造成一定的影響[26]。
本文采用HI 對原始集裝箱吞吐量序列訓(xùn)練集進(jìn)行預(yù)處理。HI 被認(rèn)為是最有效和魯棒性較好的離群點校正方法之一,能識別與校正正常數(shù)據(jù)序列中的異常值,降低原始序列的復(fù)雜度,過濾數(shù)據(jù)系列的異常信息。HI 的具體過程可以描述如下:
設(shè)定集裝箱吞吐量序列為X=X1,X2,…,XN;評估參數(shù)為默認(rèn)值θ=0.674 5;根據(jù)3δ統(tǒng)計規(guī)律,本文的閾值TR設(shè)置為3。如果樣本Xi(i=1,2,…,N)滿足條件Z′ >TR,樣本Xi被視為第i個異常值,用數(shù)mi代替。
在滑動窗口中,局部子序列的中值計算公式為:
其中:Xi是輸入數(shù)據(jù)的第i個樣本;v是最優(yōu)滑動窗口個數(shù)。滑動窗口內(nèi)局部子序列的平均絕對偏差(Mean Absolute Deviation,MAD)定義為:
Z′的值可以定義為:
1.2.1 變分模態(tài)分解
變分模態(tài)分解(VMD)是一種信號處理方法,它能自適應(yīng)地確定信號的帶寬和頻率,同時估計相應(yīng)的模態(tài),適當(dāng)?shù)仄胶饽B(tài)之間的誤差。VMD 主要解決變分問題,能有效地處理遞歸分解方法引起的包絡(luò)估計誤差。解決了EMD 模態(tài)混疊和端點效應(yīng)問題后,可有效提取原始序列不同頻率尺度分量的信息[27]。
1)變分問題構(gòu)造。
VMD 通過分解原信號得到K個模態(tài)分量。變分問題的構(gòu)造即求得所有本征模函數(shù)(Intrinsic Mode Function,IMF)rk(t),變分模態(tài)分解理論將IMF 定義如下:
其中:mk表示瞬時振幅,也叫包絡(luò)線;?k(t)為遞減函數(shù)的相位;k=1,2,…,K。根據(jù)式(4),rk(t)可以認(rèn)為是mk和?k(t)的純和諧波信號,振幅和頻率的變化相對緩慢;t是時間。
為了計算各模態(tài)的帶寬,利用希爾伯特變換得到各本征模態(tài)分量的解析信號,將得到的每個模態(tài)信號的頻譜調(diào)諧到相應(yīng)的“基帶”,以式(5)來評估模態(tài)的帶寬:
其中:δ(t)表示單位脈沖函數(shù);j 表示虛數(shù)單位;*表示卷積算子;ωk表示第k個模態(tài)的中心頻率是一個指數(shù)項,表示復(fù)雜面上的中心頻率。
通過計算上述模態(tài)寬度的L2 范數(shù),對于原始輸入信號ψ,最終可以構(gòu)造出有約束的變分問題,表示為:
其中:rk表示第k種模態(tài);?(t)是函數(shù)的偏導(dǎo)數(shù);δ(t)代表Dirac 分布。
2)變分模態(tài)求解。
①通過引入拉格朗日乘子λ(t)和懲罰參數(shù)α得到非約束問題,然后使用乘法算子交替算法來找到非約束問題的最優(yōu)解。rk(t)和ωk的更新公式如下:
1.2.2 優(yōu)化的變分模態(tài)分解
VMD 可有效抑制信號分解過程模態(tài)混疊的問題,能同時提取所有的模態(tài),但VMD 進(jìn)行信號處理時需自定義模態(tài)數(shù)K,限制了方法的適應(yīng)性。如果模態(tài)數(shù)的預(yù)設(shè)有較大的偏差,就會導(dǎo)致模態(tài)的丟棄或混合。因此,本文主要針對參數(shù)K的確定優(yōu)化研究,提出了優(yōu)化的VMD 方法對原始集裝箱時間序列分解。
圖1 給出了獲取模態(tài)數(shù)K的過程,即本文提出的OVMD算法。
圖1 OVMD流程Fig.1 Process of OVMD
詳細(xì)過程描述如下:
步驟1 設(shè)置初始分解模態(tài)數(shù)K=3。
步驟2 判斷第3 個分量是否滿足停止標(biāo)準(zhǔn):極值點的個數(shù)為0 或1;否則,模態(tài)數(shù)增加1。
步驟3 利用OVMD 得到K+1 個本征模函數(shù)。
步驟4 判斷第K+1 個分量是否滿足停止標(biāo)準(zhǔn);否則,模態(tài)數(shù)增加1。
步驟5 重復(fù)步驟2~4,直到滿足停止標(biāo)準(zhǔn)。
停止準(zhǔn)則保證第K+1 個模態(tài)數(shù)的極值點個數(shù)僅為1 或第K+1 個分量為單調(diào)信號,在OVMD 中,第K+1 個分量表示歷史集裝箱吞吐量時間序列的趨勢。
利用Richman 等[28]提出的樣本熵(SE)評價數(shù)據(jù)序列的復(fù)雜性。SE 的優(yōu)點包括兩個方面:一方面,它的計算結(jié)果并不依賴于原始數(shù)據(jù)的長度;另一方面,原始數(shù)據(jù)的丟失對SE的計算影響不大,即使丟失了原有數(shù)據(jù)的1/3,也不會對計算產(chǎn)生很大影響。SE 值計算過程涉及三個基本參數(shù):1)相似容限r(nóng),選擇原始數(shù)據(jù)標(biāo)準(zhǔn)差的10%~25%,本文設(shè)為0.2STD,其中STD為序列的標(biāo)準(zhǔn)差;2)嵌入維數(shù)m,一般選擇1 或者2,實際使用中學(xué)者都優(yōu)先選擇m=2;3)時間序列的大小N。
實現(xiàn)SE 值的具體步驟如下所示:
序列的非平穩(wěn)度取決于它們的SE 值:SE 值越大,序列的復(fù)雜度越高;反之SE 值越小,序列的復(fù)雜度越低。
采用相空間重構(gòu)(Phase Space Reconstruction,PSR)法優(yōu)化模態(tài)分量序列后再輸入模型進(jìn)行預(yù)測,能促進(jìn)預(yù)測模型對原始數(shù)據(jù)的充分學(xué)習(xí),改善預(yù)測效果[29]。
對于給定時間序列X=X1,X2,…,XN,定義嵌入維數(shù)m以及延遲時間τ,將時間序列拓展成m維的相空間:
圖2 相點與元素的映射關(guān)系Fig.2 Mapping relation between phase points and elements
關(guān)于嵌入維數(shù)m及延遲時間τ用網(wǎng)格搜索法確定。網(wǎng)格搜索法是指定參數(shù)值的一種窮舉搜索方法,即手動給模型中的這兩個參數(shù)賦值后由程序自動使用窮舉法都運(yùn)行一遍,通過交叉驗證的方法選擇最優(yōu)的一組m和τ。
極限學(xué)習(xí)機(jī)(ELM)是一種有效的單隱含層前饋神經(jīng)網(wǎng)絡(luò)(Single-hidden Layer Feedforward Neural Network,SLFNN)。該算法一次更新權(quán)值和偏差,取代了傳統(tǒng)算法中的權(quán)值和偏差,因此在學(xué)習(xí)速度上有很大的優(yōu)勢,被廣泛應(yīng)用于許多領(lǐng)域。ELM 的拓?fù)浣Y(jié)構(gòu)如圖3 所示。
圖3 ELM的拓?fù)浣Y(jié)構(gòu)Fig.3 Topological structure of ELM
ELM 的基本原理是隱含層節(jié)點的參數(shù)可以隨機(jī)分配,輸出層的權(quán)值用隱含層輸出矩陣的一個簡單的廣義逆運(yùn)算表示。對于訓(xùn)練集(xi,yi),xi,yi∈Ri{i=1,2,…,N},ELM 表示如下:
當(dāng)ELM 的輸出結(jié)果能夠以零誤差逼近觀測數(shù)據(jù)時,利用矩陣表達(dá)可以寫成式(17)的形式:
其中:Η為隱含層輸出矩陣。
為了增強(qiáng)模型的穩(wěn)定性,和提高其泛化能力,在對β的求解中,引入一個正數(shù)C,并以最小訓(xùn)練誤差ei和最小輸出權(quán)值的范數(shù)為求解目標(biāo),優(yōu)化模型可以寫成:
其中:C為正則化系數(shù);h(xi)為隱含層特征映射函數(shù)。
對于訓(xùn)練樣本較大的情況,例如N?L,可以得到:
極限學(xué)習(xí)機(jī)的輸出函數(shù)為:
核函數(shù)具有很強(qiáng)的非線性映射能力,線性不可分問題通過核函數(shù)映射到高維空間,從而使它們線性可分。參考核函數(shù)的內(nèi)積理論,直接采用核函數(shù)代替ELM 隱含層節(jié)點的映射。
本文提出了一種基于核函數(shù)的極限學(xué)習(xí)機(jī)-核極限學(xué)習(xí)機(jī)(KELM),如果功能映射函數(shù)h(xi)隱含層的神經(jīng)元是未知的,內(nèi)核矩陣可以被定義為:
在通過核函數(shù)實現(xiàn)ELM 的過程中:HHT為核矩陣;k(xi,xj)為相應(yīng)的內(nèi)核函數(shù);I表示單位矩陣;Q表示期望輸出。上述情況表明,核函數(shù)可以代替ELM 的隨機(jī)映射,使輸出權(quán)值比以前更加穩(wěn)定。根據(jù)核函數(shù)的學(xué)習(xí)能力和時間序列的特點選擇相應(yīng)的核函數(shù),KELM 算法中常用的核函數(shù)有以下幾種。
1)線性核函數(shù):
2)高斯核函數(shù):
3)小波核函數(shù):
集裝箱吞吐量時間序列是非線性、非平穩(wěn)信號,對集裝箱吞吐量時序的本質(zhì)進(jìn)行處理是預(yù)測的關(guān)鍵。設(shè)計基于分解-分類-重構(gòu)思想的集裝箱吞吐量預(yù)測框架,如圖4 所示。
圖4 本文集裝箱吞吐量預(yù)測模型的框架Fig.4 Framework of the proposed container throughput prediction model
首先采用優(yōu)化的變分模態(tài)分解(OVMD)對原始負(fù)荷序列進(jìn)行分解。將分解得到的各固有模態(tài)函數(shù)(Intrinsic Mode Function,IMF)經(jīng)樣本熵(SE)計算后,將各個分量進(jìn)行分類,根據(jù)分量特點設(shè)計多組核函數(shù)不同的KELM 預(yù)測模型,最后疊加各IMF 的預(yù)測結(jié)果,得到最終預(yù)測結(jié)果。
集裝箱吞吐量預(yù)測步驟如下:
步驟1 數(shù)據(jù)準(zhǔn)備。將集裝箱吞吐量數(shù)據(jù)集分為訓(xùn)練集和測試集,利用訓(xùn)練數(shù)據(jù)建立預(yù)測方法,并利用測試集的數(shù)據(jù)對所建立的方法進(jìn)行評估。
步驟2 采用HI 異常值檢測與校正方法對訓(xùn)練集的異常值進(jìn)行校正,校正后的訓(xùn)練集和測試集作為以下步驟的輸入序列。
步驟3 OVMD。將VMD 應(yīng)用到數(shù)據(jù)預(yù)處理過程中,模式的數(shù)量會顯著影響預(yù)測結(jié)果:一方面,極有可能只有太少的模式不能充分提取出隱藏在原始序列中的特征信息;另一方面,由于誤差累積的影響,過多的分量可能會產(chǎn)生較差的預(yù)測結(jié)果,即每個模型的預(yù)測誤差會在最后的集成步驟中累積。本文用OVMD 對模態(tài)數(shù)進(jìn)行循環(huán)尋優(yōu)處理,設(shè)置初始模態(tài)數(shù),依次增加模態(tài)數(shù),直到滿足趨勢項極值點個數(shù)為0 或1時,跳出循環(huán),結(jié)束操作。
步驟4 采用SE 方法對分解結(jié)果進(jìn)行測試,SE 值越大,表明信號的復(fù)雜度越高;相反地,較低的SE 值說明了信號的復(fù)雜度越低。以SE 值的大小將時間序列分為3 種:高頻低幅、中頻中幅和低頻高幅。
步驟5 用相空間重構(gòu)法計算出預(yù)測模型的預(yù)測步長。
步驟6 基于多核學(xué)習(xí)思想,KELM 結(jié)合ELM 和SVM 的優(yōu)點,并引入了核函數(shù),因此核函數(shù)類型及核函數(shù)參數(shù)的選擇也影響KELM 的性能。KELM 一般采用線性核函數(shù)、高斯核函數(shù)以及小波核函數(shù),根據(jù)不同的序列特點選擇不同的核函數(shù)建立多組KELM 預(yù)測模型。
步驟7 將所有分量預(yù)測結(jié)果疊加得到最終的集裝箱吞吐量預(yù)測值。
選擇KELM 算法作為數(shù)據(jù)預(yù)測模型的原因是:
1)KELM 算法會隨機(jī)生成輸入層和隱含層之間的連接權(quán)值,以及隱含層神經(jīng)元的閾值,在訓(xùn)練過程中不需要調(diào)整;
2)通過設(shè)置隱含層神經(jīng)元數(shù)量,得到唯一最優(yōu)解;
3)KELM 算法具有運(yùn)算速度快、泛化能力強(qiáng)、克服過擬合困難等優(yōu)點。
以深圳港的集裝箱吞吐量歷史數(shù)據(jù)作為實證研究對象建立集裝箱吞吐量短期預(yù)測模型。
3.1.1 數(shù)據(jù)來源
本文使用的數(shù)據(jù)來自Wind 數(shù)據(jù)庫(http://www.wind.com.cn),數(shù)據(jù)集時間范圍為2001 年1 月至2019 年12 月。將數(shù)據(jù)分為兩個集合:訓(xùn)練集數(shù)據(jù)和測試集數(shù)據(jù)。訓(xùn)練集數(shù)據(jù)用于確定神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值,訓(xùn)練集數(shù)據(jù)涵蓋的時間段為2001 年1 月至2016 年2 月;測試集數(shù)據(jù)用于判斷所建立模型的性能,數(shù)據(jù)時間段為2016 年3 月至2019 年12 月。
3.1.2 數(shù)據(jù)分析
1)集裝箱吞吐量的非線性。
如圖5 所示,深圳港的月度集裝箱吞吐量整體呈現(xiàn)曲折上升趨勢。在所選區(qū)間內(nèi),每年2 月港口集裝箱吞吐量明顯下降,是由于處于北半球的深圳港2 月仍在冬季,有海面結(jié)冰等不利海運(yùn)的情況發(fā)生;且該時段常為我國農(nóng)歷新年,進(jìn)出口貿(mào)易量受節(jié)假日影響較大,呈現(xiàn)非線性的特點。
圖5 深圳港月度集裝箱吞吐量Fig.5 Monthly container throughput at Shenzhen Port
2)集裝箱吞吐量的非平穩(wěn)性。
時間序列的平穩(wěn)性指其統(tǒng)計變量在一定時期內(nèi)保持穩(wěn)定,不受時間變化的影響。本文通過計算時間序列的自相關(guān)系數(shù)(AutoCorrelation Function,ACF)值對吞吐量時間序列進(jìn)行非平穩(wěn)性驗證。
如圖6 所示,深圳港集裝箱吞吐量的ACF 分析顯示,原始月度時間序列的ACF 數(shù)值具有拖尾性,在第76 個數(shù)據(jù)時才趨于零,說明了樣本數(shù)據(jù)是非平穩(wěn)時間序列。
圖6 集裝箱吞吐量月度時間序列的ACF分析Fig.6 ACF analysis of monthly time series of container throughput
3)集裝箱吞吐量的復(fù)雜性。
通過本文1.3 節(jié)介紹的樣本熵(SE)方法評價數(shù)據(jù)序列的復(fù)雜性。根據(jù)SE 方法求得本文原始時間序列的樣本熵值為0.774 5,說明樣本數(shù)據(jù)是復(fù)雜時間序列。
綜合來說,港口集裝箱吞吐量變化復(fù)雜,影響因素多,呈現(xiàn)非線性、非平穩(wěn)性和復(fù)雜性的特點,難以直接分析預(yù)測。
對預(yù)測性能的評價有多種誤差測量標(biāo)準(zhǔn)。然而,相關(guān)研究表明,并沒有一個通用的標(biāo)準(zhǔn)公式來評價預(yù)測模型的有效性。因此,采用以下4 個常用指標(biāo)從不同的角度評估效用,平均絕對誤差(Mean Absolute Error,MAE)、平均絕對百分比誤差(Mean Absolute Percentage Error,MAPE)、均方根誤差(Root Mean Square Error,RMSE)和決定系數(shù)(R2)檢驗。
其中:Ai和分別為第i(i=1,2,…,B)周期時間序列的實際值和預(yù)測值;為實際的平均值;B為測試樣本集個數(shù)。
MAPE、MAE 和RMSE 是用來衡量預(yù)測值與實際值之間的偏差的,它們的值越小,預(yù)測效果越好;R2的值越接近1,預(yù)測值和真實值的相似度越高。
3.3.1 基于OVMD的集裝箱吞吐量分解
1)離群點處理。
首先本文采用HI 數(shù)據(jù)處理方法對原始月度集裝箱吞吐量時間序列進(jìn)行預(yù)處理的目的是通過去除離群值降低原始序列的復(fù)雜度,以提高序列的魯棒性和穩(wěn)定性。數(shù)據(jù)選用深圳港2001 年1 月至2019 年12 月的月度港口集裝箱吞吐量,預(yù)處理結(jié)果如圖7 所示。
圖7 HI離群點處理結(jié)果Fig.7 HI outlier processing results
2)OVMD。
時間序列預(yù)測依賴于時間序列的平穩(wěn)性,需要對集裝箱吞吐量時間序列進(jìn)行適當(dāng)?shù)姆纸猓垣@得平穩(wěn)的時間序列分量。利用OVMD 對深圳港2001 年1 月至2019 年12 月的原始月度集裝箱吞吐量時間序列進(jìn)行分解,結(jié)果如圖8 所示。
圖8 OVMD結(jié)果Fig.8 OVMD results
用OVMD 優(yōu)化模態(tài)函數(shù)個數(shù)K以充分提取原始序列的特征,子序列中心頻率相近時判定為過分解,得到K=13 時分解效果最好。其余參數(shù)設(shè)置為初始參數(shù),帶寬σ、中心頻率ω和帶寬約束強(qiáng)度τ的初始參數(shù)分別為2 000、0 和0。
3.3.2 基于幅頻特性的本征模函數(shù)的分類
振幅和頻率是時間序列的基本參數(shù)。分解的高頻和低頻分量分別包含噪聲項和趨勢項。高振幅的低頻分量代表了這些分量的趨勢,而低振幅的高頻分量表示包含噪聲的細(xì)節(jié)。因此,這些模態(tài)函數(shù)分為3 類。
1)使用SE 方法對OVMD 得到的每個IMF 序列進(jìn)行熵值計算,結(jié)果如表1 所示。
表1 各IMF的樣本熵值Tab.1 Sample entropy values of IMFs
2)根據(jù)SE 值的大小將IMF 序列分為三類:第一類包含低頻的高振幅分量IMF1、IMF2、IMF7;第二類由中頻的中振幅分量IMF3、IMF5、IMF8、IMF9、IMF13 組成;第三類包括高頻低振幅分量IMF4、IMF6、IMF10、IMF11、IMF12。
3.3.3 不同類別的時間序列預(yù)測模型
本節(jié)為不同分量建立不同的時間序列預(yù)測模型。
1)為提出的模型選擇最優(yōu)的輸入步長,即確定p值大小。
本文對整個時間序列通過相空間重構(gòu)法計算出的最佳輸入步長為2,預(yù)測時對每個分量單獨進(jìn)行預(yù)測,所有分量的預(yù)測步長均為2。用前兩個月的數(shù)據(jù)作為輸入預(yù)測第三個月的集裝箱吞吐量,序列預(yù)測函數(shù)關(guān)系如式(32)所示:
其中:xt表示歷史集裝箱吞吐量;p是最佳輸入個數(shù);f(x)由KELM 算法構(gòu)建函數(shù)關(guān)系;y(t)為t時刻預(yù)測值。
2)選擇不同核函數(shù)。
大量的核函數(shù)被應(yīng)用于KELM 算法。這些具有不同性質(zhì)的核函數(shù)被分為全局核和局部核。高頻時間序列要求具有良好局部學(xué)習(xí)能力的局部核函數(shù);相反地,低頻時間序列需要具有良好全局學(xué)習(xí)能力的全局核函數(shù)。由于不同類型的模態(tài)函數(shù)具有不同的數(shù)據(jù)特征,根據(jù)時間序列的特征選擇相應(yīng)的核函數(shù),可以提高模型的預(yù)測能力。KELM 算法主要有以下3 種核函數(shù):線性核、高斯核和小波核函數(shù)。這3 種核函數(shù)具有不同的學(xué)習(xí)能力。
本文將13 個IMF 分量分別用KELM 算法的3 種核函數(shù)同時做3 組不同的預(yù)測,然后在3 組實驗結(jié)果中選擇預(yù)測誤差最小的核函數(shù)作為該IMF 相應(yīng)的匹配核函數(shù)。為了直觀地看出不同核函數(shù)對測試集不同IMF 的預(yù)測效果,本文僅取訓(xùn)練集的后46 個樣本(2012 年3 月至2015 年12 月的月度集裝箱吞吐量真實值)和測試集的前46 個樣本(2016 年1 月至2019 年10 月的月度集裝箱吞吐量預(yù)測值)進(jìn)行繪圖,如圖9所示。
圖9 不同核函數(shù)預(yù)測對比Fig.9 Prediction comparison of different kernel functions
從圖9 可獲得以下結(jié)論:對于IMF1、IMF2 和IMF7,KELM 的線性核函數(shù)的預(yù)測結(jié)果相較于高斯和小波核函數(shù)的預(yù)測結(jié)果更加接近驗證集;對于IMF3、IMF5、IMF8、IMF9和IMF13,KELM 的高斯核函數(shù)的預(yù)測結(jié)果更加接近驗證集;對于IMF4、IMF6、IMF10、IMF11 和IMF12 選擇小波核函數(shù)構(gòu)建預(yù)測模型效果更佳。本文根據(jù)核函數(shù)的學(xué)習(xí)能力和時間序列的特點,確定低頻高幅、中頻中幅和高頻低幅分別采用線性核、高斯核和小波核函數(shù)預(yù)測。
3.3.4 集成
最后,對預(yù)測模型的輸出進(jìn)行集成。將每個IMF 通過KELM 預(yù)測算法得到的各個分量預(yù)測值線性相加,得出最終的模型預(yù)測結(jié)果,如圖10 所示。將本文提出的模型和其他對比模型的預(yù)測結(jié)果與深圳港的實際歷史月度集裝箱吞吐量數(shù)據(jù)進(jìn)行對比,判斷本文模型是否能夠很好擬合深圳港集裝箱吞吐量走勢。
圖10 本文模型和其他模型的預(yù)測曲線對比Fig.10 Prediction curves comparison of the proposed model and other models
將本文模型HI-OVMD-SE-KELM 與4 種對比模型HICEEMD-SE-KELM、HI-EEMD-SE-KELM、HI-OVMD-ARIMA、HI-OVMD-ELM 模型作對比實驗,結(jié)果如表2 和圖11 所示。
表2 不同模型的性能評價指標(biāo)Tab.2 Performance evaluation indicators of different models
圖11 不同模型的預(yù)測誤差曲線Fig.11 Prediction error curves of different models
由表2 和圖10~11 可以得出以下結(jié)論:
1)通過圖10 可以看出,本文提出的HI-OVMD-SE-KELM模型相較于對比模型更接近實際數(shù)據(jù),整體預(yù)測曲線的擬合程度優(yōu)于其他4 種模型,說明本文模型具有更高的擬合精度;
2)與EEMD 和CEEMD 方法相比,采用OVMD 作為數(shù)據(jù)預(yù)處理方法,可以有效提取出隱藏在原始集裝箱吞吐量序列中的不同波動特征,預(yù)測精度有明顯的提高;
3)相較于ARIMA 預(yù)測算法,KELM 算法具有學(xué)習(xí)速度快、泛化能力強(qiáng)等優(yōu)點,有利于非線性序列的預(yù)測;
4)通過KELM 和ELM 的比較可以清楚地看到,所開發(fā)的方法比基于ELM 的方法獲得了更高的精度,說明不同核函數(shù)的加入也降低了KELM 組合預(yù)測中產(chǎn)生的誤差,核函數(shù)在生成最優(yōu)KELM 中起著重要作用。
針對集裝箱吞吐量復(fù)雜性、非線性和非平穩(wěn)性的特點,本文提出一種基于HI-OVMD-SE-KELM 的混合預(yù)測模型。采用HI 預(yù)處理數(shù)據(jù)后,選擇OVMD 方法將時間序列分解后用KELM 預(yù)測方法進(jìn)行評估。在結(jié)果分析部分,對每個模型的預(yù)測結(jié)果用常見的測量評估標(biāo)準(zhǔn)進(jìn)行了測驗。結(jié)果表明OVMD 模型在一定程度上優(yōu)于傳統(tǒng)的CEEMD 模型和EEMD模型,VMD 模型能顯著降低原始序列的復(fù)雜性,充分提取集裝箱吞吐量數(shù)據(jù)中的特征信息,適用于復(fù)雜性、非線性和非平穩(wěn)時間序列。對OVMD 結(jié)果分類后選擇不同核函數(shù)的KELM 方法預(yù)測和單一預(yù)測模型相比更能預(yù)測所有的分解組件。通過4 種對比模型和本文模型在MAE、MAPE、R2和RMSE 4 種指標(biāo)下的對比,證明了本文模型具有更好的預(yù)測性能。
當(dāng)前各類預(yù)測研究中,有諸多優(yōu)秀的算法和模型,本文選擇的僅僅是其中一種組合模型,仍可通過選取和建立更合適的混合預(yù)測模型提高預(yù)測的準(zhǔn)確性,因此,構(gòu)建更優(yōu)的混合模型也是未來的研究方向之一。