15

ARIMA モデルを時系列データセットに適用した場合の予測結果を自分自身に説明しようとしています。データはM1-Competitionのもので、シリーズはMNB65です。データを ARIMA(1,0,0) モデルに適合させて予測を取得しようとしています。私はRを使用しています。ここにいくつかの出力スニペットがあります:

> arima(x, order = c(1,0,0))
Series: x 
ARIMA(1,0,0) with non-zero mean 
Call: arima(x = x, order = c(1, 0, 0)) 
Coefficients:
         ar1  intercept
      0.9421  12260.298
s.e.  0.0474    202.717

> predict(arima(x, order = c(1,0,0)), n.ahead=12)
$pred
Time Series:
Start = 53 
End = 64 
Frequency = 1 
[1] 11757.39 11786.50 11813.92 11839.75 11864.09 11887.02 11908.62 11928.97 11948.15 11966.21 11983.23 11999.27

いくつかの質問を聞きたいんです:

(1) データセットは明らかな下降傾向を示していますが、このモデルからの予測は上昇傾向にあることをどのように説明すればよいですか? これは ARIMA(2,0,0) でも発生します。これは、auto.arima(予測パッケージ) を使用するデータと ARIMA(1,0,1) モデルに最適な ARIMA 適合です。

(2) ARIMA(1,0,0) モデルの切片値は 12260.298 です。切片は次の式を満たさないはずです: C = mean * (1 - sum(AR coeffs))。この場合、値は である必要があります715.52。ここで基本的な何かが欠けているに違いありません。

(3) これは明らかに非定常平均の系列です。AR(2) モデルが依然として最適なモデルとして選ばれているのはなぜauto.arimaですか? 直感的な説明はありますか?

ありがとう。

4

1 に答える 1

24
  1. モデルが定常であるため、ARIMA(p,0,q) モデルはトレンドを許容しません。本当にトレンドを含めたい場合は、ARIMA(p,1,q) をドリフト項とともに使用するか、ARIMA(p,2,q) を使用します。auto.arima() が 0 の差を示唆しているという事実は、通常、明確な傾向がないことを示します。

  2. arima() のヘルプ ファイルは、切片が実際には平均であることを示しています。つまり、AR(1) モデルは(Y_t-c) = ϕ(Y_{t-1} - c) + e_t予想Y_t = c + ϕY_{t-1} + e_tとは異なります。

  3. auto.arima()単位根検定を使用して、必要な差の数を決定します。そのため、ユニット ルート テストの結果をチェックして、何が起こっているかを確認してください。auto.arima()単位根検定が適切なモデルにつながらないと思われる場合 は、必要な差の数をいつでも指定できます。

以下は、データに対する 2 つのテストの結果です。

R> adf.test(x)

        Augmented Dickey-Fuller Test

data:  x 
Dickey-Fuller = -1.031, Lag order = 3, p-value = 0.9249
alternative hypothesis: stationary 

R> kpss.test(x)

        KPSS Test for Level Stationarity

data:  x 
KPSS Level = 0.3491, Truncation lag parameter = 1, p-value = 0.09909

そのため、ADF は強く非定常 (その場合の帰無仮説) を示しますが、KPSS は定常性 (その検定の帰無仮説) を完全に拒否しません。auto.arima()デフォルトでは後者を使用します。auto.arima(x,test="adf")最初のテストが必要な場合に使用できます。その場合、傾向があるモデル ARIMA(0,2,1) を提案します。

于 2010-04-21T21:48:56.747 に答える