房 旭
(浙江理工大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,浙江 杭州 310018)
能源系統(tǒng)中,外部設(shè)備如傳感器和采集器所處的環(huán)境錯(cuò)綜復(fù)雜,電磁、濕度、溫度等外界因素的干擾,系統(tǒng)運(yùn)行中通訊網(wǎng)絡(luò)的波動(dòng)以及一些人為的錯(cuò)誤操作,都可能導(dǎo)致監(jiān)測(cè)數(shù)據(jù)出現(xiàn)不可預(yù)測(cè)的缺失現(xiàn)象[1-3]。自然界的數(shù)據(jù)分布通常不均衡,能源系統(tǒng)中采集器和傳感器的數(shù)據(jù)經(jīng)過(guò)消除趨勢(shì)及差分后所形成的數(shù)據(jù)往往也不均衡,對(duì)于跨度很大的兩組時(shí)序數(shù)據(jù)而言,其收集成本高,可能需要一些極端的數(shù)據(jù)進(jìn)行學(xué)習(xí)。本文利用因果分析優(yōu)化LSTM 的優(yōu)化器,嘗試解決該問(wèn)題,以達(dá)到精度更高的優(yōu)化結(jié)果。
因果分析理論的研究現(xiàn)狀主要集中在Pearl 等[4]出版的《Causal Inference in Statistics:A Primer》,該文主要解決了傳統(tǒng)統(tǒng)計(jì)語(yǔ)言中如何定義數(shù)據(jù)中的因果問(wèn)題。Pearl等[4]提出認(rèn)知因果包含3 個(gè)層級(jí),事物之間的關(guān)聯(lián)為第1層級(jí),在此之上還需要對(duì)過(guò)程進(jìn)行有目的的干預(yù),第3 層級(jí)為反事實(shí)推理。傳統(tǒng)的機(jī)器學(xué)習(xí)最擅長(zhǎng)的是根據(jù)數(shù)據(jù)中呈現(xiàn)出來(lái)的相關(guān)性學(xué)習(xí)函數(shù)去擬合條件概率,這種機(jī)器學(xué)習(xí)模型只學(xué)習(xí)到了認(rèn)知因果的第1個(gè)層級(jí)。
文獻(xiàn)[1]提出因果圖和結(jié)構(gòu)因果模型的概念,因果圖是在貝葉斯網(wǎng)絡(luò)的基礎(chǔ)上定義,通過(guò)有向無(wú)環(huán)圖(DAG)的形式并遵從馬爾可夫性和忠實(shí)性假設(shè),抓住圖與數(shù)據(jù)交互的關(guān)鍵,實(shí)現(xiàn)了圖的連接性和變量獨(dú)立性之間的聯(lián)結(jié)。相比因果圖,結(jié)構(gòu)因果模型包含了更多信息,其不僅蘊(yùn)含了一個(gè)觀測(cè)分布,還蘊(yùn)含了干預(yù)分布和反事實(shí)分布,可以在因果圖干預(yù)的基礎(chǔ)上,進(jìn)一步支持反事實(shí)推理。后門(mén)準(zhǔn)則和前門(mén)準(zhǔn)則可以幫助識(shí)別并消除因果圖中的混淆變量,將do 算子表示的干預(yù)分布轉(zhuǎn)化成條件分布,在此基礎(chǔ)上利用統(tǒng)計(jì)方法進(jìn)行因果推斷,從而去除混淆因子[5-7]。本文將結(jié)合LSTM 模型中的優(yōu)化器[8-15]進(jìn)行因果分析及優(yōu)化,通過(guò)嘗試消除因果分析生成的混淆因子,對(duì)優(yōu)化器進(jìn)行改進(jìn),從而達(dá)到更加收斂的預(yù)測(cè)結(jié)果,并將其用于能源系統(tǒng)缺失值補(bǔ)充。
本文針對(duì)能源系統(tǒng)中的不均衡數(shù)據(jù)選用BBN[16]框架,假設(shè)一對(duì)訓(xùn)練樣本描述為x,y∈{1,2,…,C},其中C表示類(lèi)別的數(shù)量。卷積學(xué)習(xí)分支和重平衡分支分別采用均勻采樣和逆采樣,采樣的樣本分別表示為(xc,yc)和(xr,yr),兩類(lèi)樣本分別加入各自的分支產(chǎn)生特征向量fc∈RD和fr∈RD。而后通過(guò)累計(jì)學(xué)習(xí)策略綜合兩個(gè)分支的輸出,該過(guò)程可表示如下:
其中,z∈RC為對(duì)每個(gè)類(lèi)別的預(yù)測(cè),每一個(gè)類(lèi)別i∈{1,2,…,C}的預(yù)測(cè)表示為[z1,z2,…,zC]T,通過(guò)Softmax函數(shù)可以得到每一個(gè)類(lèi)別的預(yù)測(cè)概率。
再通過(guò)交叉熵?fù)p失函數(shù)E(·,·)計(jì)算對(duì)于預(yù)測(cè)概率=[,…]T的損失值。最終損失函數(shù)可表示如下:
Pytorch 中SGD Momentum 的定義為:
μ·vt-1為定義的Momentum,深度學(xué)習(xí)出現(xiàn)過(guò)擬合和欠擬合的問(wèn)題是因?yàn)槟承﹥?yōu)化器,如SGD Momentum、Adam 優(yōu)化器引入了Moving Average Momentum,其將過(guò)去所有的訓(xùn)練集拿過(guò)來(lái)進(jìn)行加權(quán)求和,使訓(xùn)練的方向更加穩(wěn)定。當(dāng)數(shù)據(jù)分布不均勻時(shí),優(yōu)化器會(huì)傾向于選擇捷徑進(jìn)行學(xué)習(xí)訓(xùn)練,產(chǎn)生偏見(jiàn)從而影響最終優(yōu)化方向。
如圖1 所示,相對(duì)平衡的數(shù)據(jù)進(jìn)行深度學(xué)習(xí)時(shí)的學(xué)習(xí)曲線相對(duì)正常,但如果是比較極端的數(shù)據(jù),學(xué)習(xí)的曲線會(huì)出現(xiàn)提前收斂的情況,這會(huì)造成預(yù)測(cè)出現(xiàn)較大誤差。本文針對(duì)這種走捷徑問(wèn)題進(jìn)行分析,嘗試通過(guò)因果分析找出因走捷徑問(wèn)題產(chǎn)生的深度學(xué)習(xí)偏見(jiàn)問(wèn)題并削弱其對(duì)學(xué)習(xí)過(guò)程的影響。將影響訓(xùn)練時(shí)產(chǎn)生的不被期望偏見(jiàn)的因素稱(chēng)為混淆因子,使得LSTM 模型在訓(xùn)練過(guò)程中按照預(yù)先設(shè)計(jì)的學(xué)習(xí)路線進(jìn)行,避免捷徑學(xué)習(xí)問(wèn)題的產(chǎn)生,從而達(dá)到更加精確的收斂。
Fig.1 Convergence direction of optimizer in different data distributions圖1 優(yōu)化器在不同數(shù)據(jù)分布中的收斂方向
優(yōu)化器在優(yōu)化模型學(xué)習(xí)時(shí)會(huì)產(chǎn)生一些不被期望的偏移。圖2 中Deflection 被認(rèn)為是影響優(yōu)化器產(chǎn)生偏見(jiàn)的主要因素,SGD+Momentum 本身也會(huì)產(chǎn)生一定程度上的偏轉(zhuǎn),F(xiàn)eature 和Deflection 都與研究的主要因素SGD+Momentum 有著正相關(guān)關(guān)系,但兩者在深度學(xué)習(xí)過(guò)程中會(huì)產(chǎn)生一種偽相關(guān),這是不期望產(chǎn)生的,這種偽相關(guān)在因果分析理論中[1]稱(chēng)作Backdoor Shortcut。因果分析理論中方法Backdoor Adjustment 被用來(lái)去除Feature 和其產(chǎn)生的Deflection之間的關(guān)系,公式如下:
Fig.2 Impact of learning bias in Momentum causal analysis on the results圖2 因果分析Momentum產(chǎn)生學(xué)習(xí)偏移對(duì)結(jié)果的影響
假設(shè)頭部偏轉(zhuǎn)方向Deflection 是與動(dòng)量相似的特征指數(shù)移動(dòng)平均值的單位向量。
T是總的訓(xùn)練迭代次數(shù)Deflection 代表對(duì)主方向的偏轉(zhuǎn),由主干參數(shù)偏差引起,偏差Deflection 公式表示為:
解決M的未知分布問(wèn)題采用Backdoor Adjustment,將其中公式的變形取到一個(gè)近似值。當(dāng)M的分布無(wú)法確認(rèn),且M的可能值無(wú)限大時(shí),如果給定一個(gè)特定值,則只能觀察一個(gè)樣本變量(i,x,d);當(dāng)M的數(shù)量與(i,x,d)的數(shù)量都比較大時(shí),便可以假設(shè)M的數(shù)量等于樣本(i,x,d)的數(shù)量,即生成的特征值X與算法項(xiàng)Momentum 有1∶1的關(guān)系,可以通過(guò)對(duì)X進(jìn)行采樣從而近似地獲取到M的分布。
其中,f(xk,dk;)為定義的特征值X到Prediction 的預(yù)測(cè)函數(shù),g(xk,dk;)為定義的Propensity Score 函數(shù)。
De-confounded訓(xùn)練階段P(Y=i|do(X=x))的logit為:
利用因果分析消除混淆因子主要解決的問(wèn)題是當(dāng)數(shù)據(jù)的分布未知,樣本的數(shù)據(jù)呈現(xiàn)長(zhǎng)尾分布時(shí),利用因果分析對(duì)Momentum 算法進(jìn)行改進(jìn),可去除其特征值產(chǎn)生的直接影響從而提取出有害因子在某一方向上的固定偏轉(zhuǎn),進(jìn)而優(yōu)化模型。
多變量預(yù)測(cè)中涉及到除電量以外的其他相關(guān)數(shù)據(jù),比如溫度、濕度、壓強(qiáng)等,將這些變量也加入到訓(xùn)練中。本文選取2017 年1 月1 日至2021 年12 月31 日5 年內(nèi)的 多變量數(shù)據(jù),電力在夏天隨著氣溫的升高會(huì)有一定量的增加,濕度會(huì)呈現(xiàn)出下降趨勢(shì),壓強(qiáng)與濕度幾乎呈現(xiàn)出同樣趨勢(shì),到了冬季這3 種變量又呈現(xiàn)出完全相反趨勢(shì),在多變量數(shù)據(jù)中有著極為緊密的關(guān)聯(lián)性,如圖3所示。
Fig.3 Multivariate data of a steelmaking plant in 5 years圖3 某煉鋼廠5年內(nèi)的多變量數(shù)據(jù)
采用均方根誤差作為評(píng)估標(biāo)準(zhǔn),也稱(chēng)作標(biāo)準(zhǔn)誤差,將其定義為i=1,2,3...n。在有限的觀測(cè)次數(shù)中,均方根誤差常用以下公式表示:
其中,i表示第i個(gè)數(shù)據(jù),N為數(shù)據(jù)長(zhǎng)度。均方根誤差是在預(yù)測(cè)值和真實(shí)值差的平方和與觀測(cè)樣本數(shù)據(jù)N的比,再將其求平方根。
首先加載數(shù)據(jù)集,然后對(duì)其進(jìn)行標(biāo)準(zhǔn)化縮放,特征值在(0,1)之間,用3 個(gè)小時(shí)數(shù)據(jù)預(yù)測(cè)1 小時(shí)數(shù)據(jù),再構(gòu)建一個(gè)3 到1 的監(jiān)督學(xué)習(xí)型數(shù)據(jù),選擇5 年中的前3 年進(jìn)行學(xué)習(xí),將前12 列作為X進(jìn)行訓(xùn)練,倒數(shù)第4 列作為Y。測(cè)試數(shù)據(jù)也同樣,將數(shù)據(jù)轉(zhuǎn)換為3D 輸入,步長(zhǎng)為3,基于此搭建LSTM 模型,優(yōu)化器選擇SGD+Momentum,并進(jìn)行實(shí)驗(yàn)。
擬合網(wǎng)絡(luò)中,預(yù)測(cè)過(guò)程中將數(shù)據(jù)格式化成n*12 列,將預(yù)測(cè)列和后3 列數(shù)據(jù)進(jìn)行拼接,因?yàn)楹罄m(xù)逆縮放時(shí),數(shù)據(jù)形狀要符合n*4 的要求,然后對(duì)拼接好的數(shù)據(jù)進(jìn)行逆縮放,觀測(cè)值與真實(shí)值都要重復(fù)拼接縮放和逆縮放的過(guò)程。輸入訓(xùn)練集和驗(yàn)證集同時(shí)不斷調(diào)參進(jìn)行訓(xùn)練,對(duì)比每次的擬合圖,直到達(dá)到一個(gè)相對(duì)理想的擬合曲線。
以圖3 所示的數(shù)據(jù)為數(shù)據(jù)集,按照上述方法對(duì)標(biāo)準(zhǔn)化后的能源系統(tǒng)多變量時(shí)間序列訓(xùn)練集建立LSTM 模型。因?yàn)楸緮?shù)據(jù)集的樣本采集是以每小時(shí)為單位收集,用n_hours個(gè)數(shù)據(jù)預(yù)測(cè)一條數(shù)據(jù),后續(xù)的輸入和輸出都與其有關(guān),將數(shù)據(jù)由2D 轉(zhuǎn)換成3D 時(shí)作為維度參數(shù),構(gòu)造監(jiān)督學(xué)習(xí)模型時(shí)作為參數(shù),設(shè)置時(shí)間步長(zhǎng),即timestep=n_hours等。n_features代表特征數(shù)量,特征值構(gòu)成多變量進(jìn)行預(yù)測(cè),同時(shí)影響訓(xùn)練和測(cè)試集的輸入輸出由2D 轉(zhuǎn)換成3D 時(shí)也會(huì)作為維度參數(shù)。
本文提出基于因果分析的LSTM 模型(CALSTM),基于LSTM 利用因果分析預(yù)測(cè)的結(jié)果擬合曲線圖與其他流行模型比較結(jié)果如圖4 所示??梢钥闯觯珻ALSTM 模型的擬合精度高于其他模型,特別是函數(shù)極值處;本文提出的方法擬合曲線平滑擬合度高,而傳統(tǒng)LSTM 擬合呈現(xiàn)出偏高的情況且波動(dòng)較大,Transformer 模型效果也較為理想,但在函數(shù)極值處仍出現(xiàn)個(gè)別擬合差的情況。其原因在于,本文提出的模型類(lèi)似于Transformer 的編碼器和解碼器架構(gòu),該架構(gòu)有利于充分學(xué)習(xí)數(shù)據(jù)之間的相關(guān)聯(lián)系及潛在的分布規(guī)律,從而保證模型收斂時(shí)誤差率相對(duì)較小,通過(guò)對(duì)比證明本文模型表現(xiàn)出更高的魯棒性和精度。
Fig.4 Fitting curve of prediction results圖4 預(yù)測(cè)結(jié)果擬合曲線
為了證明該模型有效性,將其與當(dāng)前流行的時(shí)間序列預(yù)測(cè)方法進(jìn)行比較,評(píng)價(jià)指標(biāo)為MAE、RMSE、MSE,如表1所示。首先將本文提出的CALSTM 模型與LSTM 模型做消融實(shí)驗(yàn),兩者均在相同的訓(xùn)練集上進(jìn)行訓(xùn)練,均選擇SGD+Momentum 作為優(yōu)化器,并在同一測(cè)試集上進(jìn)行誤差分析。可以看出,CALSTM 在3 項(xiàng)評(píng)估標(biāo)準(zhǔn)中均優(yōu)于傳統(tǒng)LSTM 模型,本文模型RMSE 降低2.04,MAE 降低1.65,MSE 降低54.10,這些指標(biāo)證明CALSTM 可有效避免因走捷徑產(chǎn)生的學(xué)習(xí)偏見(jiàn),有效降低長(zhǎng)尾分布數(shù)據(jù)在深度學(xué)習(xí)中的誤差率。
Table 1 Statistical of time series interpolation efficiency evaluation表1 時(shí)間序列插補(bǔ)效率評(píng)估統(tǒng)計(jì)
CALSTM 相比傳統(tǒng)的平均值(Mean)算法預(yù)測(cè)精度明顯提升,相比ARIMA 與BRITS,本文模型也有明顯優(yōu)勢(shì),相比ARIMA,RMSE 為評(píng)估標(biāo)準(zhǔn)降低0.1,本文提出的方法沒(méi)有對(duì)時(shí)間序列進(jìn)行假設(shè)擬合操作,而是將數(shù)據(jù)集進(jìn)行訓(xùn)練,由機(jī)器進(jìn)行輸出降低了誤差率。相比BRITS,在MAE標(biāo)準(zhǔn)下降低近0.05,BRITS 對(duì)比本文方法相當(dāng)于只有編碼器部分,本文模型的解碼器會(huì)對(duì)輸入進(jìn)行學(xué)習(xí)從而降低誤差率。相比流行的Transformer 在各項(xiàng)數(shù)值中也表現(xiàn)優(yōu)異,因?yàn)楸疚哪P椭幸灿蓄?lèi)似的編碼解碼器模型結(jié)構(gòu),是在其優(yōu)點(diǎn)基礎(chǔ)上又改進(jìn)了優(yōu)化器。由圖5 可以看出,本文提出的模型在樣本數(shù)據(jù)量較少和較多的情況下均可以獲得很高的預(yù)測(cè)精度,本文模型消除偏見(jiàn)及再均衡策略可以達(dá)到明顯高于其他模型的預(yù)測(cè)精度。綜上所述,本文所用方法在該煉鋼廠能源系統(tǒng)的數(shù)據(jù)集中以LSTM 為基礎(chǔ)通過(guò)因果分析去除偏見(jiàn)可以有效降低誤差率,使得預(yù)測(cè)精度更高。
Fig.5 Comparison of model training sample data and prediction accuracy圖5 模型訓(xùn)練樣本數(shù)據(jù)與預(yù)測(cè)精度比較
通過(guò)比較實(shí)驗(yàn),本文改進(jìn)的LSTM 模型使用因果分析去除模型在學(xué)習(xí)過(guò)程中的混淆因子,切斷機(jī)器學(xué)習(xí)走捷徑的問(wèn)題,在多變量復(fù)雜的能源系統(tǒng)環(huán)境下,取得了較好的預(yù)測(cè)結(jié)果,這證明因果分析出的混淆因子能夠降低模型預(yù)測(cè)效率與魯棒性,優(yōu)化器消除影響后具有更好的學(xué)習(xí)性能。
本文提出基于LSTM 模型,通過(guò)因果分析得出混淆因子,該混淆因子會(huì)在深度學(xué)習(xí)時(shí)產(chǎn)生學(xué)習(xí)偏見(jiàn),影響LSTM在輸出時(shí)的誤差率。本文在消除混淆因子的情況下進(jìn)行預(yù)測(cè),并通過(guò)對(duì)比實(shí)驗(yàn)證明了其有效性,該模型在未知數(shù)據(jù)分布情況下仍可以提高預(yù)測(cè)精度。將改進(jìn)的優(yōu)化器用于能源系統(tǒng)中多變量數(shù)據(jù)的預(yù)測(cè),對(duì)于生產(chǎn)環(huán)境多樣且復(fù)雜的工程應(yīng)用具有直接積極作用。實(shí)驗(yàn)結(jié)果表明,本文提出的方法可以更加精確地進(jìn)行缺失值插補(bǔ),有利于基于基礎(chǔ)數(shù)據(jù)作進(jìn)一步分析及監(jiān)測(cè)后續(xù)操作,對(duì)于復(fù)雜能源系統(tǒng)整體性能有較大提升作用。后續(xù)研究將致力于提高預(yù)測(cè)準(zhǔn)確率并確保數(shù)據(jù)波動(dòng)較大時(shí)的穩(wěn)定性,以更好地服務(wù)于智慧能源系統(tǒng)。