最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Python中利用長短期記憶模型LSTM進行時間序列預(yù)測分析 - 預(yù)測電力負(fù)荷數(shù)據(jù)|附代碼數(shù)據(jù)

2022-11-04 23:30 作者:拓端tecdat  | 我要投稿

原文鏈接:http://tecdat.cn/?p=6663

此示例中,神經(jīng)網(wǎng)絡(luò)用于使用2011年4月至2013年2月期間的數(shù)據(jù)預(yù)測公民辦公室的電力消耗點擊文末“閱讀原文”獲取完整代碼數(shù)據(jù))。

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

LSTM簡介

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

拓端數(shù)據(jù)部落

,贊9

與ARIMA等模型相比,LSTM的一個特殊優(yōu)勢是數(shù)據(jù)不一定需要是穩(wěn)定的(常數(shù)均值,方差和自相關(guān)),以便LSTM對其進行分析。

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

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

  • 生成自相關(guān)和偏自相關(guān)圖

  • 進行Dickey-Fuller測試

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

首先,這是時間序列圖:

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

自相關(guān)圖

點擊標(biāo)題查閱往期內(nèi)容

在Python中使用LSTM和PyTorch進行時間序列預(yù)測

轉(zhuǎn)存失敗重新上傳取消

左右滑動查看更多

轉(zhuǎn)存失敗重新上傳取消

01

02

03

04

偏自相關(guān)圖

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

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

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

?? ?STD1 954.7248 4043.4302 0.23611754

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

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

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

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

STD2?=?np.std(數(shù)據(jù)集) mean2?=?np.mean(數(shù)據(jù)集) CV2?=?std2?/?mean2?#變異系數(shù)std2 ?0.26462445mean2 ?8.272395CV2 ?0.031988855

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

自相關(guān)圖

偏自相關(guān)圖

Dickey-Fuller測試

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

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) #將標(biāo)準(zhǔn)化后的數(shù)據(jù)轉(zhuǎn)換為原始數(shù)據(jù) trainpred?=?scaler.inverse_transform(trainpred) #計算?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))

準(zhǔn)確性

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

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

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

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

讓我們來看看這增加預(yù)測到10和50天。

10天

50天

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

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

例如,testpred變量用(1,-1)重新調(diào)整:

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)

結(jié)論

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

本文摘選Python中利用長短期記憶模型LSTM進行時間序列預(yù)測分析 - 預(yù)測電力負(fù)荷數(shù)據(jù),點擊“閱讀原文”獲取全文完整資料。

點擊標(biāo)題查閱往期內(nèi)容

RNN循環(huán)神經(jīng)網(wǎng)絡(luò) 、LSTM長短期記憶網(wǎng)絡(luò)實現(xiàn)時間序列長期利率預(yù)測

結(jié)合新冠疫情COVID-19股票價格預(yù)測:ARIMA,KNN和神經(jīng)網(wǎng)絡(luò)時間序列分析

深度學(xué)習(xí):Keras使用神經(jīng)網(wǎng)絡(luò)進行簡單文本分類分析新聞組數(shù)據(jù)

用PyTorch機器學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)分類預(yù)測銀行客戶流失模型

PYTHON用LSTM長短期記憶神經(jīng)網(wǎng)絡(luò)的參數(shù)優(yōu)化方法預(yù)測時間序列洗發(fā)水銷售數(shù)據(jù)

Python用Keras神經(jīng)網(wǎng)絡(luò)序列模型回歸擬合預(yù)測、準(zhǔn)確度檢查和結(jié)果可視化

Python用LSTM長短期記憶神經(jīng)網(wǎng)絡(luò)對不穩(wěn)定降雨量時間序列進行預(yù)測分析

R語言中的神經(jīng)網(wǎng)絡(luò)預(yù)測時間序列:多層感知器(MLP)和極限學(xué)習(xí)機(ELM)數(shù)據(jù)分析報告

R語言深度學(xué)習(xí):用keras神經(jīng)網(wǎng)絡(luò)回歸模型預(yù)測時間序列數(shù)據(jù)

Matlab用深度學(xué)習(xí)長短期記憶(LSTM)神經(jīng)網(wǎng)絡(luò)對文本數(shù)據(jù)進行分類

R語言KERAS深度學(xué)習(xí)CNN卷積神經(jīng)網(wǎng)絡(luò)分類識別手寫數(shù)字圖像數(shù)據(jù)(MNIST)

MATLAB中用BP神經(jīng)網(wǎng)絡(luò)預(yù)測人體脂肪百分比數(shù)據(jù)

Python中用PyTorch機器學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)分類預(yù)測銀行客戶流失模型

R語言實現(xiàn)CNN(卷積神經(jīng)網(wǎng)絡(luò))模型進行回歸數(shù)據(jù)分析

SAS使用鳶尾花(iris)數(shù)據(jù)集訓(xùn)練人工神經(jīng)網(wǎng)絡(luò)(ANN)模型

【視頻】R語言實現(xiàn)CNN(卷積神經(jīng)網(wǎng)絡(luò))模型進行回歸數(shù)據(jù)分析

Python使用神經(jīng)網(wǎng)絡(luò)進行簡單文本分類

R語言用神經(jīng)網(wǎng)絡(luò)改進Nelson-Siegel模型擬合收益率曲線分析

R語言基于遞歸神經(jīng)網(wǎng)絡(luò)RNN的溫度時間序列預(yù)測

R語言神經(jīng)網(wǎng)絡(luò)模型預(yù)測車輛數(shù)量時間序列

R語言中的BP神經(jīng)網(wǎng)絡(luò)模型分析學(xué)生成績

matlab使用長短期記憶(LSTM)神經(jīng)網(wǎng)絡(luò)對序列數(shù)據(jù)進行分類

R語言實現(xiàn)擬合神經(jīng)網(wǎng)絡(luò)預(yù)測和結(jié)果可視化

用R語言實現(xiàn)神經(jīng)網(wǎng)絡(luò)預(yù)測股票實例

使用PYTHON中KERAS的LSTM遞歸神經(jīng)網(wǎng)絡(luò)進行時間序列預(yù)測

python用于NLP的seq2seq模型實例:用Keras實現(xiàn)神經(jīng)網(wǎng)絡(luò)機器翻譯

用于NLP的Python:使用Keras的多標(biāo)簽文本LSTM神經(jīng)網(wǎng)絡(luò)分類


Python中利用長短期記憶模型LSTM進行時間序列預(yù)測分析 - 預(yù)測電力負(fù)荷數(shù)據(jù)|附代碼數(shù)據(jù)的評論 (共 條)

分享到微博請遵守國家法律
呼和浩特市| 岑巩县| 宁安市| 平乡县| 岑溪市| 三明市| 岱山县| 黄梅县| 宿松县| 白河县| 印江| 浮山县| 呼玛县| 北安市| 江达县| 永修县| 偏关县| 浠水县| 信丰县| 刚察县| 芜湖市| 绥芬河市| 罗甸县| 苗栗市| 睢宁县| 兴国县| 米易县| 凤城市| 恩施市| 逊克县| 临江市| 崇信县| 黄平县| 松桃| 视频| 分宜县| 长葛市| 象州县| 田东县| 鹤庆县| 南丰县|