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

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

拓端tecdat|R語言深度學習Keras循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)模型預(yù)測多輸出變量時間序列

2021-10-08 10:46 作者:拓端tecdat  | 我要投稿

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

原文出處:拓端數(shù)據(jù)部落公眾號

遞歸神經(jīng)網(wǎng)絡(luò)被用來分析序列數(shù)據(jù)。它在隱藏單元之間建立遞歸連接,并在學習序列后預(yù)測輸出。
在本教程中,我們將簡要地學習如何用R中的Keras RNN模型來擬合和預(yù)測多輸出的序列數(shù)據(jù),你也可以對時間序列數(shù)據(jù)應(yīng)用同樣的方法。我們將使用Keras R接口在R中實現(xiàn)神經(jīng)網(wǎng)絡(luò):
?

  1. 準備數(shù)據(jù)

  2. 定義模型

  3. 預(yù)測和可視化結(jié)果

我們將從加載R的必要包開始。?

library(keras)


準備數(shù)據(jù)

首先,我們將為本教程創(chuàng)建一個多輸出數(shù)據(jù)集。它是隨機產(chǎn)生的數(shù)據(jù),下面有一些規(guī)則。在這個數(shù)據(jù)集中有三個輸入變量和兩個輸出變量。我們將繪制生成的數(shù)據(jù),以直觀地檢查它。


  1. plot(s, df$y1, ylim = c(min(df), max(df)), type = "l")

  2. lines(s, df$y2, type = "l")

  3. lines(s, df$x1, type = "l")

  4. lines(s, df$x2, type = "l")

  5. lines(s, df$x3, type = "l")


接下來,我們將把數(shù)據(jù)分成訓練和測試兩部分。最后的50個元素將是測試數(shù)據(jù)。
?

  1. train = df[1:(n-tsize), ]

  2. test = df[(n-tsize+1):n, ]


我們將創(chuàng)建x輸入和y輸出數(shù)據(jù)來訓練模型,并將它們轉(zhuǎn)換成矩陣類型。
?

  1. xtrain = as.matrix(data.frame(train$x1, train$x2, train$x3))

  2. ytrain = as.matrix(data.frame(train$y1, train$y2))


接下來,我們將通過給定的步長值對輸入和輸出值進行切分來準備數(shù)據(jù)。在這個例子中,步長值是2,我們將把x的第一和第二行以及y的第二行作為一個標簽值。下一個元素成為x的第二和第三行以及y的第三行,這個序列一直持續(xù)到結(jié)束。下表解釋了如何創(chuàng)建x和y數(shù)據(jù)的序列。
?


如果步長值為3,我們將取3行x數(shù)據(jù),第三行y數(shù)據(jù)成為輸出。
?



  1. dim(trains$x)

  2. [1] 798 ? 3 ? 2

  3. dim(trains$y)

  4. [1] 798 ? 2



定義模型


?我們將通過添加簡單的RNN層、用于輸出的Dense層和帶有MSE損失函數(shù)的Adam優(yōu)化器來定義序列模型。我們將在模型的第一層設(shè)置輸入維度,在最后一層設(shè)置輸出維度。


  1. model %>% summary()


我們將用訓練數(shù)據(jù)來擬合這個模型。
?

fit(trains$x, trains$y)


并檢查訓練的準確性。
?

  1. evaluate(trains$x, trains$y, verbose = 0)

  2. print(scores)



預(yù)測和可視化的結(jié)果

最后,我們將預(yù)測測試數(shù)據(jù),用RMSE指標檢查y1和y2的準確性。
?


  1. cat("y1 RMSE:", RMSE(tests$y[, 1], ypred[, 1]))

cat("y2 RMSE:", RMSE(tests$y[, 2], ypred[, 2]))

我們可以在圖中直觀地檢查結(jié)果。


  1. plot(x_axes, tests$y[, 1], ylim = c(min(tests$y), max(tests$y))type = "l", lwd = 2,


???在本教程中,我們已經(jīng)簡單了解了如何用R中的Keras rnn模型來擬合和預(yù)測多輸出的順序數(shù)據(jù)。?
?

最受歡迎的見解

1.r語言用神經(jīng)網(wǎng)絡(luò)改進nelson-siegel模型擬合收益率曲線分析

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

3.python用遺傳算法-神經(jīng)網(wǎng)絡(luò)-模糊邏輯控制算法對樂透分析

4.用于nlp的python:使用keras的多標簽文本lstm神經(jīng)網(wǎng)絡(luò)分類

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

6.R語言基于Keras的小數(shù)據(jù)集深度學習圖像分類

7.用于NLP的seq2seq模型實例用Keras實現(xiàn)神經(jīng)機器翻譯

8.python中基于網(wǎng)格搜索算法優(yōu)化的深度學習模型分析糖

9.matlab使用貝葉斯優(yōu)化的深度學習


拓端tecdat|R語言深度學習Keras循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)模型預(yù)測多輸出變量時間序列的評論 (共 條)

分享到微博請遵守國家法律
德格县| 安龙县| 花莲市| 海阳市| 雅江县| 甘孜县| 阿拉善左旗| 集贤县| 崇明县| 铁岭市| 交口县| 沾化县| 乌兰察布市| 晴隆县| 泰顺县| 吐鲁番市| 东宁县| 商都县| 海盐县| 台安县| 梁平县| 阳江市| 额尔古纳市| 章丘市| 南乐县| 尉犁县| 万年县| 安溪县| 黑水县| 枞阳县| 晋中市| 凤山市| 白城市| 合作市| 香格里拉县| 永登县| 武山县| 台江县| 涟水县| 五大连池市| 安岳县|