原文鏈接:
具有單個隱藏層和滯后輸入的前饋神經網絡,可以用于預測單變量時間序列。將神經網絡模型擬合到以時間序列的滯后值作為輸入的時間序列。因此它是一個非線性的模型,不可能得出預測區間。
因此我們使用仿真。
讀取數據進行可視化:
## # A : 6 x 2
## Date
##
## 1 2016-01-11 26
## 2 2016-01-18 27
## 3 2016-01-25 28
## 4 2016-02-01 22
## 5 2016-02-08 27
## 6 2016-02-15 31
dat%>%(aes(Date,))+
labs(title = "耐久性車輛預測", x = "時間", y = "耐用車輛數量",
= " 2016 & 2017年數據") +
#數據必須為數字神經網絡預測r程序,函數才能正常工作
dat%>%dplyr::(Date=Week)%>%na.omit()
= ts(dat["實際數量"])
nn(data, =0.5)
of 20 , each of which is
a 1-1-1 with 4
were - units
sigma^2 as 0.2705
我使用了Box-Cox變換,其中λ=0.5,
確保殘差同方差。
該模型可以寫成:
其中yt-1 =(yt-1,yt-2,?,yt-8)是包含序列的滯后值的向量,f是一個神經網絡,在單個層中具有4個隱藏節點。
通過從正態分布或從歷史值中重采樣隨機生成?t的值,我們可以迭代地模擬該模型的未來樣本路徑。
因此,如果{? ? T + 1}是從時間T + 1的誤差分布中隨機抽取的,則
是從yT + 1的預測分布中得出的一種概率。設置
y * T + 1 =(y * T + 1,yT,?,yT-6)然后我們可以重復此過程來獲得
我們可以迭代地模擬未來的樣本路徑。通過反復模擬樣本路徑,我們基于擬合的神經網絡建立了所有未來值的分布。這是對數據的9種將來可能的采樣路徑的模擬。每個樣本路徑覆蓋了觀測數據之后的未來20年。
plot() + (sim)
如果執行此操作幾百或數千次,則可以很好地了解預測分布。預測區間:
plot(fcast)
模擬次數為1000。默認情況下,誤差來自于正態分布。
最受歡迎的見解
1.用于NLP的:使用Keras的多標簽文本LSTM神經網絡分類
2.中利用長短期記憶模型LSTM進行時間序列預測分析 – 預測電力消耗數據
3.在Keras中使用LSTM解決序列問題
4.中用機器學習分類預測銀行客戶流失模型
5.R語言多元 GARCH 模型時間序列預測
6.在r語言中使用GAM(廣義相加模型)進行電力負荷時間序列分析
7.R語言中ARMA,ARIMA(Box-)神經網絡預測r程序,和模型用于預測時間序列數
8.R語言估計時變VAR模型時間序列的實證研究分析案例
9.用廣義加性模型GAM進行時間序列分析