王 寧 ,李建華 ,王軍軍 ,李雙雪 ,唐 寧
(1.蘭州理工大學機電工程學院,甘肅 蘭州 730050;2.蘭州蘭石集團有限公司鑄鍛分公司,甘肅 蘭州 730050)
備件在保障設備正常使用和維修任務中占據(jù)重要地位,備件的消耗受到使用環(huán)境、設備維護、備件使用壽命等多種因素影響,預測難度較大。基于時間序列進行的預測容易理解與應用,預測精度較高[1]。精確的備件需求預測能夠優(yōu)化庫存結構,降低庫存管理難度,減少資金占用,因此科學的預測技術是非常重要的。
現(xiàn)有的時間序列預測技術包括統(tǒng)計方法和機器學習兩大類[2],統(tǒng)計方法以差分自回歸移動平均(ARIMA)模型[3-5]為代表,而機器學習方法以神經(jīng)網(wǎng)絡、支持向量機等為代表。韓梅麗[6]等以需求量波動較大的備件為研究對象,采用ARIMA時序模型對備件時序消耗做出了預測。丁紅衛(wèi)[7]等通過所需設備的歷史數(shù)據(jù)對構建BP神經(jīng)網(wǎng)絡模型進行訓練,將訓練好的模型用于電網(wǎng)物資的需求預測。有學者將LSTM與卷積神經(jīng)網(wǎng)絡融合,并運用于預測、語音識別等領域[8,9],李梅[10]等提出基于注意力機制的CNN-LSTM模型,運用于熱電聯(lián)產(chǎn)供熱的預測,對比支持向量機、LSTM單一預測模型,該組合模型取得了更好效果。
但是ARIMA僅適用于線性時間序列的預測,而神經(jīng)網(wǎng)絡適用于非線性系統(tǒng)的預測,基于ARIMA和神經(jīng)網(wǎng)絡在時間序列預測方面各自的優(yōu)劣勢,本研究提出一種基于ARIMA、BP神經(jīng)網(wǎng)絡和卷積長短期記憶神經(jīng)網(wǎng)絡的組合模型 (ARIMA-BP-CNN),充分提取時間序列數(shù)據(jù)的線性和非線性特征,應用該模型對備件需求量做預測,并通過電解鋁企業(yè)天車某備件的消耗情況進行驗證。
差分自回歸移動平均模型,記作ARIMA,是一種時間序列預測分析方法。ARIMA(p,d,q)中,AR為自回歸,MA為移動平均,p是自回歸項數(shù),q是移動平均項數(shù),d是保障差分后得到平穩(wěn)序列數(shù)據(jù)的差分次數(shù)。時間序列模型是基于歷史數(shù)據(jù)建立起來的模型,以p、d、q為參數(shù)的ARIMA模型可表示為:

其中:Xt為時間序列的樣本值,φi(i=1,2,…,p)和θi(i=1,2,…,q)為模型參數(shù),εt為獨立正態(tài)分布的白噪聲。
ARIMA模型首先要對時間序列做一次或者多次差分,轉換成平穩(wěn)時間序列,再進行建模分析。ARIMA模型對時間序列數(shù)據(jù)的線性相關性預測精度高,但對分線性關系處理效果欠缺。
BP神經(jīng)網(wǎng)絡是20世紀80年代提出的誤差反向傳播算法,BP神經(jīng)網(wǎng)絡網(wǎng)絡由輸入層、隱藏層和輸出層組成,隱藏層可以是一層或多層,本文訓練的是隱藏層為一層BP神經(jīng)網(wǎng)絡,如圖1所示。BP算法分為前向傳播和反向傳播兩個部分,前向傳播是輸入信息從輸入層傳入,經(jīng)中間的隱藏層最終傳至輸出層,若獲得預期的輸出結果,則學習過程終止;否則,它將轉向反向傳播。反向傳播是與原始連接路徑反方向,通過誤差逐層修改網(wǎng)絡權值及閾值,再將更新的權值和閾值正向傳播,通過正向、反向傳播的循環(huán)進行得到最優(yōu)權值和閾值。
隱藏層與輸入層關系:

其中,θj為隱藏層第j個神經(jīng)元的閾值,wij為輸入層和隱藏層的連接權值,netj是第j個神經(jīng)元的激活值,yj是隱藏層的輸出值,f為激活函數(shù),通常是Sigmoid函數(shù)。輸出層和隱藏層與上述關系類似,激活函數(shù)通常為線性函數(shù)。

圖1 三層BP神經(jīng)網(wǎng)絡結構
1.3.1 卷積神經(jīng)網(wǎng)絡
卷積神經(jīng)網(wǎng)絡 (Convolutional Neural Networks,CNN)是一種具有深度結構的前饋神經(jīng)網(wǎng)絡,由輸入層、卷積層、池化層、全連接層以及輸出層組成。卷積神經(jīng)網(wǎng)絡可以有多個卷積層與池化層,二者交替使用從原始數(shù)據(jù)中獲得有效表征,提取數(shù)據(jù)的特征,然后經(jīng)過全連接層解除多維結構,最后到達輸出層,完成分類、預測等任務。
1.3.2 長短期記憶網(wǎng)絡
LSTM是一類特殊的遞歸神經(jīng)網(wǎng)絡,它克服了傳統(tǒng)遞歸神經(jīng)網(wǎng)絡存在的梯度爆炸和梯度消失的問題,適合處理和預測時間序列事件。如圖2所示,每個LSTM由輸入門、忘記門、輸出門和細胞狀態(tài)組成,更新方式如下:

圖2 LSTM網(wǎng)絡基本單元

其中,ft、it、Ct、ot分別表示忘記門、輸入門、細胞狀態(tài)和輸出門;bf、bi、bc、bo分別表示不同門對應的偏置;Wf、Wi、Wc、Wo分別表示不同門對應權值;xt表示當前節(jié)點的輸入;ht表示當前節(jié)點的輸出;σ表示激勵函數(shù)Sigmoid;G^t表示計算過程中的候選值向量。
1.3.3 CNN-LSTM神經(jīng)網(wǎng)絡
CNN-LSTM神經(jīng)網(wǎng)絡算法由三部分組成。第一層,將原始數(shù)據(jù)熱向量編碼,使其映射為k維空間,得到新特征。第二層,將新特征輸入卷積神經(jīng)網(wǎng)絡,設置若干對卷積層和池化層,提取數(shù)據(jù)特征。第三層,將CNN的輸出數(shù)據(jù)作為LSTM神經(jīng)網(wǎng)絡的輸入,做時序的預測,如圖3所示。

圖3 CNN-LSTM模型
傳統(tǒng)的預測方法以及機器學習算法均有其局限性,單一的方法不能得到理想的預測結果,文章采用組合預測方法對備件需求進行預測。Armstrong分析表明,組合預測方法對短期問題的預測更有效,預測結果的精確度更高[11]。組合預測理論中,若存在n種解決實際問題的預測方法,那么可以能通過給這n種方法分別賦予適當?shù)臋嘀兀賹種方法的預測結果分別乘以對應的權重,各項累加,進而得到組合模型的預測結果。
假設某項預測問題在觀測時段的實際值為yt(t=1,2,…,m),對于該問題的n種預測模型中,各自的預測值為 git(i=1,2,…,n; t=1,2,…,m),各預測模型的權重系數(shù)為wi(i=1,2,…,n)。于是組合模型的預測值t表示為:

進而得到組合預測的誤差:

文章結合前面介紹的ARIMA、BP神經(jīng)網(wǎng)絡和卷積長短期記憶神經(jīng)網(wǎng)絡,將三種方法結合,組成新組合預測方法(ARIMA-BP-CNN)。于是公式(9)的形式為:

應用該組合預測方法進行預測,得到較高精度的預測結果,關鍵是確立各單一模型的權重系數(shù),本文采用遺傳算法優(yōu)化ARIMA-BP-CNN模型的權重系數(shù)。圖4是本文提出的ARIMA-BP-CNN組合模型流程圖,該組合預測方法步驟如下:
步驟 1:分別使用 ARIMA、BP神經(jīng)網(wǎng)絡和CNN-LSTM對原始時間序列數(shù)據(jù)進行預測,得到單一模型的預測結果。
步驟2:為各單一模型分配初始權重,分別用步驟1各方法的預測結果乘以對應的權重,各項累加,得到ARIMA-BP-CNN模型的預測結果。
步驟3:采用遺傳算法優(yōu)化權重系數(shù)。初始權重未必能得到預期的結果,使用遺傳算法對組合模型的權重加以優(yōu)化。
步驟4:精度的預測。若組合模型得到期望的預測精度,進行步驟5;否則,返回步驟2繼續(xù)采用遺傳算法優(yōu)化權重系數(shù),直至得到期望的預測精度。
步驟5:輸出組合模型的預測結果,如圖4所示。

圖4 基于ARIMA、BP和CNN的組合預測流程圖
現(xiàn)有2010年至2018年間某電解鋁企業(yè)天車某備件消耗數(shù)據(jù),以季度為時間單位統(tǒng)計了36個歷史消耗數(shù)據(jù),詳細見表1.在這36個歷史數(shù)據(jù)中,選擇前32個作為訓練數(shù)據(jù),后面4個作為檢驗數(shù)據(jù)。

表1 某備件消耗數(shù)據(jù)
將2010年至2017年的32個消耗數(shù)據(jù)作為輸入數(shù)據(jù),得到2018年四個季度該備件消耗的預測結果。
(1)檢驗序列的平穩(wěn)性。

圖5 備件消耗不平穩(wěn)序列圖
圖5時序圖顯示該序列具有曲折上升的趨勢,可以判斷為非平穩(wěn)序列;單位根檢驗統(tǒng)計量對應的p值為0.11487顯著大于0.05,最終判斷該序列為非平穩(wěn)序列。
(2)對原始序列一階差分,并進行平穩(wěn)性和白噪聲檢驗。
圖6顯示,一階差分后的序列時序圖在均值附近比較平穩(wěn)的波動;圖7顯示,自相關圖有很強的短期相關性;單位根檢驗p值為0.04小于0.05;白噪聲檢驗p值為0.02小于0.05,所以一階差分后的序列為平穩(wěn)非白噪聲序列。

圖6 備件消耗平穩(wěn)序列圖

圖7 備件消耗ACF圖
(3)對差分后的序列擬合ARIMA模型。
計算ARMA(p,q)。計算p和q均小于等于3的所有組合的BIC信息量,取其中BIC信息量最小的模型階數(shù)。計算結果顯示p值為0、q值為1時最小BIC 值為 166.2731,因此 p、q 定階 0、1。
(4)ARIMA模型預測。
應用ARIMA(0,1,1)對該備件2018年四個季度(Q1-Q4)需求量做預測,預測結果見表2。

表2 備件實際消耗量與各模型的預測值
將該備件的歷史消耗數(shù)據(jù),依次從第1個數(shù)據(jù)開始,緊鄰的8個作為神經(jīng)網(wǎng)絡的輸入,第9個數(shù)據(jù)作為待預測的消耗值,即神經(jīng)網(wǎng)絡的輸出,將這9個相鄰的歷史數(shù)據(jù)作為1個樣本。將前32個數(shù)據(jù)作為訓練數(shù)據(jù)集,按此方法得到24個樣本,用來訓練BP神經(jīng)網(wǎng)絡。輸入層有8個單元,輸出層有1個單元,取隱藏層8個單元,relu作為激活函數(shù),訓練該BP神經(jīng)網(wǎng)絡,學習5000次后,用這個訓練好的BP神經(jīng)網(wǎng)絡模型對2018年四個季度該備件的消耗量做預測,預測結果見表2。
將該備件的歷史消耗數(shù)據(jù),依次從第1個數(shù)據(jù)開始,緊鄰的4個作為神經(jīng)網(wǎng)絡的輸入,第5個數(shù)據(jù)作為待預測的消耗值,即神經(jīng)網(wǎng)絡的輸出,將這5個相鄰的歷史數(shù)據(jù)作為1個樣本。將前32個數(shù)據(jù)作為訓練數(shù)據(jù)集,按此方法得到28個樣本,以此訓練深度學習神經(jīng)網(wǎng)絡。輸入層為4個單元,依次通過卷積、池化、LSTM層、Flatten等過程,輸出層為1個單元,relu作為激活函數(shù),mae作為損失函數(shù),對神經(jīng)網(wǎng)絡進行訓練,學習1000次后,用這個訓練好的CNN-LSTM模型對該備件2018年四個季度的消耗量做預測,預測結果見表2。
(1)確定權系數(shù)
以誤差平方和最小作為模型組合的最優(yōu)準則,建立如下廣義誤差最小的組合預測權重確定模型:

運用遺傳算法確定該非線性問題的權重,將目標函數(shù)作為遺傳算法的適應度計算值,使用MATLAB中的GA工具箱調用該函數(shù)進行計算,通過反復實驗,得到三種方法對應的權值:

(2)組合模型做預測
通過公式(14)計算得到組合模型預測值,結果見表2。

另外,為進一步比較三種方法組合模型的預測精確度,同樣計算了單一方法的兩兩組合預測結果,以誤差平方和最小作為模型組合的最優(yōu)準則,使用相同方法計算得到ARIMA-BP的組合權重為:w1=0.356,w2=0.644;ARIMA-CNN 的組合權重為:w1=0.236,w2=0.764;BP-CNN 的組合權重為:w1=0.26,w2=0.74。兩兩組合方法的預測結果見表2。
文章提出的ARIMA-BP-CNN方法是綜合三種不同方法的新方法,結合三種方法的過程中,對每一種方法進行加權,其中CNN的權重系數(shù)最高,對組合方法的貢獻最大。
為了直觀顯示單一方法和組合方法的預測精度,將備件消耗的實際值減去各方法的預測值,得到圖8的誤差曲線圖。從圖中可以看出ARIMABP-CNN方法的整體誤差最接近于零,其他三種方法只有第二季度CNN有較小的誤差,其他季度里三種單一的方法都具有較大的誤差。

圖8 四種預測方法的誤差曲線
為進一步說明預測結果的有效性以及改進后組合模型的提升效果,從均方根誤差(RMSE),平均絕對誤差(MAE),平均絕對百分比誤差(MAPE)這3個方面進行對比分析,具體見表3。

表3 預測效果評價表
從表3可以看出,ARIMA-BP-CNN方法的評價指標均低于三種單一方法的評價指標,其中,相比于ARIMA方法,ARIMA-BP-CNN將RMSE降低了65.9%,將MAE降低了69.6%,將MAPE降低了69.5%,預測精度取得了較大提升。
兩兩組合模型中,ARIMA-BP方法的預測精度相對偏低,ARIMA-CNN和BP-CNN的預測精度相對較高,但仍低于組合預測模型ARIMA-BP-CNN的預測精度。
綜上所述,ARIMA-BP-CNN組合預測模型的預測精度最高,優(yōu)于三種單一預測方法。
針對電解鋁企業(yè)的備件需求預測問題,構建了基于ARIMA、BP神經(jīng)網(wǎng)絡和深度學習CNN-LSTM神經(jīng)網(wǎng)絡三種方法的組合預測模型,解決了備件消耗的預測問題,充分發(fā)揮了ARIMA解決線性問題的能力和神經(jīng)網(wǎng)絡解決非線性問題的能力,擺脫了單一預測方法的弊端,通過電解鋁企業(yè)天車某備件為實例,驗證了該組合模型在備件需求預測中的可行性與精確性。