劉 杭,羅 恒,章挺飛
(蘇州科技大學(xué) 電子與信息工程學(xué)院,江蘇 蘇州 215009;江蘇省建筑智慧節(jié)能重點實驗室,江蘇 蘇州 215009)
在商業(yè)建筑節(jié)能工作中,普遍會遇到數(shù)據(jù)匱乏的場景,它會直接影響能耗預(yù)測準(zhǔn)確度,進(jìn)而影響能源使用效率,增加商業(yè)能源使用成本[1-3]。如新興產(chǎn)業(yè)中,新建或改建擴(kuò)建的商業(yè)建筑項目,會出現(xiàn)短期能耗數(shù)據(jù)匱乏的情形[4]。同時,部分能源管理系統(tǒng)的不完善,也會導(dǎo)致能耗數(shù)據(jù)采集的大量缺失,以至于無法實施可靠性預(yù)測[5-6]。
近年來,國內(nèi)外專業(yè)學(xué)者在商業(yè)建筑能耗預(yù)測的數(shù)據(jù)匱乏場景的探索上涉及很少,大多研究集中在傳統(tǒng)場景下的傳統(tǒng)機器學(xué)習(xí)和深度學(xué)習(xí)方法[7-8]。前者適應(yīng)力強,能夠快速開發(fā),主要有支持向量機(Support Vector Machines,SVM)[9-12]、BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)[13-15]、K近鄰(K-Nearest Neighbor,KNN)[16]和極端梯度提升(Extreme Gradient Boosting,XGBoost)[17]等,但同時存在模型過分依賴特征、容錯率小等弊端。后者學(xué)習(xí)能力強,如長短期記憶網(wǎng)絡(luò)(Long Short-Term Memory,LSTM)對能耗序列預(yù)測呈現(xiàn)一定的優(yōu)勢[18],其特有的門控單元的記憶功能,能夠捕捉時間序列項之間的依賴關(guān)系,具有優(yōu)秀的預(yù)測能力,門控循環(huán)單元(Gated Recurrent Unit,GRU)則優(yōu)化了LSTM結(jié)構(gòu),收斂較快,能夠有效處理復(fù)雜的能耗數(shù)據(jù)[19],但計算量很大,在數(shù)據(jù)匱乏時會影響預(yù)測結(jié)果。因此在這一場景下,可以使用數(shù)據(jù)增強方法擴(kuò)充數(shù)據(jù),其中生成對抗網(wǎng)絡(luò)(Generative Adversarial Networks,GAN)是近年來深度學(xué)習(xí)領(lǐng)域數(shù)據(jù)增強的重要方法,它通過生成高質(zhì)量的訓(xùn)練樣本補充并擴(kuò)展真實數(shù)據(jù)[20],如文獻(xiàn)[21-23]分別應(yīng)用GAN實現(xiàn)不平衡數(shù)據(jù)、圖像和序列數(shù)據(jù)的數(shù)據(jù)增強用以提升準(zhǔn)確度預(yù)測。
針對數(shù)據(jù)匱乏場景下的商業(yè)建筑能耗預(yù)測,提出了一種基于GAN-GRU組合模型的預(yù)測方法。文中針對GRU特有的時間序列記憶敏感性,設(shè)計生成對抗網(wǎng)絡(luò)框架結(jié)構(gòu),生成具有時間關(guān)鍵點的平行信息數(shù)據(jù)并進(jìn)行擴(kuò)充,并利用GRU實現(xiàn)復(fù)合數(shù)據(jù)的預(yù)測分析,同時與K近鄰(K-Nearest Neighbor,KNN)、梯度提升樹(Gradient Boosting Decision Tree,GBDT)和嶺回歸(Ridge)等傳統(tǒng)算法對比,最終結(jié)合方差-協(xié)方差預(yù)測結(jié)果的權(quán)重復(fù)合思想,提升預(yù)測結(jié)果的準(zhǔn)確性、魯棒性和泛化能力。該研究對于新興產(chǎn)業(yè)數(shù)據(jù)匱乏場景下的商業(yè)建筑節(jié)能具有重大意義。
GAN是2014年提出的一種生成模型方法,它吸收了對抗博弈的思想,其通過內(nèi)部的兩種模型結(jié)構(gòu)引導(dǎo)生成數(shù)據(jù)。網(wǎng)絡(luò)模型主要有兩部分構(gòu)成:判別模型D和生成模型G。生成模型主要目的是盡可能生成接近真實數(shù)據(jù)的假數(shù)據(jù),判別模型則捕獲生成數(shù)據(jù)來自真實訓(xùn)練數(shù)據(jù)的概率,這種生成對抗的原理使得生成的數(shù)據(jù)更加準(zhǔn)確[20]。生成對抗網(wǎng)絡(luò)的主要網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
圖1 生成對抗網(wǎng)絡(luò)模型
為了盡可能尋求兩種內(nèi)部結(jié)構(gòu)的平衡,需要在生成數(shù)據(jù)過程中不斷迭代優(yōu)化,生成器被訓(xùn)練用于最小化值函數(shù),而判別器則希望最大化這一目標(biāo),兩者采用二人零和博弈策略。在上述最大最小優(yōu)化過程中,主要的優(yōu)化目標(biāo)函數(shù)為
其中,x表示真實能耗序列數(shù)據(jù),z代表輸入G網(wǎng)絡(luò)的噪聲,G(z)代表G網(wǎng)絡(luò)的生成數(shù)據(jù),D(x)代表輸入數(shù)據(jù)屬于真實序列數(shù)據(jù)概率的判斷估計,Pdata(x)代表原始序列數(shù)x的分布,P(z)代表輸入噪聲變量的先驗值,E代表求解期望值。
GAN的網(wǎng)格模型不需要龐大的計算方法,通過兩種逼近函數(shù)的網(wǎng)絡(luò),使生成模型和判別模型不斷逼近真實狀態(tài)以獲取最優(yōu)的網(wǎng)絡(luò)參數(shù),當(dāng)判別模型D趨于穩(wěn)定,生成器G可獲取最終穩(wěn)定模式下不同網(wǎng)絡(luò)狀態(tài)為
1.2.1 生成器
生成器由編碼器和解碼器組成,針對時間序列信息,GRU用來捕獲時間步信息,獲取前一時刻數(shù)據(jù)特征記憶并傳遞給下一單元信息。
其中,F(xiàn)CR表示全連接層,使用ReLu激活函數(shù),Wen與Wencoder表示網(wǎng)絡(luò)迭代過程中參數(shù)矩陣表示為t時刻的數(shù)據(jù)輸入。則分別表示中間狀態(tài),使用門控循環(huán)單元(GRU)捕獲時間記憶信息,實現(xiàn)網(wǎng)絡(luò)參數(shù)快速收斂。設(shè)置隨機噪聲為高斯噪聲的方式,并將其送到解碼器中,再使用多層感知器(MLP)生成平行數(shù)據(jù)。
1.2.2 判別器
設(shè)計判別模型為
其中,Cit表示來自t時刻原始數(shù)據(jù)和生成平行數(shù)據(jù)輸入,Y^表示生成器分類結(jié)果,Wgru與Wmlp表示偏差矩陣。
1.2.3 損失函數(shù)
對于序列生成數(shù)據(jù),選擇常用的均方誤差(MSE)作為網(wǎng)絡(luò)回歸迭代過程中的損失函數(shù)
為了體現(xiàn)上述GAN結(jié)構(gòu)設(shè)計的優(yōu)勢,設(shè)計了實驗的四個流程,如圖2所示。
圖2 實驗設(shè)計流程
在流程1中,約束判別模型D不變
其中,生成結(jié)構(gòu)保持不變,記為G-GRU,或?qū)⒌?.2.1節(jié)中公式更換為以下三個公式,分別記為G-LSTM、G-RNN和G-Bi-LSTM。
其中,RNN為循環(huán)神經(jīng)網(wǎng)絡(luò)單元,Bi-LSTM為雙向長短期記憶網(wǎng)絡(luò)。流程2則在流程1的基礎(chǔ)上,約束G,即保持第1.2.1節(jié)生成器結(jié)構(gòu)不變。其中,判別模型保持不變,記為D-GRU,或?qū)⒐礁臑橐韵氯齻€公式,分別記為D-LSTM、D-RNN與D-Bi-LSTM。在流程3中,使用GRU為主預(yù)測算法。在流程4中,使用對比的復(fù)合數(shù)據(jù)預(yù)測方法為:GBDT(梯度提升樹)、KNN(K-近鄰算法)、Ridge(嶺回歸)和RF(隨機森林)。
雖然GAN能穩(wěn)定生成平行數(shù)據(jù)信息,但無法保證不同平行數(shù)據(jù)的關(guān)聯(lián)性,因此不具備預(yù)測魯棒性,文中使用組合預(yù)測的方式,利用多次GAN-GRU的預(yù)測結(jié)果,計算每種結(jié)果的權(quán)重。方差-協(xié)方差法能找到最優(yōu)的權(quán)重組合,提高短期能耗預(yù)測的魯棒性和準(zhǔn)確度。每種預(yù)測結(jié)果的方差計算為
其中,n為訓(xùn)練集數(shù)目,e1,e2,…,en分別表示n條數(shù)據(jù)的絕對百分比誤差,eˉ為e1,e2,…,en的均值。文中以日能耗預(yù)測組合為例,定義第m天日能耗序列預(yù)測值ym={ym1,ym2,…,ymn},ymn表示第n種的訓(xùn)練。第m+1天的第n種的預(yù)測結(jié)果權(quán)重為wmn=1/[vmn(1/vm1+1/vm2+…+1/vmn)],最終的第m+1天預(yù)測結(jié)果組合為
文中選取了上海正大廣場大型商業(yè)建筑2018年度的能耗序列數(shù)據(jù)。經(jīng)過預(yù)處理,使時間間隔標(biāo)準(zhǔn)化為1 h,其日期準(zhǔn)確范圍為2018年1月1日—2018年12月31日,共有8 760條數(shù)據(jù)。定義三種數(shù)據(jù)集結(jié)構(gòu)分別為:原始序列數(shù)據(jù)集、平行序列數(shù)據(jù)集和復(fù)合序列數(shù)據(jù)集。將原始序列中第1-L1天序列段定義為
其中,t表示天數(shù),n表示一天樣本數(shù),L1表示原始序列的樣本天數(shù)。
定義GAN生成的平行數(shù)據(jù)結(jié)構(gòu)為
其中,t表示天數(shù),n表示一天樣本數(shù),L2表示生成的樣本天數(shù)。
定義復(fù)合后的數(shù)據(jù)結(jié)構(gòu)為
其中,L=L1+L2。
模擬數(shù)據(jù)匱乏場景:該商業(yè)建筑僅有一個月的歷史能耗數(shù)據(jù),需要預(yù)測下個月能耗數(shù)據(jù)。為了方便訓(xùn)練,統(tǒng)一每個月數(shù)據(jù)量為672條,即每月取前28 d的數(shù)據(jù)量。使用上海正大廣場2018年度數(shù)據(jù)為訓(xùn)練和預(yù)測數(shù)據(jù),總數(shù)據(jù)集定義為{seq1,seq2,…,seq11,seq12},表示第1-12月份的每月數(shù)據(jù)集序列。根據(jù)模擬數(shù)據(jù)匱乏場景,設(shè)計11組數(shù)據(jù)匱乏場景下的數(shù)據(jù)集的結(jié)構(gòu)為{{seq1,seq2},{seq2,seq3},…,{seq11,seq12}}。
選取指標(biāo)函數(shù)平均絕對誤差(MAE)、均方根誤差(RMSE)和相對誤差(CV-RMSE)作為評估指標(biāo),三種指標(biāo)的表達(dá)式分別為
其中,y^t表示預(yù)測數(shù)據(jù),yt表示原始數(shù)據(jù)。
為了比較第1.2節(jié)中設(shè)計的生成對抗網(wǎng)絡(luò)結(jié)構(gòu)性能,使用10組數(shù)據(jù)匱乏場景能耗數(shù)據(jù)集為{{seq1,seq2},{seq2,seq3},…,{seq10,seq11}}。其中,每組的前一個月數(shù)據(jù)用于訓(xùn)練并拆分訓(xùn)練集和驗證集的比例為6:1,每組的后一個月數(shù)據(jù)用于預(yù)測。每次實驗迭代次數(shù)設(shè)置為4 000次,需保證生成模型和判別模型的loss趨于穩(wěn)定且收斂,在實驗過程中偶爾出現(xiàn)loss波動明顯,即需要重新迭代。每組生成的平行數(shù)據(jù)則設(shè)置為GRU預(yù)測的訓(xùn)練集,并拆分訓(xùn)練集和驗證集的比例為6∶1,使用GRU算法在預(yù)測集上測試。圖3為10組數(shù)據(jù)集的生成平行數(shù)據(jù)使用GRU訓(xùn)練并預(yù)測后的指標(biāo)誤差。其中,D-GRU模式在10組數(shù)據(jù)集上MAE、RMSE和CV-RMSE上的指標(biāo)都相對較小,且最終的誤差均值最低,說明GRU更易收斂,所提模型生成數(shù)據(jù)性能更接近真實數(shù)據(jù),且符合預(yù)測需求。
圖3 10次生成數(shù)據(jù)實驗的預(yù)測指標(biāo)對比
在生成平行數(shù)據(jù)后,將每月原始數(shù)據(jù)與平行數(shù)據(jù)按照公式進(jìn)行數(shù)據(jù)復(fù)合,由此分類成三種數(shù)據(jù)集:平行數(shù)據(jù)、原始數(shù)據(jù)、復(fù)合數(shù)據(jù)。在第2.3節(jié)的基礎(chǔ)上,繼續(xù)使用GRU作原始數(shù)據(jù)與復(fù)合數(shù)據(jù)的預(yù)測性能分析。在同樣的10類數(shù)據(jù)集下,復(fù)合數(shù)據(jù)集的總體指標(biāo)均值較低,與原始數(shù)據(jù)集三類指標(biāo)相比,分別提升了13.6%,15.5%和12.01%,見表1。這表明數(shù)據(jù)復(fù)合后,能提高短期能耗的預(yù)測性能。
表1 兩類數(shù)據(jù)集預(yù)測性能對比
將2.4節(jié)的復(fù)合數(shù)據(jù)同時使用GRU與KNN、GBDT、Ridge、RF四類傳統(tǒng)機器學(xué)習(xí)方法預(yù)測對比。10類數(shù)據(jù)集的預(yù)測誤差箱型圖,如圖4所示。
圖4 10組預(yù)測方法的預(yù)測指標(biāo)對比
由圖4可以觀察到傳統(tǒng)的機器學(xué)習(xí)方法存在誤差較大的情況,這是由于傳統(tǒng)模型簡單并且只適用于快速開發(fā)的情況??傮w性能而言,文中所提GAN-GRU模型方法,誤差收斂快,準(zhǔn)確度高,能適應(yīng)大部分小數(shù)據(jù)下商業(yè)建筑數(shù)據(jù)序列預(yù)測。值得注意的是,對于特征復(fù)雜和無規(guī)律的數(shù)據(jù)集,則不適用文中模型結(jié)構(gòu),因為復(fù)雜特征會直接影響模型準(zhǔn)確度,且不規(guī)律數(shù)據(jù)集不具備代表性,無法生成適當(dāng)?shù)钠叫袛?shù)據(jù)。
由于生成對抗網(wǎng)絡(luò)每次生成數(shù)據(jù)不同,且存在部分偏差,為了提高預(yù)測的魯棒性,使用第1.3節(jié)所述每日預(yù)測組合預(yù)測模式,采用{seq11,seq12}數(shù)據(jù)集,開展10次平行數(shù)據(jù)實驗,生成10次商業(yè)建筑2018年第11月份不同的數(shù)據(jù)結(jié)構(gòu),并使用GAN-GRU組合模型預(yù)測商業(yè)廣場2018年度第12月份數(shù)據(jù)。
圖5為原始數(shù)據(jù)、平行數(shù)據(jù)和復(fù)合數(shù)據(jù)的組合模式針對上海正大廣場第12月份預(yù)測結(jié)果的24 h窗口均值的擬合曲線??梢钥闯鲎罱K融入方差-協(xié)方差思想的組合預(yù)測實驗結(jié)果最貼近真實數(shù)據(jù),相比原始數(shù)據(jù)預(yù)測的MAE、RMSE和CV-RMSE指標(biāo)分別提升了16.9%、16.7%和18.6%。
圖5 正大廣場12月份24 h窗口能耗預(yù)測結(jié)果
圖6為組合實驗的預(yù)測指標(biāo)分布圖,hybrid表示融入方差-協(xié)方差思想的組合模型的實驗結(jié)果,其10次實驗中的誤差指標(biāo)上下波動,且存在誤差較大的情況,證明前面所述的生成數(shù)據(jù)預(yù)測的不穩(wěn)定性,最終的復(fù)合模式則使其保持在一種相對穩(wěn)定且較優(yōu)的預(yù)測狀態(tài),驗證了理論的實用性并具備一定的推廣性。
圖6 復(fù)合模型的三類實驗指標(biāo)對比
圖7為實驗中不同預(yù)測結(jié)果計算的權(quán)重,預(yù)測性能決定組合權(quán)重,預(yù)測指標(biāo)較差的模型,下一日則分配較低的權(quán)重,反之,則分配較高的權(quán)重。最終的實驗結(jié)果表明文中方法大幅度提升了數(shù)據(jù)匱乏場景下商業(yè)建筑能耗短期預(yù)測性能,并且具備一定的預(yù)測魯棒性。
圖7 復(fù)合模型實驗權(quán)重分布
針對數(shù)據(jù)匱乏場景下商業(yè)建筑能耗預(yù)測問題,提出了一種基于GAN-GRU的商業(yè)建筑能耗短期預(yù)測組合模型。通過不同約束條件下的GAN結(jié)構(gòu)生成平行數(shù)據(jù),在GRU預(yù)測分析下,采用適用度最高的結(jié)構(gòu)的平行數(shù)據(jù)與原始數(shù)據(jù)關(guān)聯(lián),以生成的復(fù)合數(shù)據(jù)作為訓(xùn)練數(shù)據(jù),并將其通過GRU預(yù)測的結(jié)果結(jié)合方差-協(xié)方差權(quán)重組合模式得到最終的預(yù)測結(jié)果。實驗結(jié)果表明,這種組合模型預(yù)測能力遠(yuǎn)高于傳統(tǒng)模型,對數(shù)據(jù)匱乏場景下的商業(yè)建筑節(jié)能具有要意義。