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

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

【視頻】Python用LSTM長短期記憶神經(jīng)網(wǎng)絡(luò)對(duì)不穩(wěn)定降雨量時(shí)間序列進(jìn)行預(yù)測分析|數(shù)據(jù)分

2022-11-25 18:16 作者:拓端tecdat  | 我要投稿

全文下載鏈接:http://tecdat.cn/?p=23544?

在本文中,長短期記憶網(wǎng)絡(luò)——通常稱為“LSTM”——是一種特殊的RNN遞歸神經(jīng)網(wǎng)絡(luò),能夠?qū)W習(xí)長期依賴關(guān)系 。 最近我們被客戶要求撰寫關(guān)于LSTM的研究報(bào)告,包括一些圖形和統(tǒng)計(jì)輸出。

什么是依賴關(guān)系?

假設(shè)您在觀看視頻時(shí)記得前一個(gè)場景,或者在閱讀一本書時(shí)您知道前一章發(fā)生了什么。

傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)無法做到這一點(diǎn),這是一個(gè)主要缺點(diǎn)。例如,假設(shè)您想對(duì)電影中每一點(diǎn)發(fā)生的事件進(jìn)行分類。目前尚不清楚傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)如何利用電影中先前事件來推理后來的事件。

遞歸神經(jīng)網(wǎng)絡(luò)解決了這個(gè)問題。它們是帶有循環(huán)的網(wǎng)絡(luò),允許信息持續(xù)存在。循環(huán)神經(jīng)網(wǎng)絡(luò)有循環(huán)。

在上圖中,一大塊神經(jīng)網(wǎng)絡(luò),查看一些輸入x并輸出一個(gè)值h. 循環(huán)允許信息從網(wǎng)絡(luò)的一個(gè)步驟傳遞到下一個(gè)步驟。

這些循環(huán)使循環(huán)神經(jīng)網(wǎng)絡(luò)看起來有點(diǎn)神秘。然而,如果你想得更多,就會(huì)發(fā)現(xiàn)它們與普通的神經(jīng)網(wǎng)絡(luò)并沒有什么不同。循環(huán)神經(jīng)網(wǎng)絡(luò)可以被認(rèn)為是同一網(wǎng)絡(luò)的多個(gè)副本,每個(gè)副本都將消息傳遞給后繼者??紤]一下如果我們展開循環(huán)會(huì)發(fā)生什么:

這種鏈狀性質(zhì)表明循環(huán)神經(jīng)網(wǎng)絡(luò)與序列和列表密切相關(guān)。它們是用于此類數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò)的自然架構(gòu)。在過去的幾年里,將 RNN 應(yīng)用于各種問題取得了令人難以置信的成功:語音識(shí)別、語言建模、翻譯、圖像字幕……不勝枚舉。這些成功的關(guān)鍵是使用“LSTM”,這是一種非常特殊的循環(huán)神經(jīng)網(wǎng)絡(luò),幾乎所有基于循環(huán)神經(jīng)網(wǎng)絡(luò)的令人興奮的結(jié)果都是用它們實(shí)現(xiàn)的。本文將探討的正是這些 LSTM。

長期依賴問題

下面是一個(gè)關(guān)于如何使用循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)來擬合語言模型的例子。

RNN 的吸引力之一是它們可能能夠?qū)⑾惹暗男畔⑴c當(dāng)前任務(wù)聯(lián)系起來,例如使用先前的視頻幀可能會(huì)告知對(duì)當(dāng)前幀的理解。如果 RNN 可以做到這一點(diǎn),它們將非常有用。但他們可以嗎?

有時(shí),我們只需要查看最近的信息即可執(zhí)行當(dāng)前任務(wù)。例如,考慮一個(gè)語言模型試圖根據(jù)之前的單詞預(yù)測下一個(gè)單詞。如果我們?cè)噲D預(yù)測“云在天空”中的最后一個(gè)詞,我們不需要任何進(jìn)一步的上下文——很明顯下一個(gè)詞將是天空。在這種情況下,相關(guān)信息與所需位置之間的差距很小,RNN 可以學(xué)習(xí)使用過去的信息。

但也有我們需要更多上下文的情況??紤]嘗試預(yù)測文本“我在中國長大……我說地道的中文”中的最后一個(gè)詞。最近的信息表明,下一個(gè)詞可能是一種語言的名稱,但如果我們想縮小哪種語言的范圍,我們需要中國的上下文,從更遠(yuǎn)的地方。相關(guān)信息和需要的點(diǎn)之間的差距完全有可能變得非常大。

隨著差距的擴(kuò)大,RNN 變得無法學(xué)習(xí)連接信息。

LSTM 網(wǎng)絡(luò)

長短期記憶網(wǎng)絡(luò)——通常稱為“LSTM”——是一種特殊的 RNN,能夠?qū)W習(xí)長期依賴關(guān)系。它們?cè)诮鉀Q各種各樣的問題時(shí)表現(xiàn)出色,現(xiàn)在被廣泛使用。LSTM 被明確設(shè)計(jì)為避免長期依賴問題。長時(shí)間記住信息實(shí)際上是他們的默認(rèn)行為,而不是他們難以學(xué)習(xí)的東西!

所有循環(huán)神經(jīng)網(wǎng)絡(luò)都具有神經(jīng)網(wǎng)絡(luò)的重復(fù)模塊鏈的形式。在標(biāo)準(zhǔn) RNN 中,此重復(fù)模塊將具有非常簡單的結(jié)構(gòu),例如單個(gè) tanh 層。

LSTM 也有這種鏈狀結(jié)構(gòu),但重復(fù)模塊有不同的結(jié)構(gòu)。不是只有一個(gè)神經(jīng)網(wǎng)絡(luò)層,而是三個(gè)部分組成,以一種非常特殊的方式進(jìn)行交互。

LSTM 的工作方式非常類似于 RNN 單元。這是 LSTM 網(wǎng)絡(luò)的內(nèi)部功能。LSTM 由三個(gè)部分組成,如圖所示,每個(gè)部分執(zhí)行一個(gè)單獨(dú)的功能。第一部分選擇來自前一個(gè)時(shí)間戳的信息是被記住還是不相關(guān)并且可以被遺忘。在第二部分中,單元嘗試從該單元的輸入中學(xué)習(xí)新信息。最后,在第三部分,單元將更新的信息從當(dāng)前時(shí)間戳傳遞到下一個(gè)時(shí)間戳。LSTM 單元的這三個(gè)部分稱為門。第一部分稱為忘記門或遺忘門,第二部分稱為輸入門,最后一部分稱為輸出門。

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

每年的降雨量數(shù)據(jù)可能是相當(dāng)不平穩(wěn)的。與溫度不同,溫度通常在四季中表現(xiàn)出明顯的趨勢,而雨量作為一個(gè)時(shí)間序列可能是相當(dāng)不平穩(wěn)的。夏季的降雨量與冬季的降雨量一樣多是很常見的。

下面是某地區(qū)2020年11月降雨量數(shù)據(jù)?(?查看文末了解數(shù)據(jù)獲取方式?)?的圖解。

作為一個(gè)連續(xù)的神經(jīng)網(wǎng)絡(luò),LSTM模型可以證明在解釋時(shí)間序列的波動(dòng)性方面有優(yōu)勢。

使用Ljung-Box檢驗(yàn),小于0.05的p值表明這個(gè)時(shí)間序列中的殘差表現(xiàn)出隨機(jī)模式,表明有明顯的波動(dòng)性。

>>>?sm.stats.acorr_ljungbox(res.resid,?lags=[10])

Ljung-Box檢驗(yàn)

Dickey-Fuller 檢驗(yàn)

數(shù)據(jù)操作和模型配置

該數(shù)據(jù)集由722個(gè)月的降雨量數(shù)據(jù)組成。

選擇712個(gè)數(shù)據(jù)點(diǎn)用于訓(xùn)練和驗(yàn)證,即用于建立LSTM模型。然后,過去10個(gè)月的數(shù)據(jù)被用來作為測試數(shù)據(jù),與LSTM模型的預(yù)測結(jié)果進(jìn)行比較。

下面是數(shù)據(jù)集的一個(gè)片段。

然后形成一個(gè)數(shù)據(jù)集矩陣,將時(shí)間序列與過去的數(shù)值進(jìn)行回歸。

#?形成數(shù)據(jù)集矩陣????for?i?in?range(len(df)-previous-1): ????????a?=?df[i:(i+previous),?0] ????????dataX.append(a) ????????dataY.append(df[i?+?previous,?0])

然后用MinMaxScaler對(duì)數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化處理。

將前一個(gè)參數(shù)設(shè)置為120,訓(xùn)練和驗(yàn)證數(shù)據(jù)集就建立起來了。作為參考,previous = 120說明模型使用從t - 120到t - 1的過去值來預(yù)測時(shí)間t的雨量值。

前一個(gè)參數(shù)的選擇要經(jīng)過試驗(yàn),但選擇120個(gè)時(shí)間段是為了確保識(shí)別到時(shí)間序列的波動(dòng)性或極端值。

#?訓(xùn)練和驗(yàn)證數(shù)據(jù)的劃分train_size?=?int(len(df)?*?0.8)val_size?=?len(df)?-?train_size train,?val?=?df[0:train_size,:],?df[train_size:len(df),:]#?前期的數(shù)量previous?=?120

然后,輸入被轉(zhuǎn)換為樣本、時(shí)間步驟、特征的格式。

#?轉(zhuǎn)換輸入為[樣本、時(shí)間步驟、特征]。 np.reshape(X_train,?(shape[0],?1,?shape[1]))

模型訓(xùn)練和預(yù)測

該模型在100個(gè)歷時(shí)中進(jìn)行訓(xùn)練,并指定了712個(gè)批次的大?。ǖ扔谟?xùn)練和驗(yàn)證集中的數(shù)據(jù)點(diǎn)數(shù)量)。

#?生成LSTM網(wǎng)絡(luò)model?=?tf.keras.Sequential()#?列出歷史中的所有數(shù)據(jù)print(history.history.keys())#?總結(jié)準(zhǔn)確度變化plt.plot(history.history['loss'])

下面是訓(xùn)練集與驗(yàn)證集的模型損失的關(guān)系圖。

預(yù)測與實(shí)際降雨量的關(guān)系圖也被生成。

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

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

左右滑動(dòng)查看更多

01

02

03

04

#?繪制所有預(yù)測圖plt.plot(valpredPlot)

預(yù)測結(jié)果在平均方向準(zhǔn)確性(MDA)、平均平方根誤差(RMSE)和平均預(yù)測誤差(MFE)的基礎(chǔ)上與驗(yàn)證集進(jìn)行比較。

?mda(Y_val,?predictions)0.9090909090909091>>>?mse?=?mean_squared_error(Y_val,?predictions) >>>?rmse?=?sqrt(mse) >>>?forecast_error >>>?mean_forecast_error?=?np.mean(forecast_error)



  • MDA:?0.909

  • RMSE:?48.5

  • MFE:?-1.77

針對(duì)測試數(shù)據(jù)進(jìn)行預(yù)測

雖然驗(yàn)證集的結(jié)果相當(dāng)可觀,但只有將模型預(yù)測與測試(或未見過的)數(shù)據(jù)相比較,我們才能對(duì)LSTM模型的預(yù)測能力有合理的信心。

如前所述,過去10個(gè)月的降雨數(shù)據(jù)被用作測試集。然后,LSTM模型被用來預(yù)測未來10個(gè)月的情況,然后將預(yù)測結(jié)果與實(shí)際值進(jìn)行比較。

至t-120的先前值被用來預(yù)測時(shí)間t的值。

#?測試(未見過的)預(yù)測np.array([tseries.iloctseries.iloc,t

獲得的結(jié)果如下

  • MDA:?0.8

  • RMSE:?49.57

  • MFE:?-6.94

過去10個(gè)月的平均降雨量為148.93毫米,預(yù)測精度顯示出與驗(yàn)證集相似的性能,而且相對(duì)于整個(gè)測試集計(jì)算的平均降雨量而言,誤差很低。

結(jié)論

在這個(gè)例子中,你已經(jīng)看到:

  • 如何準(zhǔn)備用于LSTM模型的數(shù)據(jù)

  • 構(gòu)建一個(gè)LSTM模型

  • 如何測試LSTM的預(yù)測準(zhǔn)確性

  • 使用LSTM對(duì)不穩(wěn)定的時(shí)間序列進(jìn)行建模的優(yōu)勢

數(shù)據(jù)獲取

在下面公眾號(hào)后臺(tái)回復(fù)“降雨量數(shù)據(jù)”,可免費(fèi)獲取完整數(shù)據(jù)。

本文摘選?《?Python用LSTM長短期記憶神經(jīng)網(wǎng)絡(luò)對(duì)不穩(wěn)定降雨量時(shí)間序列進(jìn)行預(yù)測分析?》?,點(diǎn)擊“閱讀原文”獲取全文完整資料。

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

深度學(xué)習(xí)實(shí)現(xiàn)自編碼器Autoencoder神經(jīng)網(wǎng)絡(luò)異常檢測心電圖ECG時(shí)間序列spss modeler用決策樹神經(jīng)網(wǎng)絡(luò)預(yù)測ST的股票
Python中TensorFlow的長短期記憶神經(jīng)網(wǎng)絡(luò)(LSTM)、指數(shù)移動(dòng)平均法預(yù)測股票市場和可視化
RNN循環(huán)神經(jīng)網(wǎng)絡(luò) 、LSTM長短期記憶網(wǎng)絡(luò)實(shí)現(xiàn)時(shí)間序列長期利率預(yù)測
結(jié)合新冠疫情COVID-19股票價(jià)格預(yù)測:ARIMA,KNN和神經(jīng)網(wǎng)絡(luò)時(shí)間序列分析
深度學(xué)習(xí):Keras使用神經(jīng)網(wǎng)絡(luò)進(jìn)行簡單文本分類分析新聞組數(shù)據(jù)
用PyTorch機(jī)器學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)分類預(yù)測銀行客戶流失模型
PYTHON用LSTM長短期記憶神經(jīng)網(wǎng)絡(luò)的參數(shù)優(yōu)化方法預(yù)測時(shí)間序列洗發(fā)水銷售數(shù)據(jù)
Python用Keras神經(jīng)網(wǎng)絡(luò)序列模型回歸擬合預(yù)測、準(zhǔn)確度檢查和結(jié)果可視化
R語言深度學(xué)習(xí)卷積神經(jīng)網(wǎng)絡(luò) (CNN)對(duì) CIFAR 圖像進(jìn)行分類:訓(xùn)練與結(jié)果評(píng)估可視化
深度學(xué)習(xí):Keras使用神經(jīng)網(wǎng)絡(luò)進(jìn)行簡單文本分類分析新聞組數(shù)據(jù)
Python用LSTM長短期記憶神經(jīng)網(wǎng)絡(luò)對(duì)不穩(wěn)定降雨量時(shí)間序列進(jìn)行預(yù)測分析
R語言深度學(xué)習(xí)Keras循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)模型預(yù)測多輸出變量時(shí)間序列
R語言KERAS用RNN、雙向RNNS遞歸神經(jīng)網(wǎng)絡(luò)、LSTM分析預(yù)測溫度時(shí)間序列、 IMDB電影評(píng)分情感
Python用Keras神經(jīng)網(wǎng)絡(luò)序列模型回歸擬合預(yù)測、準(zhǔn)確度檢查和結(jié)果可視化
Python用LSTM長短期記憶神經(jīng)網(wǎng)絡(luò)對(duì)不穩(wěn)定降雨量時(shí)間序列進(jìn)行預(yù)測分析
R語言中的神經(jīng)網(wǎng)絡(luò)預(yù)測時(shí)間序列:多層感知器(MLP)和極限學(xué)習(xí)機(jī)(ELM)數(shù)據(jù)分析報(bào)告
R語言深度學(xué)習(xí):用keras神經(jīng)網(wǎng)絡(luò)回歸模型預(yù)測時(shí)間序列數(shù)據(jù)
Matlab用深度學(xué)習(xí)長短期記憶(LSTM)神經(jīng)網(wǎng)絡(luò)對(duì)文本數(shù)據(jù)進(jìn)行分類
R語言KERAS深度學(xué)習(xí)CNN卷積神經(jīng)網(wǎng)絡(luò)分類識(shí)別手寫數(shù)字圖像數(shù)據(jù)(MNIST)
MATLAB中用BP神經(jīng)網(wǎng)絡(luò)預(yù)測人體脂肪百分比數(shù)據(jù)
Python中用PyTorch機(jī)器學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)分類預(yù)測銀行客戶流失模型
R語言實(shí)現(xiàn)CNN(卷積神經(jīng)網(wǎng)絡(luò))模型進(jìn)行回歸數(shù)據(jù)分析
SAS使用鳶尾花(iris)數(shù)據(jù)集訓(xùn)練人工神經(jīng)網(wǎng)絡(luò)(ANN)模型
【視頻】R語言實(shí)現(xiàn)CNN(卷積神經(jīng)網(wǎng)絡(luò))模型進(jìn)行回歸數(shù)據(jù)分析
Python使用神經(jīng)網(wǎng)絡(luò)進(jìn)行簡單文本分類
R語言用神經(jīng)網(wǎng)絡(luò)改進(jìn)Nelson-Siegel模型擬合收益率曲線分析
R語言基于遞歸神經(jīng)網(wǎng)絡(luò)RNN的溫度時(shí)間序列預(yù)測
R語言神經(jīng)網(wǎng)絡(luò)模型預(yù)測車輛數(shù)量時(shí)間序列
R語言中的BP神經(jīng)網(wǎng)絡(luò)模型分析學(xué)生成績
matlab使用長短期記憶(LSTM)神經(jīng)網(wǎng)絡(luò)對(duì)序列數(shù)據(jù)進(jìn)行分類
R語言實(shí)現(xiàn)擬合神經(jīng)網(wǎng)絡(luò)預(yù)測和結(jié)果可視化
用R語言實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)預(yù)測股票實(shí)例
使用PYTHON中KERAS的LSTM遞歸神經(jīng)網(wǎng)絡(luò)進(jìn)行時(shí)間序列預(yù)測
python用于NLP的seq2seq模型實(shí)例:用Keras實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)機(jī)器翻譯
用于NLP的Python:使用Keras的多標(biāo)簽文本LSTM神經(jīng)網(wǎng)絡(luò)分類


【視頻】Python用LSTM長短期記憶神經(jīng)網(wǎng)絡(luò)對(duì)不穩(wěn)定降雨量時(shí)間序列進(jìn)行預(yù)測分析|數(shù)據(jù)分的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
鹤岗市| 天长市| 逊克县| 昭苏县| 建德市| 和平县| 华池县| 宁安市| 泰宁县| 宁津县| 抚顺市| 信阳市| 定陶县| 阳谷县| 十堰市| 清河县| 巍山| 拉孜县| 蒲城县| 海口市| 清新县| 鄱阳县| 延吉市| 永济市| 格尔木市| 保亭| 衡阳县| 天镇县| 沙雅县| 汤阴县| 双柏县| 淮安市| 沐川县| 南投县| 南靖县| 定安县| 荆门市| 绥宁县| 津南区| 南汇区| 柳林县|