日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

python用电预测_Python中利用长短期记忆模型LSTM进行时间序列预测分析-预测电力消耗数据...

發(fā)布時間:2025/3/19 python 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python用电预测_Python中利用长短期记忆模型LSTM进行时间序列预测分析-预测电力消耗数据... 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

此示例中,神經(jīng)網(wǎng)絡(luò)用于使用2011年4月至2013年2月期間的數(shù)據(jù)預(yù)測都柏林市議會公民辦公室的能源消耗。

每日數(shù)據(jù)是通過總計每天提供的15分鐘間隔的消耗量來創(chuàng)建的。

LSTM簡介

LSTM(或長期短期存儲器網(wǎng)絡(luò))允許分析具有長期依賴性的順序或有序數(shù)據(jù)。當(dāng)涉及到這項任務(wù)時,傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)不足,在這方面,LSTM將用于預(yù)測這種情況下的電力消耗模式。

與ARIMA等模型相比,LSTM的一個特殊優(yōu)勢是數(shù)據(jù)不一定需要是固定的(常數(shù)均值,方差和自相關(guān)),以便LSTM對其進(jìn)行分析 - 即使這樣做可能會導(dǎo)致性能提升。

自相關(guān)圖,Dickey-Fuller測試和對數(shù)變換

為了確定我們的模型中是否存在平穩(wěn)性:

生成自相關(guān)和部分自相關(guān)圖

進(jìn)行Dickey-Fuller測試

對時間序列進(jìn)行對數(shù)變換,并再次運(yùn)行上述兩個過程,以確定平穩(wěn)性的變化(如果有的話)

首先,這是時間序列圖:

need-to-insert-img

need-to-insert-img

據(jù)觀察,波動性(或消費(fèi)從一天到下一天的變化)非常高。在這方面,對數(shù)變換可以用于嘗試稍微平滑該數(shù)據(jù)。在此之前,生成ACF和PACF圖,并進(jìn)行Dickey-Fuller測試。

自相關(guān)圖

need-to-insert-img

部分自相關(guān)圖

need-to-insert-img

自相關(guān)和部分自相關(guān)圖都表現(xiàn)出顯著的波動性,這意味著時間序列中的幾個區(qū)間存在相關(guān)性。

運(yùn)行Dickey-Fuller測試時,會產(chǎn)生以下結(jié)果:

當(dāng)p值高于0.05時,不能拒絕非平穩(wěn)性的零假設(shè)。

need-to-insert-img

STD1 954.7248 4043.4302 0.23611754

need-to-insert-img

變異系數(shù)(或平均值除以標(biāo)準(zhǔn)差)為0.236,表明該系列具有顯著的波動性。

現(xiàn)在,數(shù)據(jù)被轉(zhuǎn)換為對數(shù)格式。

雖然時間序列仍然不穩(wěn)定,但當(dāng)以對數(shù)格式表示時,偏差的大小略有下降:

need-to-insert-img

need-to-insert-img

此外,變異系數(shù)已顯著下降至0.0319,這意味著與平均值相關(guān)的趨勢的可變性顯著低于先前。

STD2 = np.std(數(shù)據(jù)集) mean2 = np.mean(數(shù)據(jù)集) cv2 = std2 / mean2 #Cafficient of Variation

need-to-insert-img

std2 0.26462445

need-to-insert-img

mean2 8.272395

need-to-insert-img

cv2 0.031988855

need-to-insert-img

同樣,在對數(shù)數(shù)據(jù)上生成ACF和PACF圖,并再次進(jìn)行Dickey-Fuller測試。

自相關(guān)圖

need-to-insert-img

偏自相關(guān)圖

need-to-insert-img

Dickey-Fuller測試

... print('\ t%s:%。3f'%(鍵,值)) 1%:-3.440 5%: - 2.866 10%: - 2.569

need-to-insert-img

Dickey-Fuller檢驗的p值降至0.0576。雖然這在技術(shù)上沒有輸入拒絕零假設(shè)所需的5%顯著性閾值,但對數(shù)時間序列已顯示基于CV度量的較低波動率,因此該時間序列用于LSTM的預(yù)測目的。

LSTM的時間序列分析

現(xiàn)在,LSTM模型本身用于預(yù)測目的。

數(shù)據(jù)處理

首先,導(dǎo)入相關(guān)庫并執(zhí)行數(shù)據(jù)處理

LSTM生成和預(yù)測

模型訓(xùn)練超過100個時期,并生成預(yù)測。

#生成LSTM網(wǎng)絡(luò) model = Sequential() model.add(LSTM(4,input_shape =(1,previous))) model.fit(X_train,Y_train,epochs = 100,batch_size = 1,verbose = 2) #生成預(yù)測 trainpred = model.predict(X_train) #將預(yù)測轉(zhuǎn)換回正常值 trainpred = scaler.inverse_transform(trainpred) #calculate RMSE trainScore = math.sqrt(mean_squared_error(Y_train [0],trainpred [:,0])) #訓(xùn)練預(yù)測 trainpredPlot = np.empty_like(dataset) #測試預(yù)測 #繪制所有預(yù)測 inversetransform,= plt.plot(scaler.inverse_transform(dataset))

need-to-insert-img

準(zhǔn)確性

該模型顯示訓(xùn)練數(shù)據(jù)集的均方根誤差為0.24,測試數(shù)據(jù)集的均方根誤差為0.23。平均千瓦消耗量(以對數(shù)格式表示)為8.27,這意味著0.23的誤差小于平均消耗量的3%。

以下是預(yù)測消費(fèi)與實(shí)際消費(fèi)量的關(guān)系圖:

need-to-insert-img

有趣的是,當(dāng)在原始數(shù)據(jù)上生成預(yù)測(未轉(zhuǎn)換為對數(shù)格式)時,會產(chǎn)生以下訓(xùn)練和測試錯誤:

在每天平均消耗4043千瓦的情況下,測試分?jǐn)?shù)的均方誤差占總?cè)站牧康慕?0%,并且與對數(shù)數(shù)據(jù)產(chǎn)生的相比非常高。

need-to-insert-img

也就是說,重要的是要記住,使用1天的先前數(shù)據(jù)進(jìn)行預(yù)測,即Y表示時間t的消耗,而X表示時間t-1的消耗,由代碼中的前一個變量設(shè)置先前。讓我們來看看這增加到個究竟10和50天。

10天

need-to-insert-img

need-to-insert-img

50天

need-to-insert-img

need-to-insert-img

我們可以看到測試誤差在10天和50天期間顯著降低,并且考慮到LSTM模型在預(yù)測時考慮了更多的歷史數(shù)據(jù),消耗的波動性得到了更好的捕獲。

鑒于數(shù)據(jù)是對數(shù)格式,現(xiàn)在可以通過獲得數(shù)據(jù)的指數(shù)來獲得預(yù)測的真實(shí)值。

例如,testpred變量用(1,-1)重新整形:

testpred.reshape(1,-1) array([[7.7722197,8.277015,8.458941,8.455311,8.447589,8.445035, ...... 8.425287,8.404881,8.457063,8.423954,7.98714,7.9003944, 8.240862,8.41654,8.423854,8.437414,8.397851,7.9047146]], dtype = float32)

need-to-insert-img

結(jié)論

對于這個例子,LSTM被證明在預(yù)測電力消耗波動方面非常準(zhǔn)確。此外,以對數(shù)格式表示時間序列允許平滑數(shù)據(jù)的波動性并提高LSTM的預(yù)測準(zhǔn)確度。

need-to-insert-img

與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的python用电预测_Python中利用长短期记忆模型LSTM进行时间序列预测分析-预测电力消耗数据...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。