冷躋峰,徐曉鐘
(上海師范大學 信息與機電工程學院,上海 201400)
隨著人工智能技術(shù)的發(fā)展,燃氣公司的智能化成為全球燃氣行業(yè)關(guān)注的焦點.天然氣負荷預測的結(jié)果是燃氣集團對燃氣系統(tǒng)進行決策的依據(jù).燃氣負荷預測可用于燃氣系統(tǒng)的生產(chǎn)調(diào)度和安全評估.準確的預測結(jié)果有助于提高燃氣系統(tǒng)的效率,降低運營成本,促進整個燃氣行業(yè)健康地發(fā)展.國內(nèi)外許多研究學者都在燃氣負荷預測領(lǐng)域投入大量的精力[1].美國能源信息署(EIA)預測了美國長期的天然氣資源需求,發(fā)現(xiàn)美國的天然氣需求在2035年將達到7518 億立方米,年需求量將增加0.7%.因此天然氣作為清潔能源,其準確的預測對于燃氣系統(tǒng)的健康發(fā)展具有重要的意義.
在過去的二十年中,燃氣負荷的常用方法主要有時間序列模型、線性回歸模型、SVM 和神經(jīng)網(wǎng)絡(luò)模型.但是,與單模型方法相比,組合模型可以更好地發(fā)揮各個模型的優(yōu)勢,規(guī)避缺點,在解決復雜的非線性問題中展現(xiàn)了更高的可靠性和準確性[2].
燃氣負荷預測的難點在于具有燃氣變化趨勢具有較大的復雜性和特征因子具有較大的冗余性.
集合經(jīng)驗模態(tài)分解法 (Ensemble Empirical Mode Decomposition,EEMD) 是針對傳統(tǒng) EMD 在處理非平穩(wěn)的時間序列信號時會出現(xiàn)模態(tài)混疊的情況而提出的改進算法,將離散無序信號分解成不同頻率的相互獨立平穩(wěn)的特征模態(tài)函數(shù)[3].剝離出來的有限本征模函數(shù)IMF 分量代表了原始信號不同時間尺度的特征,這非常適合復雜的,非平穩(wěn)、非線性的時間序列數(shù)據(jù)[4].鄧帶雨等[5]在預測電力負荷的時候通過集合經(jīng)驗模態(tài)分解將電力負荷數(shù)據(jù)分解為頻率由高到低的不同本征模態(tài)函數(shù),可以預測隨機性較強的局部特征.王曉霞等[6]通過EEMD 算法將非平穩(wěn)非線性的負荷序列分解后進行預測,預測精度有了明顯的提高.總之,IMF 函數(shù)具有與采樣頻率相關(guān)的特點可以擺脫傅里葉變換的局限性,很好地捕捉負荷數(shù)據(jù)內(nèi)部特性,降低負荷數(shù)據(jù)的復雜性.
天然氣負荷受多種因素影響,當全面收集這些數(shù)據(jù)難免包含了大量的冗余信息,這會提高過擬合的風險,降低預測準確性.在能源預測領(lǐng)域中,主成分分析(Principal Component Analysis,PCA)可以刪除數(shù)據(jù)冗余特征,可以大大地提升預測精度[7].Bianchi 等[8]使用PCA 進行數(shù)據(jù)降維,再將數(shù)據(jù)放入回聲狀態(tài)網(wǎng)絡(luò)進行羅馬電力短期負荷的預測.在與單一的ESN 的比較中,PCA-ESN 的誤差減少了7.34%.但是在傳統(tǒng)的PCA 中只考慮特征與特征之間的相關(guān)性而摒棄了特征與預測標簽的相關(guān)性,即PCA 算法在選取主成分個數(shù)的時候,僅僅考慮了原始數(shù)據(jù)的方差貢獻率,沒有考慮到主成分與預測標簽的相關(guān)性,這可能在降維過程中丟失與預測標簽更為相關(guān)的特征,導致次要信息的丟失.為了解決這一問題,文獻[9]在主成分分析的基礎(chǔ)上加入相關(guān)性分析,以皮爾遜相關(guān)系數(shù)為指標,選取了與燃氣負荷值皮爾遜相關(guān)系數(shù)更高的主成分作為模型的輸入,既去除了特征與特征之間的相關(guān)性,又篩選出與預測標簽更為相關(guān)的特征.但是,皮爾遜相關(guān)系數(shù)僅僅只能計算特征與預測標簽的線性關(guān)系,然而燃氣負荷預測據(jù)有非線性的特點[10],所以皮爾遜相關(guān)系數(shù)不能很好地作為衡量特征與負荷標簽的關(guān)系.互信息可以測量隨機變量之間的任意函數(shù)關(guān)系.針對上述問題,本文在主成分分析中加入了互信息(Mutual Information,MI)分析,使用互信息代替皮爾遜相關(guān)系數(shù)作為評價主成分和預測標簽的指標,可以更好的捕捉到主成分和預測標簽的任意函數(shù)關(guān)系.
在燃氣負荷領(lǐng)域中,神經(jīng)網(wǎng)絡(luò)模型目前的應用最為廣泛,其中典型的BP 神經(jīng)網(wǎng)絡(luò)、RBF 神經(jīng)網(wǎng)絡(luò)都取得了不錯的效果.但是,這些神經(jīng)網(wǎng)絡(luò)存在一個缺點,它們不能保存上個時刻的信息,由于燃氣負荷受歷史負荷的影響較大,所以這種類型的網(wǎng)絡(luò)在處理時間序列預測問題還使存在著一定的局限性.對于上述淺層結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò)對于復雜的燃氣負荷預測出現(xiàn)的問題,文獻[11]分析了淺層神經(jīng)網(wǎng)絡(luò)在時間序列分析預測的不足.隨著深度學習的發(fā)展,深層次的神經(jīng)網(wǎng)絡(luò)在復雜的問題面前具有更好的泛化能力.LSTM 算法是 1997年被提出,用于語言處理方面的研究,LSTM 存在一個記憶單元可以存儲之前時刻的計算信息,使LSTM 可以在多維度時間序列的預測問題中得到了較好的實驗結(jié)果[12],所以本文使用LSTM 神經(jīng)網(wǎng)絡(luò)作為燃氣短期負荷預測模型,證明LSTM 在燃氣負荷預測的有效性.
綜上所述,本文提出了一種新型的組合模型,主要通過EEMD、MIPCA 和LSTM 進行組合進行燃氣負荷的日預測.該模型采用EEMD 將復雜的燃氣負荷序列分解為簡單的IMF 分量,并通過MIPCA 進行特征的降維,避免了特征之間冗余性的問題,使用LSTM 模型產(chǎn)生最后的預測結(jié)果.本文首次通過將 EEMD 算法、MIPCA 和 LSTM 神經(jīng)網(wǎng)絡(luò)組合進行對燃氣負荷數(shù)據(jù)的預測,使得 LSTM 模型更能把握歷史負荷數(shù)據(jù)的內(nèi)在規(guī)律,提高預測的精度.
集合經(jīng)驗模態(tài)分解法 (Ensemble Empirical Mode Decomposition,EEMD)是一種自適應信號時頻分解方法,它針對傳統(tǒng) EMD 在處理間歇性的時間序列信號時容易出現(xiàn)模式混淆情況而提出的改進算法[13].由于自身對數(shù)字信號處理的強大優(yōu)勢,在能源預測領(lǐng)域的具有高可靠性.EEMD 在EMD 的基礎(chǔ)上加入了白噪聲輔助信號的處理,將真實時間序列和白噪聲進行混合,分解后的 IMF 分量應滿足近似為周期函數(shù)并包含了原信號的不同時間尺度的局部特征信號.EEMD 的處理流程如下:
Step 1.在原始時間序列x(t)多次添加隨機的白噪聲序列,得到復合的時間序列數(shù)據(jù)xi(t).
oi(t)為隨機添加的白噪聲序列,n為EEMD 分解的階數(shù).
Step 2.使用EMD 算法將加入白噪聲的信號分解為各IMF 分量.
其中,n為EMD 分解的階數(shù),ci(t)為第i階IMF 分量,rn(t)為剩余分量.
Step 3.重復Step 1 和Step 2,每次加入不同的隨機白噪聲序列,最終得到多組IMF 分量集合.
Step 4.對IMF 分量集合進行平均得到最終EEMD信號分解結(jié)果.
最終的分解結(jié)果為:
在主成分分析過程中加入了互信息分析,充分考慮特征與預測標簽的關(guān)系.互信息主成分分析法通過結(jié)合互信息分析和協(xié)方差方法,可以自動的在原始數(shù)據(jù)中提取與燃氣負荷更為相關(guān)的特征,是一種有效的數(shù)據(jù)預處理技術(shù).主要分為4 個步驟:
Step 1.數(shù)據(jù)標準化,在大型數(shù)據(jù)分析項目中,數(shù)據(jù)的量綱和來源不同,為了使數(shù)據(jù)有更好的可比性,需要對數(shù)據(jù)進行標準化處理.
其中,i=1,2,···,n為原始數(shù)據(jù)的特征個數(shù),為標準化后的數(shù)據(jù),為特征Xi的均值,為特征xi的標準差.
Step 2.計算特征之間的協(xié)方差矩陣,通過矩陣的特征分解,計算協(xié)方差矩陣的特征值向量和特征向量L,得到主成分矩陣Mdim=XL.
Step 3.使用式(8)計算出每個主成分與燃氣負荷的互信息MIi和互信息貢獻率Pi,使用互信息貢獻率作為指標選擇降維的維度.本文采用閾值法來確定主成分個數(shù),根據(jù)互信息排序,當互信息累計貢獻率大.
于閾值的時候,n就作為主成分的個數(shù),本文選擇75%作為閾值.互信息PCA 整體流程如圖1所示.
圖1 MICPA 流程圖
長短期記憶網(wǎng)絡(luò)(LSTM)因為含有特殊的記憶單元,可以更好地保存過去時刻中數(shù)據(jù)的信息.LSTM 是RNN 的一種完善,解決RNN 中容易出現(xiàn)梯度消失的問題.LSTM 與其他神經(jīng)網(wǎng)絡(luò)的最主要的區(qū)別是隱藏層的神經(jīng)元并不是相互獨立的,隱藏層神經(jīng)元不僅要接收這個時刻的輸入還要接受之前時刻的時序輸入.這個特點可以很好處理與時間序列預測等相關(guān)問題.
LSTM 單元結(jié)構(gòu)如圖2所示.LSTM 單元內(nèi)存在cell 存儲當前LSTM 單元的內(nèi)部狀態(tài).LSTM 單元存在3 個控制門,分別是遺忘門、輸出門和輸入門.遺忘門(forget gate) 用來控制上一單元狀態(tài)的被遺忘程度.
式中,ft越大,表示記憶單元中保存的過去的信息保留越多,反之亦然.
圖2 LSTM 單元結(jié)構(gòu)
輸入門對當前輸入的信息保存在記憶單元的新信息量,并于過去時間節(jié)點的信息進行結(jié)合.
輸出門產(chǎn)生下一時刻傳遞到神經(jīng)元的信號量.
使用EEMD-MIPCA-LSTM 模型用于短期燃氣負荷預測.該模型采用EEMD 將復雜的燃氣負荷序列分解為簡單的IMF 分量,并通過MIPCA 進行特征的降維,避免了特征之間冗余性的問題,使用LSTM 模型產(chǎn)生最后的預測結(jié)果.具體流程入圖3所示.
圖3 燃氣預測流程
為了驗證本文方法的可行性,使用了上海吳淞地區(qū)2005年到2014年共3114 天的日燃氣負荷數(shù)據(jù),燃氣負荷值如圖4所示.數(shù)據(jù)的特征包括天氣類型(平均溫度、溫差、加熱系數(shù)和天氣狀況)和日期類型(星期幾、季度、月份).數(shù)據(jù)集中2749 條數(shù)據(jù)作為訓練集進行模型的訓練、365 條數(shù)據(jù)作為測試集.
圖4 上海吳淞地區(qū)燃氣負荷值
為了在降維過程中考慮特征對燃氣負荷的影響,采用互信息分析對上海燃氣負荷數(shù)據(jù)中預先選擇的7 個特征進行降維和分析,提取影響上海燃氣負荷的關(guān)鍵因子.根據(jù)前文的步驟采用Python 3.7 得到了各主成分的互信息的貢獻率,如圖5所示.前3 個主成分的互信息累計貢獻率達到了77.35%,大于選取主成分個數(shù)的累計互信息貢獻率的閾值,故確定主成分個數(shù)為3 個,使數(shù)據(jù)的維度減少了4 維.
因為燃氣負荷數(shù)據(jù)之間的相關(guān)性極強,采用互信息極大旋轉(zhuǎn),計算出各主成分在各個特征上的成分負載,如表1所示.對于燃氣負荷而言,天氣因素和時間都會對燃氣負荷產(chǎn)生影響.溫差對第 2 主成分的相關(guān)系數(shù)絕對值超過了0.85,相對其他因子貢獻較大;月份對第1 主因子貢獻最大;加熱系數(shù)對第 3 主因子貢獻最大.在溫度因素上,城市短期負荷主要受到溫差和加熱系數(shù)的影響,當溫差或加熱系數(shù)變大的時候,燃氣負荷會呈現(xiàn)出明顯的上升趨勢.在時間因素上,月份在冬季的時候需要更多的燃氣來滿足人們的日常需求.
對比一下MIPCA 和PCA 的降維數(shù)據(jù)如圖6所示.兩種降維方法后每個主成分與燃氣負荷的互信息,兩種降維方式都去除掉特征與特征之間的相關(guān)性,但是在互信息PCA 中保留住互信息為0.373 的主成分,而在傳統(tǒng)的PCA 中不存在此主成分.所以相比于傳統(tǒng)PCA 而言,使用互信息作為選取主成分的標準不僅可以在降維地過程中考慮特征與預測值的關(guān)系,還可以更好地提取與燃氣負荷值更為相關(guān)的特征.
圖6 兩種降維后數(shù)據(jù)與燃氣負荷的互信息
針對燃氣時間序列數(shù)據(jù)非平穩(wěn)、非線性的特點,使用EEMD 對數(shù)據(jù)信號進行平穩(wěn)化處理,將包含大量高頻分量、噪聲的燃氣數(shù)據(jù)分解為IMF 分量,減少模型擬合的難度.
將上海2005年的燃氣數(shù)據(jù)座位實例進行EEMD分解,得到10 組頻率由高到低的本征模態(tài)函數(shù)及余波,如圖7~圖16所示.在EEMD 分解后,各個IMF 分量頻率比較穩(wěn)定,并沒有出現(xiàn)明顯的模態(tài)混疊現(xiàn)象.IMF1到IMF4 為燃氣數(shù)據(jù)的高頻分量,主要收到隨機人為因素影響,預測較為困難.IMF5 到IMF8 為中頻分量,具有一定的周期性.剩余為中低頻分量,表示了燃氣的總體趨勢和變化規(guī)律.EEMD 模型通過將原始燃氣序列分解為含有負荷不同波動局部特征的若干IMF 分量,作為模型的輸入再進行預測.
圖7 EEMD 分解結(jié)果-IMF1
圖8 EEMD 分解結(jié)果-IMF2
圖9 EEMD 分解結(jié)果-IMF3
圖10 EEMD 分解結(jié)果-IMF4
圖11 EEMD 分解結(jié)果-IMF5
圖13 EEMD 分解結(jié)果-IMF7
圖14 EEMD 分解結(jié)果-IMF8
圖15 EEMD 分解結(jié)果-IMF9
圖16 EEMD 分解結(jié)果-REF
建立LSTM 模型采用rmsprop 優(yōu)化器和MAE損失函數(shù)進行訓練.LSTM 有兩層,每層的節(jié)點數(shù)分別為5 和3,使用前7 天的標準化后的數(shù)據(jù)預測下一天的燃氣負荷值,模型訓練的迭代過程入圖17所示.
圖17 模型訓練迭代過程
為了驗證 EEMD-MIPCA-LSTM 算法的可靠性,本文還采用LSTM 算法、PCA-LSTM 算法、PCCALSTM[9]算法和MIPCA-LSTM 算法來預測上海吳淞地區(qū)日燃氣負荷量.根據(jù)圖18所示,本文所提方法在燃氣急劇變化的時期,預測精度較高,在時間序列 1 到150 之間的預測數(shù)據(jù)較平穩(wěn)的燃氣真實值動蕩較大,導致預測曲線與真實數(shù)據(jù)有一定的偏差,和LSTM、PCA-LSTM、PCCA-LSTM 以及MIPCA-LSTM 相比較,EEMD-MIPCA-LSTM 預測精度有明顯的提升,如圖19所示.
圖18 EEMD-MIPCA-LSTM 預測結(jié)果
圖19 模型對照結(jié)果
使用平均絕對誤差、均方根誤差和平均絕對百分比誤差作為衡量指標,如式(14)~式(16),計算結(jié)果如表2所示.
表2 仿真誤差
平均絕對誤差(MAE):
均方根誤差(RMSE):
平均絕對百分比誤差(MAPE):
根據(jù)表2的數(shù)據(jù),可以得到以下結(jié)論:
(1)準確的燃氣負荷預測是困難的,主要原因是它受到多種因素影響,主要包括:天氣因素和時間因素.這兩大因素難以量化.在通過LSTM 和PCA-LSTM 的對比中,PCA-LSTM 減少數(shù)據(jù)的緯度并減少特征之間相關(guān)性,提升了燃氣負荷預測的精度.
(2)在PCCA 和PCA 的比較中,不僅去除特征之間的相關(guān)性,還提取出與燃氣負荷皮爾遜相關(guān)系數(shù)高的主成分,提高了燃氣的預測精度[9].
(3)燃氣預測具有非線性的特征,使用皮爾遜相關(guān)系數(shù)并不能發(fā)掘出特征與燃氣負荷之間的關(guān)系,通過加入互信息分析,更好地挖掘出燃氣負荷與特征的關(guān)系,在MIPCA-LSTM 和PCCA-LSTM 對比中,MIPCALSTM 的預測精度更高.
(4)燃氣負荷數(shù)據(jù)易受多種因素的影響而呈現(xiàn)時空分布不均勻,難以進行較精準的短期負荷預測.EEMD預測模型通過將原始燃氣序列分解為含有負荷不同波動局部特征的若干IMF 分量,作為模型的輸入再進行預測.結(jié)果表明此模型不僅能提高燃氣負荷的精準度,減少預測模型復雜度,而再以組合的形式分開輸入時可以最大改善預測效果,預測誤差為6.36%,優(yōu)于其他模型.
本文圍繞上海燃氣負荷預測提出了一種針對高頻分量多,周期性弱的能源預測方法,使用EEMD 分解將高頻燃氣數(shù)據(jù)分解為頻率從高到低的若干IMF分量.
在外部因素的處理中,結(jié)合燃氣數(shù)據(jù)非線性的特點,在PCA 中加入互信息分析,在去除特征之間相關(guān)性的同時,找到與負荷數(shù)據(jù)更具有任意函數(shù)關(guān)系的特征.最后,使用LSTM 對分解后的各IMF 分量進行預測,將所有結(jié)果依次疊加,實現(xiàn)高可靠性的準確預測.實驗結(jié)果表明,本文提出的方法相對于單一的預測模型以及PCA-LSTM 等組合模型更能預測出燃氣負荷的變化趨勢,對負荷的局部細節(jié)也具有較高的預測精度.