三个ARIMA问题

时间:2018-10-20 18:28:03

标签: time-series arima

我正在学习ARIMA算法,遇到了一些问题。请回答以下问题。所使用的ARIMA实现来自Statesmodel.tsa。

Q1。当ARIMA算法检测到AR系数不稳定时,是否可以将其配置为进行预测,而不是停止预测。我有以下代码:

history = [x for x in train]
for tt in test.index:
    t=datetime.date(tt)
    # fit model
    model = ARIMA(history, order=(1,1,1))
    model_fit = model.fit()
    # one step forecast
    yhat = model_fit.forecast()[0]
    # store forecast and ob
    predictions.append(yhat)
    history.append(test[t])

大多数数据集都将通过代码运行,即使它们可能无法产生良好的结果。有一组数据导致算法停止。我检查了这个数据集,发现它的值先升后降。我收到的错误消息如下:

ValueError: The computed initial AR coefficients are not stationary. You should induce stationarity, choose a different model order, or you can pass your own start_params. 

Q2:一个人应该如何处理先增加值然后减少的时间序列数据?

Q3:然后,我通过使用训练数据实施了网格搜索,以首先找到最佳的(p,d,q)参数。然后,这组参数在ARIMA中用于预测测试集中的数据。但是,当测试集中的数据具有不同的属性时,ARIMA也将停止。例如,使用一个数据集,我从训练数据中得到了(0,0,2)。但是,使用这组参数将其用于预测测试集时,会收到以下错误消息。

ValueError: The computed initial MA coefficients are not invertible. You should induce invertibility, choose a different model order, or you can pass your own start_params.

处理此类问题的推荐方法是什么?

0 个答案:

没有答案