鄒鋒 田大偉 王悅 黃澤天 吳少波
摘要:針對(duì)公共建筑能耗預(yù)測準(zhǔn)確率較低的問題,提出一種基于生成對(duì)抗網(wǎng)絡(luò)的深度學(xué)習(xí)能耗預(yù)測算法。該算法通過收集建筑能耗并以時(shí)間序列排序,然后利用深度學(xué)習(xí)算法,通過前幾個(gè)時(shí)刻的建筑能耗預(yù)測未來建筑物能耗。同時(shí),引入生成對(duì)抗網(wǎng)絡(luò),生成可靠的建筑能耗樣本用以訓(xùn)練神經(jīng)網(wǎng)絡(luò),解決真實(shí)能耗數(shù)據(jù)不足的問題。實(shí)驗(yàn)結(jié)果表明,所提出的算法能耗預(yù)測準(zhǔn)確率較高。
關(guān)鍵詞:深度學(xué)習(xí);神經(jīng)網(wǎng)絡(luò);能耗預(yù)測;建筑能耗;生成對(duì)抗網(wǎng)絡(luò)
中圖分類號(hào):TP183? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A? ? ? ? 文章編號(hào):1009-3044(2019)02-0198-03
Deep Learning Energy Consumption Prediction Algorithms Based on Generative Adversarial Networks
ZOU Feng1,2,3,TIAN Da-wei1,2,3,WANG Yue 1,2,3,HUANG Ze-tian1,2,3,WU Shao-bo1,2,3
(1.Institute of Electronics and Information Engineering, Suzhou University of Science and Technology, Suzhou 215009, China;2.Jiangsu Province Key Laboratory of Intelligent Building Energy Efficiency, Suzhou University of Science and Technology, Suzhou 215009, China;3.Suzhou Key Laboratory of Mobile Networking and Applied Technologies, Suzhou University of Science and Technology, Suzhou 215009, China)
Abstract:With respect to the problem of low accuracy of energy consumption prediction in public buildings, a deep learning energy consumption prediction algorithm based on generative adversarial networks is proposed. This algorithm collects building energy consumption samples and ranks it in time series. Then, it uses deep learning algorithm to predict future building energy consumption. At the same time, the generative adversarial networks is introduced to generate reliable building energy consumption samples to train the neural network to solve the problem of insufficient real energy consumption data. The results show that the proposed algorithm has high accuracy in energy consumption prediction.
Key words: Deep learning; Neural Network; Energy consumption prediction; Building energy consumption; Generative adversarial networks
1引言
大型公共建筑是指建筑面積在2萬平方米以上、用于辦公、商業(yè)、旅游的公共建筑。目前,我國建筑能耗占社會(huì)總能耗的30%,而大型公共建筑能耗又占建筑能耗的20%,同時(shí),隨著我國城市的發(fā)展,近年來,我國將新增約10億平方米大型公共建筑,大型公共建筑高耗能的問題日益突顯出來。因此對(duì)大型公共建筑的能耗進(jìn)行預(yù)測是必要的,它能夠?yàn)榇笮凸ù_保用能定額提供科學(xué)依據(jù)。
影響建筑能耗的因素多,并且與建筑能耗之間存在非線性的關(guān)系。所以,針對(duì)大型建筑能耗預(yù)測準(zhǔn)確率較低的問題,Azadenh等人于2008年提出了基于人工神經(jīng)網(wǎng)絡(luò)的能耗預(yù)測算法,該算法采用人工神經(jīng)網(wǎng)絡(luò)用來預(yù)測能耗[1]。露闊等人于2014年提出了基于對(duì)規(guī)則實(shí)時(shí)學(xué)習(xí)組合型BP神經(jīng)網(wǎng)絡(luò)的城市建筑能耗預(yù)測模型,給訓(xùn)練的歷史數(shù)據(jù)能耗加入了一定的規(guī)則,以此提高BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練速度[2]。但是,目前神經(jīng)網(wǎng)絡(luò)預(yù)測算法的改進(jìn)大多是從改善神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)出發(fā),并沒有從生成能耗數(shù)據(jù)方面考慮,而生成對(duì)抗網(wǎng)絡(luò)(Generative Adversarial Networks,GAN)可以用于生成建筑物能耗。
本文針對(duì)建筑能耗預(yù)測準(zhǔn)確率較低問題,提出了一種基于生成對(duì)抗網(wǎng)絡(luò)的深度學(xué)習(xí)能耗預(yù)測算法。該算法收集建筑物能耗樣本,然后利用GAN生成新的能耗樣本,共同為深度神經(jīng)網(wǎng)絡(luò)提供訓(xùn)練樣本。該算法通過前幾個(gè)時(shí)刻的建筑能耗預(yù)測未來建筑物能耗,實(shí)驗(yàn)結(jié)果表明,能耗預(yù)測準(zhǔn)確率較高。
2相關(guān)理論
2.1 深度學(xué)習(xí)
深度學(xué)習(xí)[3]的概念源自人工神經(jīng)網(wǎng)絡(luò),即含有多個(gè)隱藏層的多層感知機(jī)。通常來講,深度學(xué)習(xí)模型由多層的非線性單元組合而成,其中,較高層的輸入為較低層的輸出,然后通過非線性化傳播下去,通過這種方法可以從大量的訓(xùn)練數(shù)據(jù)中學(xué)習(xí)到樣本的特征表示,并且發(fā)現(xiàn)數(shù)據(jù)的分布特征[3]。深度學(xué)習(xí)由于有更多的隱藏層,所以深度學(xué)習(xí)有更好的特征表達(dá)能力,但是由于計(jì)算機(jī)硬件、訓(xùn)練數(shù)據(jù)的不足,使其一直無法取得突破性進(jìn)展。直到2006年,Hinton等人提出了預(yù)訓(xùn)練的思想,預(yù)先訓(xùn)練神經(jīng)網(wǎng)絡(luò)的參數(shù),極大降低神經(jīng)網(wǎng)絡(luò)的優(yōu)化難度[4]。此后幾年,各種神經(jīng)網(wǎng)絡(luò)模型被提出,主要有堆棧式自動(dòng)編碼器、限制波爾曼茲機(jī)、深度信念網(wǎng)絡(luò)、循環(huán)神經(jīng)網(wǎng)絡(luò)等。
2.2 生成對(duì)抗網(wǎng)絡(luò)
生成對(duì)抗網(wǎng)絡(luò)[5-6]自2014年提出以來,獲得眾多學(xué)者的廣泛關(guān)注,GAN模型中的博弈雙方分別是生成器模型(G)和判別器模型(D).生成器模型G捕捉樣本數(shù)據(jù)的分布,結(jié)合服從某一分布的噪聲z生成類似真實(shí)訓(xùn)練數(shù)據(jù)的樣本,目的是學(xué)習(xí)真實(shí)的數(shù)據(jù)分布。
GAN的模型結(jié)構(gòu)如圖1所示:生成器模型G與判別器模型D利用可微分函數(shù)來表示,兩者的輸入分別為隨機(jī)噪聲z和真實(shí)數(shù)據(jù)x。G(z)表示由生成器模型G生成的盡量服從真實(shí)數(shù)據(jù)分布Pdata的樣本。判別器模型D的目標(biāo)是對(duì)數(shù)據(jù)來源進(jìn)行判別:如果判別器模型D判別輸入來自真實(shí)數(shù)據(jù),則標(biāo)注為1,如果輸入來自生成器模型G,則標(biāo)注為0。在不斷優(yōu)化的過程中,對(duì)于生成器模型G而言,其目標(biāo)是使所生成偽數(shù)據(jù)G(z)在判別器模型D上的標(biāo)注D(G(z))和真實(shí)數(shù)據(jù)x在判別器模型D上的標(biāo)注D(x)一致。生成器模型G和判別器模型D需要不斷地進(jìn)行優(yōu)化,分別提高相應(yīng)的生成能力和判別能力,最終達(dá)到納什均衡。
3基于GAN的深度學(xué)習(xí)能耗預(yù)測算法
3.1 算法原理
深度神經(jīng)網(wǎng)絡(luò)為標(biāo)準(zhǔn)的三層結(jié)構(gòu),主要由輸入層、隱藏層和輸出層構(gòu)成,具體每個(gè)層數(shù)的節(jié)點(diǎn)視情況而定。本文將建筑物的能耗作為輸入層,輸出層為預(yù)測的建筑能耗,神經(jīng)網(wǎng)絡(luò)算法的過程包括正向傳播、誤差的反向傳播兩個(gè)部分。當(dāng)算法正向傳播時(shí),如果實(shí)際輸出與期望輸出相同,則結(jié)束算法。若不相同,則反向傳播更新神經(jīng)網(wǎng)絡(luò)參數(shù)。
建筑物能耗是以時(shí)間序列來表示的,以小時(shí)為單位,則前k個(gè)小時(shí)能耗表示為[[t1,t2,t3...tk]],定義神經(jīng)網(wǎng)絡(luò)的輸入為[x=[t1,t2,t3...tk]],輸出[y]為預(yù)測的下一時(shí)刻建筑物能耗[tk+1],[y']為真實(shí)的下一時(shí)刻建筑物能耗,訓(xùn)練神經(jīng)網(wǎng)絡(luò)的具體步驟如下:
(1)初始化神經(jīng)網(wǎng)絡(luò)兩層權(quán)重[w1,w2]
(2)前向傳播,計(jì)算隱藏層以及輸出層的輸出分別為[f(w1)= δ(w1*x), y= δ(w2*f(w1))]
(3)計(jì)算神經(jīng)網(wǎng)絡(luò)的目標(biāo)函數(shù)[J=1ni=1nyi-y'2]
(4)反向傳播,更新參數(shù)[w1=w1-?J?w1 ,? w2=w2-?J?w2 ]
(5)計(jì)算神經(jīng)網(wǎng)絡(luò)的目標(biāo)函數(shù)是否達(dá)到精度要求。
同時(shí),將建筑物能耗真實(shí)樣本集表示為[D=[x,y]],[x]表示神經(jīng)網(wǎng)絡(luò)的輸入,即前幾個(gè)時(shí)刻的建筑物能耗,[y]表示神經(jīng)網(wǎng)絡(luò)的輸出值,即預(yù)測的下一時(shí)刻能耗。
GAN作為生成模型被看作是一個(gè)極小極大化的博弈游戲,目的是提高生成器模型[G]的生成能力,同時(shí)提高判別器模型
[minGmaxDV(D,G)=Ex~pdata(x)[logD(x)]+Ez~pz(z)[log(1-D(G(z)))]]? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(1)
與建筑物能耗真實(shí)樣本集一致,利用GAN生成的建筑物能耗樣本可以表示為:
[G=[xz,yz]]
[xz]表示生成的上一時(shí)刻建筑物能耗,[yz]表示生成的下一時(shí)刻預(yù)測建筑物能耗。建筑物能耗真實(shí)樣本集與生成的建筑物能耗樣本集共同用于訓(xùn)練神經(jīng)網(wǎng)絡(luò),加快神經(jīng)網(wǎng)絡(luò)收斂速度。
最后,通過正則化方法優(yōu)化GAN模型,進(jìn)一步提高樣本生成建筑能耗樣本的質(zhì)量。當(dāng)GAN參數(shù)不斷變化,[xz]和[yz]也會(huì)根據(jù)真實(shí)能耗樣本集不斷地更新,[V(D,G)]會(huì)趨向于一個(gè)全局最小值。
3.2 算法在能耗預(yù)測中的應(yīng)用
本文將該算法用于建筑物能耗預(yù)測,輸入向量為前序幾個(gè)時(shí)刻的能耗序列,輸出值為下一時(shí)刻預(yù)測能耗,主要步驟如下所示:
3.2.1 對(duì)數(shù)據(jù)進(jìn)行預(yù)處理
歷史數(shù)據(jù)是能耗預(yù)測的工作基礎(chǔ),然而在數(shù)據(jù)的采集過程中常常出現(xiàn)數(shù)據(jù)缺失或數(shù)據(jù)異常的情況。數(shù)據(jù)異常的處理方法是采用同一天的同一時(shí)刻的能耗數(shù)據(jù),如式(2)所示:
[T(d,t)=a1*T(d1,t)+a2*T(d2,t)]? ? ? ? ? ? ? ? ? ? ? ? (2)
式中:[T(d,t)]為第[d]天的[t]時(shí)刻的缺失數(shù)據(jù),[T(d1,t)]、[T(d2,t)]分別為該日相鄰的相同日期的[t]時(shí)刻能耗數(shù)據(jù),[a1]、[a2] 為各自對(duì)應(yīng)的數(shù)值權(quán)重。
3.2.2 預(yù)測模型樣本建立
由于能耗數(shù)據(jù)具有時(shí)序性,預(yù)測模型樣本包括以下幾個(gè)部分:
1) [X={(t1,t2,...ti),(t2,t3,...ti+1),...,(tk,tk+1,...tk+i)}],稱為輸入樣本集,包含k個(gè)前i個(gè)時(shí)刻的能耗數(shù)據(jù)。
2) [Y={y1,y2,...,yk}],稱為輸出樣本集,輸出值為每個(gè)輸出樣本經(jīng)過神經(jīng)網(wǎng)絡(luò)的輸出值,即下一時(shí)刻能耗的真實(shí)值,與訓(xùn)練樣本集中的每個(gè)訓(xùn)練樣本一一對(duì)應(yīng)。
3.2.3 預(yù)測模型準(zhǔn)確率計(jì)算
為了檢驗(yàn)?zāi)芎念A(yù)測模型的預(yù)測性能,本文使用平均絕對(duì)百分比誤差(MAPE)來衡量預(yù)測精度,MAPE是預(yù)測值的誤差與實(shí)際值之間的比例,其計(jì)算公式如式3所示:
[MAPE=1ni=1n|yi-y'i|yi×100%]? ? ? ? ? ? ? ? ? ? ? ? ? (3)
其中,n為建筑能耗樣本的數(shù)量,[yi]為真實(shí)能耗值,[y'i]為預(yù)測能耗值。
所以,預(yù)測模型的預(yù)測準(zhǔn)確率為[Y=1-MAPE=1-1ni=1n|yi-y'i|yi×100%]。
4 實(shí)驗(yàn)結(jié)果分析
為了驗(yàn)證基于生成對(duì)抗網(wǎng)絡(luò)的深度學(xué)習(xí)能耗預(yù)測算法,建筑能耗的實(shí)驗(yàn)數(shù)據(jù)采用美國巴爾的摩天燃?xì)馀c電力公司記載的建筑能耗數(shù)據(jù),源數(shù)據(jù)的值域空間為[10,50],因此,在此能耗預(yù)測模型中,輸入值與輸出值的值域設(shè)為相同的[10,50] ,學(xué)習(xí)率設(shè)為0.99。
圖2為能耗實(shí)際值、基于生成對(duì)抗網(wǎng)絡(luò)的深度學(xué)習(xí)能耗預(yù)測算法能耗預(yù)測值對(duì)比實(shí)驗(yàn)。橫坐標(biāo)表示時(shí)間,縱坐標(biāo)表示建筑能耗。在實(shí)驗(yàn)過程中,每個(gè)算法都被獨(dú)立執(zhí)行10次,求出平均值。圖1中深度學(xué)習(xí)算法的能耗預(yù)測值與實(shí)際值偏差較小,預(yù)測結(jié)果比較符合真實(shí)能耗值,預(yù)測準(zhǔn)確率為93%,這是因?yàn)樯疃葘W(xué)習(xí)算法在訓(xùn)練模型的過程中,通過GAN生成更多可靠的建筑能耗數(shù)據(jù)提供給深度神經(jīng)網(wǎng)絡(luò)模型,深度神經(jīng)網(wǎng)絡(luò)模型就能獲得更多的能耗樣本用來學(xué)習(xí),深度神經(jīng)網(wǎng)絡(luò)的參數(shù)更新速度加快,收斂時(shí)間減少,所以預(yù)測模型的準(zhǔn)確率也就越高。綜上所述,深度學(xué)習(xí)能耗預(yù)測算法的能耗預(yù)測模型性能較優(yōu),準(zhǔn)確率較高。
5 結(jié)束語
本文主要針對(duì)能耗預(yù)測模型預(yù)測準(zhǔn)確率較低問題,提出了一種基于生成對(duì)抗網(wǎng)絡(luò)的深度學(xué)習(xí)能耗預(yù)測算法.該算法收集建筑物能耗加入樣本池,然后利用深度學(xué)習(xí)算法訓(xùn)練神經(jīng)網(wǎng)絡(luò),用以預(yù)測建筑物能耗。同時(shí)引入生成對(duì)抗網(wǎng)絡(luò),生成建筑能耗樣本解決能耗數(shù)據(jù)不足的問題。實(shí)驗(yàn)結(jié)果表明,基于生成對(duì)抗網(wǎng)絡(luò)的深度學(xué)習(xí)能耗預(yù)測算法預(yù)測準(zhǔn)確率較高。
參考文獻(xiàn):
[1] Lo W, Choy Y, Lai T, et al. Modelin g of electricity consumption in the Asian gaming and tourism center-MacaoSAR , People' s Republic of China[ J]. Energy ,2008(33):679.
[2] 路闊,鐘伯成. 基于LMBP神經(jīng)網(wǎng)絡(luò)的建筑能耗短期預(yù)測[J].建筑節(jié)能,2014(11):79-81.
[3] PeCun Y, Bengio Y . Deep learning [J]. Nature,2015,521(7553):436-444.
[4] Hinton G E, Osindero S. A fast learning algorithm for deep belief nets. Neural Computation,2006,18(7):1527-1554.
[5] Goodfellow I J, Pouget-Abadie J, Mirza M, et al. Generative adversarial nets[C]//Proc of 28th International Conference on Neural Information Processing Systems, Montreal:MIT Press,2014:2672-2680.
[6] Arjovsky M, Chintala S, Bottou L. Wasserstein generative adversarial networks[C]//Proc of the 34th International Conference on Machine Learning, Sydney: ACM,2017:214-223.