我是R的新手,但对ARIMA模型有一定的经验。现在我想学习一些关于神经网络的预测。
我尝试从Rob's post重复此过程。它对他使用的数据集非常有用。它对我创建的虚构数据集也很有用。
但后来我尝试使用现实数据(每月7年的收入数据),结果预测奇怪。我的代码:
read.csv("Revenue.csv",header=TRUE)
x <-read.csv("Revenue.csv",header=TRUE)
y<-ts(x,freq=12,start=c(2011,1))
(fit<-nnetar(y))
fcast <- forecast(fit, PI=TRUE, h=20, bootstrap=TRUE)
autoplot(fcast)
结果几乎是直线(附于picture 1)。这让我感到奇怪,因为到目前为止趋势是积极的:每年收入增长超过100%。仍然是nnetar的结果是收入将稳定下来。怎么可能?
作为比较,我将Auto.arima用于相同的数据集(picture 2)。它显示出明显的上升趋势。
答案 0 :(得分:0)
一个建议,即使没有数据样本也很难提供帮助。
看来nnetar
不能很好地捕捉数据趋势。
可能您可以尝试将趋势用作外部回归变量(xreg
参数)
例如确定性趋势。
Trend=seq(from=start, to=end, by=1)
(fit <- nnetar(y, xreg=Trend))
(f <- forecast(fit,h=h, xreg=seq(from=end, to=end+h, by=1))
另一种选择是使用更多的滞后或季节性滞后(在您的p
模型中使用P
和nnetar
参数)