国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于SAE與CEEMDAN-BiLSTM組合模型的短期電力負(fù)荷預(yù)測

2022-08-10 08:20
計算機(jī)應(yīng)用與軟件 2022年7期
關(guān)鍵詞:編碼器分量負(fù)荷

黃 煒 陳 田

(上海電機(jī)學(xué)院機(jī)械學(xué)院 上海 200120)

0 引 言

近年來,隨著我國科技工業(yè)的高速發(fā)展,電能的需求量不斷增大,對于電力負(fù)荷預(yù)測準(zhǔn)確度的要求也在不斷地提高。按照時間跨度的不同,負(fù)荷預(yù)測主要分為超短期、短期、中期和長期,其中短期負(fù)荷預(yù)測主要對未來24小時或者數(shù)天時間內(nèi)的用電負(fù)荷進(jìn)行預(yù)測[1],它對于發(fā)電機(jī)的投切、機(jī)組的檢修安排、電力營銷等有著重要意義,精準(zhǔn)的負(fù)荷預(yù)測有利于發(fā)電設(shè)備的充分利用,能有效降低電網(wǎng)的運(yùn)營成本[2]。

國內(nèi)外對于負(fù)荷預(yù)測算法的研究工作有許多,其中具有代表性的算法主要包括:支持向量[3]、隨機(jī)森林[4]、卡爾曼濾波法[5]與人工神經(jīng)網(wǎng)絡(luò)[6]等。文獻(xiàn)[7]使用粒子群算法對反向神經(jīng)網(wǎng)絡(luò)進(jìn)行初始化,并且引入了遺傳算法,優(yōu)化網(wǎng)絡(luò)初始權(quán)值,從而提高了模型的性能。文獻(xiàn)[8]將深度信念網(wǎng)絡(luò)模型(DBN)與支持向量機(jī)(SVR)相結(jié)合,使得模型具有更高的準(zhǔn)確性。文獻(xiàn)[9-10]探討了BP神經(jīng)網(wǎng)絡(luò)在負(fù)荷預(yù)測中的應(yīng)用,文獻(xiàn)[11]使用了模糊神經(jīng)網(wǎng)絡(luò)進(jìn)行負(fù)荷預(yù)測。文獻(xiàn)[12]采用了EMD算法對負(fù)荷數(shù)據(jù)進(jìn)行分解,然后對于分解得到的各個平穩(wěn)分量建立預(yù)測模型,最終在更加平穩(wěn)的分量中取得了更高的精度。文獻(xiàn)[13]和文獻(xiàn)[14]分別通過改進(jìn)的果蠅算法和粒子群算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)權(quán)值和閾值,從而提高預(yù)測精度。但是傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)沒有考慮到負(fù)荷在時間序列上的關(guān)系,所以在一定程度上不能很好地擬合時間序列上的負(fù)荷曲線。

長短期記憶網(wǎng)絡(luò)((Long Short-term Memory,LSTM)同時兼顧非線性與時序性,被廣泛應(yīng)用于語音識別、機(jī)器翻譯等領(lǐng)域[15]?;陔娏ω?fù)荷在時間序列上的特性,文獻(xiàn)[16]提出用LSTM神經(jīng)網(wǎng)絡(luò)進(jìn)行負(fù)荷預(yù)測,最后經(jīng)實(shí)驗(yàn)表明LSTM的預(yù)測精度比其他模型的精度高。文獻(xiàn)[17]使用CNN對負(fù)荷數(shù)據(jù)進(jìn)行降維,然后將降維后的數(shù)據(jù)作為LSTM的輸入,這在一定程度上提高了LSTM的預(yù)測精度。

鑒于上述模型都無法對預(yù)測結(jié)果進(jìn)行誤差修正,本文提出SAE與CEEMDAN-BiLSTM組合的短期電力負(fù)荷預(yù)測模型,算法首先使用SAE模型學(xué)習(xí)負(fù)荷序列的主要特征,誤差特征主要體現(xiàn)在SAE模型預(yù)測過程中所產(chǎn)生的誤差序列中;然后使用CEEMDAN算法將誤差序列分解為數(shù)個IMF分量與殘余分量,建立BiLSTM模型學(xué)習(xí)每個誤差分量的時序特征,將各個分量的BiLSTM模型的預(yù)測值相加得到誤差的預(yù)測值;最后使兩部分的預(yù)測值相加從而達(dá)到修正誤差的效果。實(shí)驗(yàn)結(jié)果表明:SAE與CEEMDAN-BiLSTM的組合模型具有更好的預(yù)測精度,能夠?yàn)殡娏ο到y(tǒng)的調(diào)度和生產(chǎn)計劃提供更加有效的科學(xué)依據(jù)。

1 SAE與CEEMDAN-BiLSTM的組合模型

1.1 棧式自編碼器

自編碼器(autoencoder,AE)作為棧式自動編碼器(Stacked AutoEncoder,SAE)的基本組成部分,其結(jié)構(gòu)類似于三層神經(jīng)網(wǎng)絡(luò),是一種無監(jiān)督學(xué)習(xí),主要由輸入的編碼器與輸出的解碼器構(gòu)成,一般用于數(shù)據(jù)的降維與去噪,功能類似于主成分分析PCA。如果使用適當(dāng)?shù)木S度和稀疏性約束,會得到比PCA更好的數(shù)據(jù)投影效果。自編碼器的輸入節(jié)點(diǎn)等于輸出節(jié)點(diǎn),通過一個恒等的函數(shù),可以對數(shù)據(jù)進(jìn)行重構(gòu)。

對于輸入的編碼器,其計算公式如下:

y=f(Wx+b1)

(1)

式中:y表示編碼器的輸出;x表示解碼器的輸入;f表示激活函數(shù),一般為Sigmoid函數(shù);W和b1分別表示輸入層到隱藏層的權(quán)重與偏置。

對于輸出的解碼器,其計算公式如下:

z=f(WTy+b2)

(2)

式中:z表示解碼器的輸出;WT和b2表示輸入層到隱藏層的權(quán)重與偏置。這樣通過調(diào)整網(wǎng)絡(luò)的參數(shù),可以使最終輸出的z盡可能地接近于自編碼器輸入的x,從而達(dá)到重構(gòu)輸入數(shù)據(jù)的目的。

自編碼器通過反向傳播的方式使重構(gòu)的誤差最小,與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)一樣,自編碼器也是通過最小化損失函數(shù)來調(diào)整網(wǎng)絡(luò)結(jié)構(gòu)中的參數(shù),損失函數(shù)的公式如下:

(3)

棧式自動編碼器由多個自編碼器堆疊而成,其訓(xùn)練過程一般分為無監(jiān)督預(yù)訓(xùn)練階段和有監(jiān)督訓(xùn)練階段。在無監(jiān)督預(yù)訓(xùn)練階段,它可以逐層提取數(shù)據(jù)的高階特征,逐步降低數(shù)據(jù)的維度,將復(fù)雜的數(shù)據(jù)轉(zhuǎn)化為簡單的特征序列。在有監(jiān)督訓(xùn)練階段,棧式自動編碼器將無監(jiān)督訓(xùn)練過程中得到的特征序列輸入到一個分離器中進(jìn)行分類。SAE的訓(xùn)練過程主要分為以下三步,如圖1所示。

圖1 SAE的訓(xùn)練過程

(1) 首先使用自編碼器訓(xùn)練從輸入層X到隱藏層H之間的參數(shù),訓(xùn)練結(jié)束后,去除自編碼器的輸出層x,接著將AE1的隱藏層H的輸出作為AE2的輸入,采用相同的辦法訓(xùn)練自編碼器AE2。

(2) 重復(fù)步驟(1),直到初始化所有的自編碼器參數(shù)。

(3) 將最后一個自編碼器隱藏層的輸出連接到分離器中,以有監(jiān)督的方式進(jìn)行訓(xùn)練。

1.2 CEEMDAN原理

CEEMDAN在EEMD分解的過程中添加自適應(yīng)的白噪聲并且計算唯一的余量信號以獲取IMF分量,可以在較少的實(shí)驗(yàn)次數(shù)中對信號進(jìn)行序列重構(gòu),消除了EEMD分解過程產(chǎn)生的殘余信號中由于添加自適應(yīng)白噪聲所產(chǎn)生的誤差。

定義計算符Ei()表示使用EMD分解產(chǎn)生的第i個IMF分量,CEEMDAN算法的計算步驟如下。

(1) 在k次實(shí)驗(yàn)中,對原始信號xt+δ0ωj進(jìn)行分解,其中:δ0表示高斯白噪聲的標(biāo)準(zhǔn)差;ωj表示高斯白噪聲。通過EMD分解得到第一個IMF分量并獲取唯一的余量信號r1(t)。

(4)

r1(t)=x(t)-IMF1(t)

(5)

(2) 繼續(xù)獲取第二個IMF分量:

(6)

(3) 重復(fù)以上步驟,計算第n個余量信號:

rn(t)=rn-1(t)-IMFk(t)

(7)

則第n+1個IMF分量為:

(8)

(4) 重復(fù)步驟(3),直到余量信號呈單調(diào)趨勢,分解停止原始信號x(t)被分解為:

(9)

式中:N為最終模態(tài)分量的個數(shù);r(t)為最終單調(diào)的余量信號。

1.3 LSTM循環(huán)網(wǎng)絡(luò)

圖2 LSTM結(jié)構(gòu)

LSTM在每個隱藏層內(nèi)都接收上一時刻的輸出和當(dāng)前時刻的輸入及當(dāng)前的隱藏層狀態(tài),并且通過輸入門、遺忘門、輸出門來控制和更新當(dāng)前隱藏層的狀態(tài),最后將更新結(jié)果輸出。計算公式如式(10)-式(15)所示。

ft=σ(Wf·[ht-1,xt]+bf)

(10)

it=σ(Wi·[ht-1,xt]+bi)

(11)

(12)

(13)

ot=σ(Wo·[ht-1,xt]+bo)

(14)

ht=ot*tanh(ct)

(15)

式中:Wf、Wi、Wc和Wo分別表示遺忘門、輸出門、記憶狀態(tài)和輸出門的權(quán)重矩陣;bf、bi、bc和bo分別表示對應(yīng)的偏置向量;σ為激活函數(shù)Sigmoid;*表示點(diǎn)乘。

1.4 BiLSTM算法

首先使用EMD算法將負(fù)荷數(shù)據(jù)分解為數(shù)個本征模態(tài)函數(shù)(IMF)與殘余分量r(t),然后對于每個分量建立BiLSTM模型。BiLSTM是由前向LSTM網(wǎng)絡(luò)與后向LSTM網(wǎng)絡(luò)構(gòu)成,其結(jié)構(gòu)如圖3所示。

圖3 BiLSTM結(jié)構(gòu)

BiLSTM神經(jīng)網(wǎng)絡(luò)會基于整個時間序列作出預(yù)測,它將隱藏層劃分為前向與后向兩個對立的部分,分別讀取過去與未來時刻的信息。第一層前向LSTM計算當(dāng)前時刻序列的順序信息,第二層后向LSTM計算相同時刻序列的逆序信息,最后BiLSTM在t時刻的隱藏層狀態(tài)由前向隱藏層狀態(tài)和后向隱藏層狀態(tài)加權(quán)得到。其計算公式如下:

(16)

(17)

(18)

2 實(shí)驗(yàn)數(shù)據(jù)

現(xiàn)有美國某電力市場2015年的樣本數(shù)據(jù)集,數(shù)據(jù)集的采樣周期為30 min。實(shí)驗(yàn)所用特征包括:負(fù)荷值、氣象因素、節(jié)假日類型和氣溫。實(shí)驗(yàn)數(shù)據(jù)如表1所示。

表1 實(shí)驗(yàn)數(shù)據(jù)

部分?jǐn)?shù)據(jù)用虛擬編碼模式表示,以{0,1,2}表示{工作日,休息日,節(jié)假日}。降雨{有,無}表示為{0,1}。

實(shí)驗(yàn)采用全年數(shù)據(jù)集6月至8月共計92天的數(shù)據(jù)作為訓(xùn)練集,以9月1日至9月11日的數(shù)據(jù)共計11天的數(shù)據(jù)作為測試集,以歷史48個時刻點(diǎn)的數(shù)據(jù)預(yù)測未來48個時刻點(diǎn)的負(fù)荷數(shù)據(jù)。

將93天的訓(xùn)練集轉(zhuǎn)化為的三維矩陣,三維矩陣的維度信息為:

{D1D2…D92}×{L1L2…L48}×{X1X2…X8}

(19)

式中:{D1D2…D92}表示數(shù)據(jù)集長度為92天;{L1L2…L48}表示每天所包含的48個時刻的數(shù)據(jù);{X1X2…X8}表示數(shù)據(jù)集的8維特征。

同理,測試集的維度信息為:

{D1D2…D11}×{L1L2…L48}×{X1X2…X8}

(20)

同時BiLSTM與其他機(jī)器學(xué)習(xí)預(yù)測方法一樣,對數(shù)據(jù)的尺度比較敏感,所以這里采用MaxMin的方法對數(shù)據(jù)進(jìn)行歸一化處理,將所有數(shù)據(jù)的值域歸一化到[0,1]范圍內(nèi),然后將歸一化的數(shù)據(jù)傳入到模型中,最后將模型的輸出結(jié)果進(jìn)行反歸一化,計算的公式如下:

(21)

3 算例分析

3.1 SAE-CEEMDAN-BiLSTM模型計算流程

(1) 負(fù)荷預(yù)測。使用包含氣象因素、工作日類型的訓(xùn)練集對SAE模型進(jìn)行有監(jiān)督訓(xùn)練,待模型收斂后對訓(xùn)練集與測試集進(jìn)行預(yù)測,得到測試集的預(yù)測值Pb,并且根據(jù)下式得到SAE訓(xùn)練過程中產(chǎn)生的誤差序列Pe:

Pe=Pbtrain-Ttrain

(22)

式中:Pbtrain為訓(xùn)練集的預(yù)測值;Ttrain為訓(xùn)練集的真實(shí)值。

(3) 計算組合模型的預(yù)測值。SAE-CEEMDAN-BiLSTM模型的預(yù)測結(jié)果P為測試集的預(yù)測值與誤差的預(yù)測值之和,即:

(23)

SAE與CEEMDAN-BiLSTM組合模型的預(yù)測流程如圖4所示。

圖4 預(yù)測流程

3.2 模型訓(xùn)練方法

模型的訓(xùn)練過程采用Adam優(yōu)化算法。Adam結(jié)合了RMSprop善于處理非平穩(wěn)目標(biāo)與Adagrad善于處理稀疏梯度的優(yōu)點(diǎn),其計算公式如下:

mt=μ*mt-1+(1-μ)*gt

(24)

(25)

(26)

(27)

(28)

式中:gt表示梯度;為平滑指數(shù),主要用于防止分母為零;μ與v表示動量因子;mt與nt是對梯度的一階矩陣估計,可以看作是對期望E|gt|和的估計;與是對mt與nt的修正,這樣就可以對期望進(jìn)行近似的無偏估計。

3.3 模型的評價指標(biāo)

模型的評價指標(biāo)通常采用平均絕對百分誤差(Mean Absolute Percentage Error,MAPE),其計算的公式如下:

(29)

3.4 SAE模型訓(xùn)練與預(yù)測

實(shí)驗(yàn)在Ubuntu 18.04系統(tǒng)下利用Pytorch1.10完成,實(shí)驗(yàn)PC的處理器為Inter Core i5- 8300H,內(nèi)存為16 GB,顯卡為NVIDIA GeForce GTX 1050TI。

在無監(jiān)督訓(xùn)練階段,將SAE中的自編碼器基本單元個數(shù)設(shè)置為3,每個自編碼器輸入節(jié)點(diǎn)個數(shù)為48,隱藏節(jié)點(diǎn)為16,激活函數(shù)設(shè)置為ReLU,設(shè)定學(xué)習(xí)率η=0.1,最大迭代次數(shù)n=40 000。在有監(jiān)督訓(xùn)練階段,將分離器的輸出節(jié)點(diǎn)設(shè)置為48,以梯度下降的方法對網(wǎng)絡(luò)參數(shù)進(jìn)行優(yōu)化。

SAE模型收斂后,將訓(xùn)練集中的數(shù)據(jù)按照時間先后順序依次輸入至訓(xùn)練完畢的模型中,得到訓(xùn)練集的預(yù)測結(jié)果Pbtrain,如圖5所示。同時根據(jù)式(22)可以求得SAE模型在預(yù)測過程中產(chǎn)生的誤差序列Pe,如圖6所示。

圖5 SAE模型的預(yù)測結(jié)果

3.5 CEEMDAN誤差序列分解

設(shè)定CEEMDAN算法的總體集成次數(shù)為400,加入白噪聲標(biāo)準(zhǔn)差為0.2,利用CEEMDAN算法將Pe分為9個IMF分量與1個殘余分量,實(shí)驗(yàn)仿真結(jié)果如圖7所示。

圖7 CEEMDAN分解結(jié)果

可以看出,IMF1-IMF4分量的頻率較高且周期性不明顯,可以看作負(fù)荷序列的高頻分量。IMF5-IMF7分量的周期性明顯,可以看作負(fù)荷序列的周期分量。IMF8、IMF9分量的頻率較低且周期性不明顯,可以看作負(fù)荷序列的低頻分量。Residual為序列的殘余分量。

3.6 BiLSTM網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計

將CEEMDAN算法分解得到的9個IMF分量與1個殘余分量分別建立BiLSTM模型,將前向LSTM與后向LSTM輸入節(jié)點(diǎn)設(shè)置為1,表示每次讀取一個時刻點(diǎn)的負(fù)荷數(shù)據(jù),將隱藏層節(jié)點(diǎn)設(shè)置為12,分別為當(dāng)前時間點(diǎn)前后12個時刻的誤差信息。將輸出節(jié)點(diǎn)設(shè)置為1,為第13個時間點(diǎn)的誤差預(yù)測值。設(shè)置學(xué)習(xí)率為0.001,同時為BiLSTM網(wǎng)絡(luò)的輸出層再加上一層線性全連接層,激活函數(shù)設(shè)置為tanh。

設(shè)定BiLSTM模型的訓(xùn)練方式為:通過歷史48個時刻點(diǎn)的誤差序列預(yù)測未來48個時刻點(diǎn)的誤差序列,因此以6月1日至8月30日的誤差序列作為網(wǎng)絡(luò)的輸入,以6月2日至8月31日的誤差序列作為網(wǎng)絡(luò)的輸出,以Adam算法訓(xùn)練網(wǎng)絡(luò)。BiLSTM網(wǎng)絡(luò)參數(shù)如圖8所示,以BiLSTM層的輸入層為例,{91,48,1}={輸入數(shù)據(jù)集長度為91天,每日包含的48個時刻點(diǎn),當(dāng)前時刻的誤差值}。

圖8 BiLSTM網(wǎng)絡(luò)結(jié)構(gòu)

3.7 預(yù)測分量重構(gòu)

將各個IMF分量ci(t)以及殘差分量rn(t)的預(yù)測值進(jìn)行累加得到誤差的預(yù)測值,如式(30)所示。

(30)

式中:p(t)為重構(gòu)后的誤差數(shù)據(jù)。

3.8 實(shí)驗(yàn)過程及結(jié)果分析

實(shí)驗(yàn)首先通過9月2日的48個時刻點(diǎn)的數(shù)據(jù)預(yù)測9月3日48個時刻點(diǎn)的負(fù)荷數(shù)據(jù)。

圖9 9月3日預(yù)測曲線

為了進(jìn)一步驗(yàn)證本文組合模型的有效性,以同樣的方法對測試集中其余日期的數(shù)據(jù)進(jìn)行預(yù)測,日均誤差曲線如圖10所示。

圖10 三種模型日誤差對比

圖10中9月4日至5日為雙休日,9月7日為美國勞動節(jié)。由圖9與圖10可以看出,SAE-CEEMDAN-BILSTM模型對負(fù)荷序列的擬合程度最高,具有很好的預(yù)測精度,即使在雙休日、勞動節(jié)期間該模型的誤差率也是最低;SAE-BiLSTM模型以BiLSTM作為誤差修正模型也取得了不錯的預(yù)測精度,但整體上還是比SAE-CEEMDAN-BILSTM模型的預(yù)測精度低;而SAE模型由于沒有進(jìn)行誤差修正,所以在3種模型中表現(xiàn)最差。取平均絕對百分誤差(MAPE)、最大絕對百分誤差(Max)和最小絕對百分誤差(Min)三種指標(biāo)進(jìn)行比較,結(jié)果如表2所示。

表2 性能對比(%)

綜合上述實(shí)驗(yàn)結(jié)果,可以得出以下結(jié)論:

(1) 由圖9、圖10可知SAE模型由于沒有進(jìn)行誤差修正,所預(yù)測精度相對較低,在測試集中平均準(zhǔn)確率為93.92%。SAE-BiLSTM模型使用BiLSTM作為誤差修正模型,所以預(yù)測精度高于SAE模型,測試集中平均準(zhǔn)確率為96.52%。而SAE-CEEMDAN-BILSTM模型所使用的誤差修正模型可以在不同時間尺度上計算誤差序列,提高了預(yù)測精度,所以日均準(zhǔn)確率在3種模型中最優(yōu),測試集中平均準(zhǔn)確率達(dá)到了97.91%。

(2) 由表2可知,SAE-CEEMDAN-BILSTM模型的三種評價指標(biāo)均優(yōu)于其余兩種模型,說明該組合模型的預(yù)測效果最好;兩種組合模型的三種評價指標(biāo)均優(yōu)于傳統(tǒng)的SAE模型,說明引入誤差修正模型能提高模型的預(yù)測精度。

(3) 由圖10可知,SAE-CEEMDAN-BILSTM模型并不是在每一日的預(yù)測精度都達(dá)到最優(yōu),比如在9月10日其預(yù)測精度低于SAE-BiLSTM模型,但從總體上看,SAE-CEEMDAN-BILSTM模型相比其他兩種模型具有更好的準(zhǔn)確性與穩(wěn)定性。

4 結(jié) 語

本文分析了SAE模型以及CEEMDAN-BILSTM模型的原理,將兩種模型進(jìn)行組合,提出了SAE與CEEMDAN-BILSTM的組合模型,并且將這種組合模型應(yīng)用到電力系統(tǒng)負(fù)荷預(yù)測中。經(jīng)過多次實(shí)驗(yàn)以及反復(fù)驗(yàn)證,通過對比SAE-BiLSTM模型以及單一的SAE模型可以得出結(jié)論:SAE與CEEMDAN-BiLSTM的組合模型應(yīng)用在電力系統(tǒng)負(fù)荷預(yù)測具有更好的準(zhǔn)確性與穩(wěn)定性。但隨著預(yù)測步長的增加,模型的預(yù)測精度可能會隨之降低,下一步將考慮更多影響負(fù)荷序列的因素以增加數(shù)據(jù)集的特征維度。

猜你喜歡
編碼器分量負(fù)荷
基于ResNet18特征編碼器的水稻病蟲害圖像描述生成
人造革合成革拉伸負(fù)荷測量不確定度評定
3項(xiàng)標(biāo)準(zhǔn)中維持熱負(fù)荷要求對比分析
MIV-PSO-BP神經(jīng)網(wǎng)絡(luò)用戶熱負(fù)荷預(yù)測
基于Beaglebone Black 的絕對式編碼器接口電路設(shè)計*
畫里有話
一斤生漆的“分量”——“漆農(nóng)”劉照元的平常生活
一物千斤
生如夏花
論《哈姆雷特》中良心的分量
正镶白旗| 广南县| 吴江市| 延吉市| 德化县| 丹东市| 林周县| 锡林浩特市| 东乌珠穆沁旗| 南投市| 万年县| 房山区| 富顺县| 安宁市| 伊金霍洛旗| 蕲春县| 芒康县| 尼木县| 苗栗市| 乌审旗| 乡宁县| 西乌珠穆沁旗| 朝阳县| 平乡县| 华池县| 双牌县| 莆田市| 精河县| 怀远县| 昌都县| 政和县| 芷江| 含山县| 南江县| 鄂尔多斯市| 沙洋县| 普格县| 伽师县| 乐都县| 昭觉县| 太湖县|