劉合兵 韓晶晶 馬新明 席 磊*
(1.河南農(nóng)業(yè)大學信息與管理科學學院,鄭州 450002;2.農(nóng)田監(jiān)測與控制河南省工程實驗室,鄭州 450002)
維持農(nóng)產(chǎn)品價格的穩(wěn)定,對于保障國計民生具有重要的現(xiàn)實意義。農(nóng)產(chǎn)品價格的劇烈波動會對農(nóng)產(chǎn)品市場帶來不利的影響。對于這一問題,政府部門曾多次在“中央一號文件”及政府的報告中提及應該加強農(nóng)產(chǎn)品市場的監(jiān)測管理,建立健全農(nóng)產(chǎn)品市場調控制度。在一個成熟的農(nóng)產(chǎn)品市場中,所有的市場參與者都沒有操控市場的能力,農(nóng)產(chǎn)品價格是市場自由交易的產(chǎn)物。農(nóng)產(chǎn)品價格的預測屬于時間序列預測的范疇,同時農(nóng)產(chǎn)品又兼具高度易腐的特殊性,必須滿足供需平衡,這使得農(nóng)產(chǎn)品價格的預測又不同于一般商品的價格預測?,F(xiàn)實中,氣候變化、經(jīng)濟波動、特殊節(jié)假日等諸多外生因素都會對農(nóng)產(chǎn)品價格產(chǎn)生影響,從而使得農(nóng)產(chǎn)品價格表現(xiàn)出高度的隨機波動性。這也就使得高準確率的農(nóng)產(chǎn)品價格預測頗具挑戰(zhàn)性。通過對農(nóng)產(chǎn)品的未來價格進行短期預測,可以為相關從業(yè)人員提供前瞻性信息,生產(chǎn)者可以及時調整生產(chǎn)方案,經(jīng)營者可以及時調整銷售思路,提高市場風險規(guī)避能力,減少異常波動帶來的損失。價格預測也可以為相關政府部門出臺穩(wěn)定農(nóng)產(chǎn)品市場供需和價格相關政策提供決策參考,也為消費者進行日常飲食消費選擇提供參考。
農(nóng)產(chǎn)品的生產(chǎn)過程受到氣候的限制和影響,農(nóng)產(chǎn)品價格主要受市場供需影響,所以農(nóng)產(chǎn)品價格序列表現(xiàn)出季節(jié)性,趨勢性及隨機波動性,呈現(xiàn)典型的非線性特征。國內(nèi)外對于價格的預測方法主要分為4 種:計量經(jīng)濟預測法、數(shù)理統(tǒng)計預測法、智能分析法和組合模型法[1]。計量經(jīng)濟學以揭示經(jīng)濟現(xiàn)象中的因果關系為目的,在農(nóng)產(chǎn)品市場價格預測中,最常用的方法是回歸分析法,一般都是根據(jù)自變量和因變量的函數(shù)關系建立線性或非線性回歸模型,然后對相應的農(nóng)產(chǎn)品價格進行預測[2-3]。但是在對農(nóng)產(chǎn)品價格進行預測時,影響價格變動的因素較多,我們在預測時并不能一一例舉,且個別影響因素并不能量化,這就對價格預測工作帶來很多不便。統(tǒng)計預測是統(tǒng)計學的一個重要功能,是預測領域的一個重要方法。在農(nóng)產(chǎn)品市場價格預測中,應用最廣泛的是傳統(tǒng)的時間序列預測方法,其主要包括季節(jié)指數(shù)法[4]、移動平均法[5]、指數(shù)平滑法[6]等。以上這些方法在對具有線性特征的時間序列預測時表現(xiàn)較好,但農(nóng)產(chǎn)品市場隨著時間的變化,逐步向復雜化、不規(guī)則化發(fā)展時,傳統(tǒng)的時間序列在對這些價格進行預測時,為模型參數(shù)調整帶來較大困難,反映出一定的局限性。隨著信息技術、智能技術在各領域的廣泛應用,農(nóng)產(chǎn)品價格預測也應用這些新技術進行了有意義的實踐。在農(nóng)產(chǎn)品市場價格預測中應用的智能分析方法主要有神經(jīng)網(wǎng)絡預測法[7-9]、灰色預測法[10]、支持向量機[11]等。智能分析方法具有很強的非線性映射能力和柔性的網(wǎng)絡結構,能夠使樣本預測誤差逼近最小。組合模型法是將不同的方法組合起來形成的一種新的預測方法。它有兩種基本的形式,一是將不同的預測方法所得的結果進行等權或不等權的組合[12-13];二是在用一種預測方法進行預測前,先通過輔助方法進行處理以使其后面預測方法預測精度更佳的組合[14-15]。這些建立組合預測模型的結果證實比單一預測模型的精度高,隨即也成為預測領域的潮流。
極限學習機是Huang 等[16]于2006 年提出的一種機器學習方法,它可以最大限度的提高網(wǎng)絡的泛化能力和學習速度,性能優(yōu)良且具有較強的非線性擬合能力?,F(xiàn)如今極限學習機已經(jīng)在股票價格[17]、網(wǎng)絡流量[18]、風速預測[19]等方面得到廣泛應用。它雖然可以很好的擬合農(nóng)產(chǎn)品價格序列的非線性部分,但是價格的非平穩(wěn)部分會對預測精度產(chǎn)生較大影響。為了降低農(nóng)產(chǎn)品價格的非平穩(wěn)性,文章引入經(jīng)驗模態(tài)分解,它可以將一個復雜的非平穩(wěn)性信號分解為不同的具有局部時變特征的信號,從而有效降低序列的非平穩(wěn)性。因此,文章先用經(jīng)驗模態(tài)分解方法對農(nóng)產(chǎn)品價格序列進行預處理,將處理后的分量作為極限學習機的輸入變量分別建立預測模型,并將預測結果進行組合獲得最終農(nóng)產(chǎn)品價格的預測值。本文選取2014 年至2019 年河南省批發(fā)市場馬鈴薯的月均價格進行應用研究,驗證EMD-ELM 組合預測模型的可行性和精確性。
經(jīng)驗模態(tài)分解(Empirical Mode Decomposition,EMD)是Hilber-Huang 變換中的一種適用于非線性、非平穩(wěn)時間序列的信號分解方法。它依據(jù)信號自身的時間尺度特征對信號進行分解,無需預先設定任何基函數(shù)。它可以將原始序列分解為若干個具有不同尺度、平穩(wěn)性和周期性波動特征的本征模態(tài)函數(shù)(Intrinsic Mode Function,IMF)和一個剩余分量。其中每個IMF必須滿足兩個條件:1.在一個完整的時間序列信號上,極值點的個數(shù)和過零點的個數(shù)相差不大于1;2.在任意時刻點處,局部最大值的包絡線和局部最小值的包絡線均值為0。
經(jīng)驗模態(tài)分解步驟如下:
1.取序列x(t)的所有極大值和極小值。
3.計算x(t)與m1(t)之差,記為h1(t),h1(t)=x(t)-m1(t),如果h1(t)滿足IMF 的兩個條件,則記為c1(t)=h1(t),c1(t)就是第一個IMF 分量;如果h1(t)不是IMF,則將h1(t)視為新的信號x(t),重復以上步驟直到h1(t)是一個IMF,記為c1(t)。
通過將剩余部分r1(t)=x(t)-c1(t)視為新的信號并重復上述步驟,即可提取其余的IMF和一個余項。原始數(shù)據(jù)x(t)可表示為本征模態(tài)函數(shù)與余項之和,即因此,一個時間信號都可分解為n個本征模態(tài)函數(shù)分量與一個余項之和。
極限學習機(Extreme Learning Machine,ELM)是一種新型的單隱層前饋神經(jīng)網(wǎng)絡。由于它的結構簡單,其初始權重和偏置是隨機生成的且不需要迭代調整,在訓練過程中只需要設置隱含層神經(jīng)元的個數(shù)即可。極限學習機所得解是唯一最優(yōu)解,保證了網(wǎng)絡泛化能力,還能克服局部最優(yōu)化的不足且具有學習速度快等優(yōu)點,在保證較高的精度和預測效果的前提下,其卓越的訓練速度為其自身與其他方法結合提供便利,越來越引起各個領域的高度關注和深入研究。
現(xiàn)今研究農(nóng)產(chǎn)品價格預測中,一般都會涉及預測模型各種參數(shù)的反復調整問題,因此提出一種EMDELM 組合預測模型,其方法在運用時具有簡易快捷的優(yōu)勢。因為EMD-ELM 組合預測模型充分利用了經(jīng)驗模態(tài)分解方法可以根據(jù)將要預測序列其自身的時間尺度自行分解出各個本征模態(tài)函數(shù)和一個余項,其本征模態(tài)函數(shù)的數(shù)量是根據(jù)原始序列的特征特定產(chǎn)生的,不同的原始序列可能產(chǎn)生的本征模態(tài)函數(shù)的數(shù)量不同。極限學習機解決了傳統(tǒng)神經(jīng)網(wǎng)絡需要設置大量網(wǎng)絡參數(shù)問題,在運用過程中只需要設置好隱含層神經(jīng)元的個數(shù)即可對序列進行學習預測。
EMD-ELM 組合預測模型具體內(nèi)容如圖1 所示,首先利用經(jīng)驗模態(tài)分解方法,根據(jù)農(nóng)產(chǎn)品價格其自身的時間尺度進行分解,得出若干個本征模態(tài)函數(shù)分量和一個余項分量。對分解出的若干個本征模態(tài)函數(shù)分量和一個余項分量分別運用極限學習機方法進行預測,每個分量根據(jù)其自身特性通過設置不同的參數(shù)值,得到不同的預測結果。最后將其各個分量的預測結果進行累加組合得到最終的農(nóng)產(chǎn)品價格預測值。
農(nóng)貿(mào)市場是城鄉(xiāng)居民對農(nóng)副產(chǎn)品進行交易買賣的固定地點市場,本研究所采用的實驗數(shù)據(jù)來源于河南省農(nóng)產(chǎn)品信息監(jiān)測系統(tǒng)(http://ncpprice.agridoor.com.cn/login.asp),考慮樣本的可獲得性和連續(xù)性選擇某個農(nóng)貿(mào)市場馬鈴薯的月均價格數(shù)據(jù)。作為全球第四大重要的糧食作物,馬鈴薯是具有發(fā)展前景的高產(chǎn)作物之一,同時也是十大熱門營養(yǎng)健康食品之一。實驗選取72 個連續(xù)的月度價格數(shù)據(jù)樣本,數(shù)據(jù)周期是從2014 年1 月至2019 年12 月。從圖2 中可以看出,馬鈴薯的價格大多時間都在1 元/kg 和3 元/kg 內(nèi)波動,只有個別月份高于3元/kg,整體來看,其價格具有不穩(wěn)定、不規(guī)則波動特征。實驗過程中,選擇2014年1 月至2018 年12 月的60 個樣本作為訓練集,2019年的12 個月的樣本作為測試集,對EMD-ELM 組合預測模型進行應用驗證。
選擇平均絕對誤差(MAE)、平均百分比誤差(MAPE)與均方根誤差(RMSE)三個指標來評估EMD-ELM 組合預測模型的預測效果,計算公式如下:
公式中,n為價格樣本數(shù)量,y為第i個月的月均價格。
從馬鈴薯的價格走勢圖中可以看出其序列具有不穩(wěn)定、非線性的特征,因此可利用經(jīng)驗模態(tài)分解方法進行分解,實驗過程用Matlab R2014b 軟件編程實現(xiàn),該方法依據(jù)馬鈴薯價格數(shù)據(jù)信號不斷的分離出高頻分量,直到所有的頻率成分都被分離開,得到了4個本征模態(tài)函數(shù)分量,然后用原始數(shù)據(jù)減去各本征模態(tài)函數(shù)分量得到1個線性趨勢余量。分解結果如圖3所示,圖中第一曲線圖為馬鈴薯的原始序列圖,中間4 個為本征模態(tài)函數(shù)分量圖,最后一個為余量圖,從圖中可以看出,IMF1 和IMF2 分量波動周期較短,波動較為頻繁,IMF3 和IMF4 波動較為平緩,且波動周期較長,余量與原價格序列整體趨勢一致,反映了價格序列的線性趨勢。用極限學習機分別對分解出來的5 個分量進行預測,為了實現(xiàn)較高的預測精度,在預測過程中首先對價格數(shù)據(jù)進行歸一化處理,分解出來的2014年至2018年月均連續(xù)價格作為模型的訓練集,分解出的2019 年的月均連續(xù)價格作為測試集。設置神經(jīng)網(wǎng)絡時用當前6 個月的價格和上一年同月份的價格共7 個數(shù)據(jù)作為輸入層數(shù)據(jù)進行提前一步的價格預測,其輸入輸出的構成如圖4 所示。在隱含層神經(jīng)元個數(shù)的設定時,考慮到所研究的價格序列的長度,構建了從3 到20 的隱含層節(jié)點的模型,對每個極限學習機模型在預測樣本上重復訓練15 次,然后保存預測結果計算每次的平均絕對誤差,選取平均絕對誤差最小的預測模型。由于各個分量的波動特征不同,經(jīng)過實踐選取了不同的隱含層節(jié)點數(shù)值。對輸出數(shù)據(jù)進行反歸一化處理,還原為價格數(shù)據(jù),最后對各個分量的預測值進行累加組合得到最后的預測值。極限學習機的建模實驗由Matlab R2104b 編程實現(xiàn)。
表1 不同模型預測誤差比較Table 1 Comparison of prediction errors of different models
為了比較預測性能,分別采用單一的極限學習機、BP神經(jīng)網(wǎng)絡和ARIMA模型對相同的數(shù)據(jù)集進行建模預測。其中BP神經(jīng)網(wǎng)絡和極限學習機的輸入數(shù)據(jù)集與EMD-ELM 組合預測模型的預測設置一致,同為當前6個月的價格和上一年同月價格共7個數(shù)據(jù)作為輸入數(shù)據(jù)集。從圖5 和表1 可以看出,EMD-ELM組合預測模型的預測精度與單一的極限學習機、BP神經(jīng)網(wǎng)絡和ARIMA 模型的預測結果有了較大的提高,原因在于EMD-ELM 組合預測模型對原始的農(nóng)產(chǎn)品價格序列用經(jīng)驗模態(tài)分解方法進行分解的各個分量,降低了后續(xù)預測過程的復雜度。具體從精度評價指標看,EMD-ELM 組合預測模型的MAE 最低,為0.093 元/kg,而單一極限學習機、BP 神經(jīng)網(wǎng)絡和ARIMA 模型的MAE 分別為0.182 元/kg、0.214 元/kg 和0.233 元/kg。且從MAPE 相比較,EMD-ELM 組合預測模型的MAPE最低,為4.265%,單一的極限學習機、BP 神經(jīng)網(wǎng)絡和ARIMA 模型的MAPE 分別為7.62%、9.68%、10.92%。從RMSE相比較,EMD-ELM 組合預測模型的預測結果同樣表現(xiàn)最好,RMSE 最低,為0.148,單一極限學習機、BP 神經(jīng)網(wǎng)絡和ARIMA 模型的RMSE分別為0.233、0.236和0.275。
相對于單一極限學習機、BP 神經(jīng)網(wǎng)絡和ARIMA模型,EMD-ELM 組合預測模型有著更為突出的優(yōu)勢。首先,ELM、BP、ARIMA 此類單一模型在進行價格預測時并未對價格數(shù)據(jù)進行預處理,無法很好的擬合價格的波動頻率和波動幅度,因而在最終的價格預測中存在較大的誤差。因此,對價格數(shù)據(jù)進行經(jīng)驗模態(tài)分解,分離數(shù)據(jù)的波動頻率,降低數(shù)據(jù)的波動幅度對于建立良好的預測模型是非常重要的。其次,在對比的3個模型中,ARIMA模型在3個評價指標中表現(xiàn)最差,原因在于ARIMA 模型是典型的數(shù)理統(tǒng)計預測模型,對于線性的預測表現(xiàn)較好,而針對具有非線性特征的價格數(shù)據(jù)會產(chǎn)生較大的誤差。極限學習機和BP神經(jīng)網(wǎng)絡是典型的智能預測模型,從結果來看,其預測效果比ARIMA 模型表現(xiàn)好,但不如組合模型。其中可以看出單一的極限學習機預測結果比BP神經(jīng)網(wǎng)絡表現(xiàn)好。由此可以得出在EMD-ELM 組合預測模型中,經(jīng)驗模態(tài)分解可以很好的降低原始序列的非平穩(wěn)性,有利于提高農(nóng)產(chǎn)品價格的預測精度。
針對農(nóng)產(chǎn)品價格的具體波動形態(tài),采用經(jīng)驗模態(tài)分解方法能夠有效地分離出原始價格序列中的不同特征分量,有效地降低了各分量的非平穩(wěn)性。本文提出了一種EMD-ELM 組合預測模型,實驗結果表明該方法較之單一極限學習機、BP神經(jīng)網(wǎng)絡和ARIMA模型具有更好的預測能力,為非線性的農(nóng)產(chǎn)品價格預測提供一種新的思路。通過對農(nóng)產(chǎn)品的未來價格做出提前預測,這對農(nóng)產(chǎn)品從業(yè)人員及相關政府部門具有重要的現(xiàn)實意義。由于在對EMD-ELM 組合預測模型的應用中僅對馬鈴薯價格進行了研究,結果表明能夠很好的擬合價格的波動特征驗證EMD-ELM 組合預測模型的可行性,但并未對其他農(nóng)產(chǎn)品種類進行應用,后期可以針對此方法進行多個農(nóng)產(chǎn)品種類的預測。極限學習機的隱含層神經(jīng)元個數(shù)是通過設定區(qū)間反復實踐調參取最佳值確定的,比較消耗時間,如何快速有效的確定極限學習機隱含層神經(jīng)元的個數(shù)是下一階段的研究目標。