nnetar的结果奇怪地平坦

时间:2018-02-10 14:55:30

标签: r time-series forecasting

我是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)。它显示出明显的上升趋势。

1 个答案:

答案 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模型中使用Pnnetar参数)