吉 陽,黃 鑫,陳 蓉
(四川農(nóng)業(yè)大學,四川 成都 611130)
基于ARIMA與小波神經(jīng)網(wǎng)絡模型的生豬價格預測比較
吉 陽,黃 鑫,陳 蓉
(四川農(nóng)業(yè)大學,四川 成都 611130)
文章在分析傳統(tǒng)生豬價格預測方法局限性的基礎上,利用四川省生豬價格周度數(shù)據(jù)分別建立小波神經(jīng)網(wǎng)絡和A RIM A預測模型,通過預測的評價指標對比,可以看出,小波神經(jīng)網(wǎng)絡在非線性的映射能力,多指標復雜的波動的數(shù)據(jù)內(nèi)在規(guī)律逼近方面較之于時間序列模型更優(yōu)。并且,小波神經(jīng)網(wǎng)絡將生豬養(yǎng)殖鏈的各個階段的產(chǎn)品和要素價格都帶入進行了訓練,符合生豬養(yǎng)殖鏈的價格傳遞機制,更好的探究出了生豬價格的波動特征。
小波神經(jīng)網(wǎng)絡;A RIM A模型;生豬價格;預測評價
在最近的幾年來,周期性變化的生豬價格波動愈加頻繁。五年以前,生豬價格基本穩(wěn)定于以三年半為一個周期,而在近幾年來,波動愈加劇烈,多數(shù)養(yǎng)豬農(nóng)戶對此難以適應,虧損成為了養(yǎng)殖戶的必然命運。
從1985年國務院頒發(fā)《關于進一步活躍農(nóng)村經(jīng)濟的十項政策》開始,生豬養(yǎng)殖和銷售開始走入市場,政府退出,市場有效配置資源的同時也使得豬價波動更劇烈,對養(yǎng)殖戶造成的損失更甚。由此可以說明,尋找到可以有效預測生豬價格的方法和對價格進行監(jiān)管已經(jīng)十分必要,若是可以在產(chǎn)業(yè)鏈視角下探究出生豬價格波動規(guī)律,就可以從各環(huán)節(jié)價格聯(lián)系下,對穩(wěn)定生豬養(yǎng)殖鏈秩序和調控生豬價格做出政策和方案建議,這對于推動我國生豬產(chǎn)業(yè)的健康發(fā)展、穩(wěn)定城鎮(zhèn)居民食品類消費價格,促進農(nóng)業(yè)及國民經(jīng)濟的快速和平穩(wěn)發(fā)展具有重要意義。
神經(jīng)網(wǎng)絡作為一門十分活躍的邊緣性交叉學科,其具有非線性映射、聯(lián)想記憶、分類與識別、分布式存儲、自適應(學習)、優(yōu)化計算和大規(guī)模并行處理等功能,使它在影響因素頗多的非線性的價格等的預測中有著得天獨厚的優(yōu)勢[1]。本文擬構建時間序列模型和當前較為先進的小波神經(jīng)網(wǎng)絡模型,對四川省的生豬價格進行預測,從評價指標來對其進行比較,得出優(yōu)劣并且分析原因。
預測指的是憑據(jù)當期和往期的資料,通過已經(jīng)理解掌握的手段和常識,對發(fā)展的事物的未來和位置狀態(tài)判斷和估量,預測的作用是為做出更有用的決策。
(一)傳統(tǒng)ARIMA預測方法
傳統(tǒng)的ARIMA時間序列預測方法與線性回歸、非線性回歸都是基于最小二乘原理進行求解。時間序列模型的根本是事物發(fā)展的連續(xù)性。所謂連續(xù)性就是指事物的發(fā)展具有某種規(guī)律,即前期的變化會影響后面的發(fā)展,即失誤按照一種固有的規(guī)律進行變化。于一定條件下,只要事物發(fā)展依賴的條件沒有發(fā)生根本性的變化,那么一般來說,事物發(fā)展的預測還是可以基于以前的狀態(tài)。時間序列模型就是通過建立統(tǒng)計方法,從預測的時間序列中找出該序列發(fā)展的固有規(guī)律,以此建立模型并且完成預測。雖然ARIMA模型是以最小二乘作為降低誤差的手段,然而該方法的推導結果并非完全有效。有時候會形成有偏估計,并且最小二乘估計魯棒性較低,并且會在處理異常值的時候會出現(xiàn)較大偏差,以及在處理高維數(shù)據(jù)時復雜且不易掌握,而且在有些實際問題的數(shù)據(jù),比如經(jīng)濟社會中的大量統(tǒng)計數(shù)據(jù),此類數(shù)據(jù)的發(fā)展變化原理十分的復雜,較難建立合乎規(guī)律的似然函數(shù)[2]。
所以學術界提出了很多非線性并行算法模型,在處理多輸入多輸出類型的問題中有了廣泛深入地應用,同時該類并行算法的研究也可以處理許許多多諸如示警、診斷、優(yōu)化類的問題。本文就這兩種傳統(tǒng)和現(xiàn)代算法對比,說明在復雜生豬價格波動規(guī)律序列預測中現(xiàn)代智能優(yōu)化算法的優(yōu)越性。
(二)小波神經(jīng)網(wǎng)絡算法
1.由于傅立葉變換相關的理論基礎不足(傅立葉變換是信號處理信號領域中應用最廣的一種分析方法和理論),就是拋棄了時間信息,即傅立葉變換在時域中沒有分辨能力,這也就意味著一般的神經(jīng)網(wǎng)絡不能對樣本進行有效的預測,小波理論就應運而生。其中的小波是長度有限平均值為零的波形[3]。母小波函數(shù)經(jīng)過尺寸緊縮和平移得到小波函數(shù),一般來說,更具小波分析的假設,信號可分的特診,由此將信號分解為一個個小波函數(shù)的組合。小波變換是指把某一設定的小波函數(shù)φ(t)平移τ后,再在不同設定的尺度α下與預測的信號x(t)進行內(nèi)積算法。
等效的時域表達式為:
式中,τ和α是里面的參數(shù),τ相當于鏡頭相對于目標平行移動,α相當于鏡頭向目標推進或遠離。
從式(1)和式(2)可以看出,小波分析能夠通過小波基函數(shù)的變換分析信號的局部特征,并且在二維情況下具有信號方向的選擇性能力,因此,該方法作為一種數(shù)學理論和分析方法廣泛引起關注[4]。
2.小波神經(jīng)網(wǎng)絡將隱含層其中的傳遞函數(shù)替換為小波基函數(shù),其余整體構造與常規(guī)的神經(jīng)網(wǎng)絡一樣,重點是,同樣是依靠信號向前方傳播和誤差向后方遞減的特征[5]。其拓撲結構如圖1所示:
圖1 小波神經(jīng)網(wǎng)絡結構示意圖
在圖1中,X1,X2,…,Xk是小波神經(jīng)網(wǎng)絡輸入?yún)?shù),Y1,Y2,…,Ym是網(wǎng)絡的預測結果,權值為ωij和ωjk。
在輸入信號序列為xi(i=1,2,…,k)時候,隱含層輸出的計算公式為:
(3)式中,h(j)為隱含層第j個節(jié)點輸出值;ωij為輸入層和隱含層的連接權值;bj為小波基函數(shù)hj的平移因子;αj為小波基函數(shù)hj的伸縮因子;hj為小波基函數(shù)。
本論文采用Morlet母小波基函數(shù)[6]為小波基函數(shù),數(shù)學公式為:
函數(shù)圖形如圖2所示:
圖2 Morlet母小波基函數(shù)
小波神經(jīng)網(wǎng)絡輸出層計算公式為:
式中ωjk為隱含層到輸出層權值;h(i)為第i個隱含層節(jié)點的輸出;l是隱含層節(jié)點數(shù);m為輸出層節(jié)點數(shù)。
小波神經(jīng)網(wǎng)絡的參數(shù)權值的修正方式與常規(guī)神經(jīng)網(wǎng)絡一致,都是以梯度修正的思想,通過不斷迭代,似的網(wǎng)絡預測結果不斷和實際結果靠攏。
3.其修正算法過程如下
計算網(wǎng)絡預測誤差:
式中,yn(k)為期望輸出;y(k)為小波神經(jīng)網(wǎng)絡的期望輸出。
根據(jù)預測誤差e修正小波基函數(shù)參數(shù)和網(wǎng)絡權值:
其中η為學習速率。
(三)預測誤差評價
預測誤差是指實際值與預測值之間的差距。預測精度一般指的是實際結果和預測結果的一致程度。評價預測模型精度優(yōu)劣的常用指標如表1所示:
表1 預測指標名稱及含義
筆者采用我國四川省2008年5月第1周到2016年3月第2周生豬價格周度數(shù)據(jù)為例,分別采用ARIMA時間序列模型和小波神經(jīng)網(wǎng)絡對其進行預測,然后對兩種模型的預測結果進行對比并分析出其中的原因。
(一)基于ARIMA時間序列模型的生豬價格波動規(guī)律探究
筆者將前398周價格數(shù)據(jù)作為訓練樣本,將2016年1月第1周到3月第2周的價格數(shù)據(jù)作為檢驗樣本,進行構建模型。
1.平穩(wěn)性檢驗和修正
采用研究中常用的ADF方法檢驗序列平穩(wěn)性,根據(jù)表2可以看出,經(jīng)過1次差分之后,序列是平穩(wěn)的。既可以確定滯后階數(shù)為1(滯后階數(shù)由AIC最小原則確定)。
表2 平穩(wěn)性檢驗表
2.AR和MA滯后階數(shù)的初始確定
圖3自相關圖
圖4偏自相關圖
根據(jù)AF圖可以看出2或3階拖尾,而依照PAF可以看出3或4階拖尾。根據(jù)經(jīng)驗法則,可以初始嘗試性確定為 ARIMA(3,1,2),ARIMA(4,1,2),ARIMA(3,1,3),ARIMA(4,1,3)。
3.模型信息準則篩選
表3 信息準則值
根據(jù)AIC和BIC信息準則,即評判建立模型的穩(wěn)健性和精簡性的指標來看,4者相差不大,即難以根據(jù)信息準則進行篩選,須進行后續(xù)篩選。
4.模型估計
時間序列的自回歸和移動平均部分的系數(shù)必須顯著不為零,否則該模型就沒有意義。根據(jù)對模型的系數(shù)檢驗,發(fā)現(xiàn)ARIMA(4,1,2),ARIMA(3,1,3),ARIMA(4,1,3)模型的移動平均項的滯后1階的系數(shù)估計不了,因此,可以確定最合適的模型為:ARIMA(3,1,2)。該模型的估計結果如表4所示。
表4 ARIMA(3,1,2)模型估計
可以看出,所有的滯后項系數(shù)的都是極為顯著的,所以本文建立ARIMA(3,1,2)時間序列模型作為預測生豬價格的一種模型。
5.時間序列殘差白噪聲檢測
時間序列建模的殘差序列為假定為白噪聲。若是模型過小,就相當于遺漏解釋變量。而擾動項就會包含這些未能設定的解釋變量,由于存在該部分就會使擾動項出現(xiàn)自相關。因此,本文使用Q檢驗來檢驗殘差是否存在自相關。
圖5 殘差Q檢驗圖
結果表明,從1-10階滯后來看,都可以接受殘差無自相關的假設,即模型建立是合理的。
(二)基于小波神經(jīng)網(wǎng)絡的預測生豬價格
算法的流程如圖6所示:
圖6 小波神經(jīng)網(wǎng)絡的算法流程
理論證明,一層隱含層的神經(jīng)網(wǎng)絡已經(jīng)可以映射所有的連續(xù)函數(shù),所以本模型采用三層全連接型結構[6]:輸入輸出層和1層隱含層。
1.數(shù)據(jù)預處理。為了降低網(wǎng)絡訓練難度,防止出現(xiàn)過度擬合的現(xiàn)象,常采用歸一化的方法對數(shù)據(jù)進行標準化處理。
公式為y=(xk-xmin)/(xmax-xmin),式中,xk表示原始樣本數(shù)據(jù);xmax、xmin分別表示原始變量 xk的最大值和最小值;y表示變換后的xk。
2.樣本分割。與前時間序列的樣本分割相同。
3.BP神經(jīng)網(wǎng)絡隱含層和輸入輸出層節(jié)點數(shù)的確定。輸入輸出層已經(jīng)確定。因為生豬養(yǎng)殖連鏈條上有仔豬價格、母豬價格、豬肉價格、玉米價格、小麥麩價格、育肥豬配合料價格、豬糧比(無單位)7個要素或產(chǎn)品的價格,所以輸入層節(jié)點數(shù)就是7。而輸出層數(shù)是生豬價格,所以輸出層數(shù)就是1。隱含層節(jié)點數(shù)目對小波神經(jīng)網(wǎng)絡的性能和效率有很重要的影響。隱含層設置的節(jié)點若是太少,則自適應的學習程度有限,不足以完全儲存數(shù)據(jù)之間的波動機制。隱含層節(jié)點數(shù)過多,會導致網(wǎng)絡形成過度擬合的狀態(tài),泯滅了數(shù)據(jù)本身的關系,以及會增加樣本訓練時間,誤差不一定最佳而且還會降低網(wǎng)絡泛化能力[7]。隱含層節(jié)點數(shù)目的確定如今還沒有一個比較明確的方法,只能是訓練中調整、根據(jù)數(shù)據(jù)的特點、和依靠經(jīng)驗進行判斷。
4.傳輸函數(shù)為小波基函數(shù)。BP神經(jīng)網(wǎng)絡中的傳輸函數(shù)通常采用的S(Sigmoid)型號函數(shù),本文設計的小波神經(jīng)網(wǎng)絡最重要的區(qū)別是在該傳輸函數(shù)上進行了改進,使用y=cos(1.75x)e-x2/2小波基函數(shù)。其原因為:首先,小波中設定基函數(shù)為激活函數(shù)似的其所劃分的區(qū)域為一個非線性超平面組成的區(qū)域,是比S型函數(shù)更加光滑柔和,比起線性的激活函數(shù),他的分類比較精確、合理,網(wǎng)絡在迭代中具有很好的容錯性[7]。第二,由于激活函數(shù)具有連續(xù)可微的特征,它可以完全依照梯度法進行演化。最后,因為最后一層的激活函數(shù)也是小波基函數(shù),這就使得最后的輸出范圍在0~1之間(若是最后一層是線性函數(shù),比如Pureline函數(shù),那么輸出的范圍就是任意值,不具有較好的泛化能力)。
5.Matlab下小波神經(jīng)網(wǎng)絡的實現(xiàn)。本文采用強大的數(shù)據(jù)分析軟件Matlab中的神經(jīng)網(wǎng)絡工具箱以及筆者的修改設定對數(shù)據(jù)進行小波神經(jīng)網(wǎng)絡的訓練和仿真。訓練參數(shù)設定:輸入層到隱含層學習速率:0.01;隱含層到輸出層學習速率:0.001;迭代次數(shù):750。
圖7 小波神經(jīng)網(wǎng)絡進化結果示意圖
(三)小波神經(jīng)網(wǎng)絡和ARIMA時間序列預測對比
根據(jù)表1所提供的預測精度評價指標。本文可以對ARIMA(3,1,2)和小波神經(jīng)網(wǎng)絡的預測結果進行對比,2種模型預測的結果如圖8所示:
圖8 預測結果對比
根據(jù)表1所示,可以計算相應的評價指標值:
表5 模型預測精度對比
顯然可見,小波神經(jīng)網(wǎng)絡在預測精度在各個指標上都要優(yōu)于時間序列模型,并且根據(jù)預測的精度值來看,說明本文構建的小波神經(jīng)網(wǎng)絡預測精度是較高的。
本文通過對四川省生豬價格周度數(shù)據(jù)分別建立小波神經(jīng)網(wǎng)絡和ARIMA時間序列模型進行預測,并且進行了精度檢驗,通過對比可以分析出以下的結論。
(一)方法結論
1.小波神經(jīng)網(wǎng)絡本身的特征決定了在處理多輸入和輸出指標和復雜數(shù)據(jù)上具有優(yōu)勢。小波神經(jīng)網(wǎng)絡模型是神經(jīng)網(wǎng)絡拓撲結構和小波基函數(shù)相結合得到的產(chǎn)物。小波神經(jīng)網(wǎng)絡通過平移和尺度收縮可以對信號進行多維度的分析,可以成功的提取細節(jié)信息。并且神經(jīng)網(wǎng)絡的拓撲結構和誤差消除機制可以使其具備自主學習,容錯性高和自適應的特征[7],并且是一類函數(shù)逼近器。小波神經(jīng)網(wǎng)絡的基元以及整個構造是以小波理論為出發(fā)點的,所以可以避免傳統(tǒng)的神經(jīng)網(wǎng)絡的盲目性質,圓滑的輸出空間可以避免一般神經(jīng)網(wǎng)絡的過度擬合弊病。總之,小波神經(jīng)網(wǎng)絡具備精度更高,學習能力更強,在同樣任務中,小波神經(jīng)網(wǎng)絡的構造更加簡練和收斂更快。
2.時間序列只能做短期預測并且對數(shù)據(jù)有過高要求[8]。ARIMA時間序列模型要求的時間序列是平穩(wěn)的,相比于對量綱、數(shù)量級以及數(shù)據(jù)平穩(wěn)性沒有做要求的適應性很強的神經(jīng)網(wǎng)絡來說要繁瑣和復雜的多,并且經(jīng)過一次差分損失了數(shù)據(jù)原有的信息[9]。神經(jīng)網(wǎng)絡在內(nèi)在原理未知的基礎上,可以通過不斷的迭代逼近現(xiàn)實模型,然而時間序列的假設為序列未來的走勢會受到先前數(shù)據(jù)的影響,也就是未來數(shù)據(jù)的波動含有先前數(shù)據(jù)的信息,這一點在復雜波動的價格數(shù)據(jù)中并不穩(wěn)定存在。在對比中發(fā)現(xiàn),時間序列只能是做短期預測,跨過臨界點,就會形成線性遞減的趨勢,這在實際價格波動中是不可能存在的。
3.兩種模型對訓練樣本數(shù)量和指標要求不同,小波神經(jīng)網(wǎng)絡可以考慮更多變量,綜合更多信息,使得預測更加科學合理。時間序列對樣本數(shù)量要求較高,要求數(shù)據(jù)必須滿足平穩(wěn)性假設[10]。而且,對于本文所探討的對象——生豬價格數(shù)據(jù)來說,有394周數(shù)據(jù),數(shù)據(jù)量相對來說較大。而小波神經(jīng)網(wǎng)絡的訓練特點為:數(shù)據(jù)量越大,訓練的就越充分,就越可以逼近數(shù)據(jù)本身的內(nèi)在機理,與本文較大的數(shù)據(jù)量契合。并且ARIMA時間序列只能是以時間作為唯一自變量,反映預測數(shù)據(jù)在時間上的變化關系,而小波神經(jīng)網(wǎng)絡可以將與之相關的指標納入模型,可以逼近生豬產(chǎn)業(yè)鏈價格之間互相影響的機理,以至于更好的對生豬價格進行預測[11]。所以從經(jīng)濟原理上說,神經(jīng)網(wǎng)絡是站在全產(chǎn)業(yè)鏈的角度進行探究,符合價格的傳遞性,從精度和預測原理上都具有優(yōu)越性。
(二)政策建議
生豬價格的波動不可避免的會受到其他環(huán)節(jié)的影響,所以要想達到穩(wěn)定生豬市場,除了做到的從生豬養(yǎng)殖環(huán)節(jié)入手之外,還需要做到的是要維持生豬養(yǎng)殖上游環(huán)節(jié)的穩(wěn)定,亟需保證母豬存欄正常比率、穩(wěn)定母豬豬源,此是穩(wěn)定生豬產(chǎn)業(yè)鏈價格系統(tǒng)的一項重要舉措。另一方面,雖然玉米影響力度不大,對生豬價格的調整相對較慢,但是飼料價格如玉米主要受我國自身玉米供求和國內(nèi)外市場供求的綜合影響。因此,為了農(nóng)民的收益得到提升以及生豬產(chǎn)業(yè)要提高綜合效益可積極發(fā)揮飼料采購在成本控制中的作用,預測飼料原料價格的走勢來提高供應能力也同樣可以起到穩(wěn)定生豬價格的作用。
[1]陳振偉,郭拯危,2008.小波神經(jīng)網(wǎng)絡預測模型的仿真實現(xiàn)[J].計算機仿真(6):147-150.
[2]趙仁義,朱玉輝,2011.關于時間序列預測法的探討[J].科技信息(15):192-193.
[3]潘玉民,鄧永紅,張全柱,2013.小波神經(jīng)網(wǎng)絡模型的確定性預測及應用[J].計算機應用(4):1001-1005.
[4]羅鳳曼.時間序列預測模型及其算法研究[D].四川大學,2006:30-36.
[5]史峰,王小川,郁磊,等.MATLAB神經(jīng)網(wǎng)絡30個案例分析[M].北京:北京航空航天出版社,2010.
[6]黃麗.BP神經(jīng)網(wǎng)絡算法改進及應用研究[D].重慶師范大學,2008:20-25
[7]吳昌友.神經(jīng)網(wǎng)絡的研究及應用[D].東北農(nóng)業(yè)大學,2007:30-32.
[8]張滸.時間序列短期預測模型研究與應用[D].華中科技大學,2013:60-67.
[9]湯巖.時間序列分析的研究與應用[D].東北農(nóng)業(yè)大學,2007:108-112.
[10]王麗賢.時間序列預測技術研究[D].天津理工大學,2012:132-135.
[11]趙曉軍.時間序列的相關性及復雜性研究[D].北京交通大學,2015:201-205.
(責任編輯:D 校對:T)
F326.3
A
1004-2768(2016)09-0051-05
2016-05-30
國家社會科學基金項目“生豬散養(yǎng)農(nóng)戶退出及其對就業(yè)和收入的影響”(13XJY021);四川省農(nóng)村發(fā)展研究中心課題“四川省生豬價格綜合分析與預測”(CR1214)
吉陽,男,重慶人,四川農(nóng)業(yè)大學,研究方向:農(nóng)業(yè)經(jīng)濟;黃鑫,男,四川內(nèi)江人,四川農(nóng)業(yè)大學,研究方向:環(huán)境科學;陳蓉(1976-),女,四川南江人,四川農(nóng)業(yè)大學副教授,研究方向:農(nóng)業(yè)經(jīng)濟。陳蓉為通訊作者。