自己回帰和分移動平均モデル

統計学や計量経済学、特に時系列分析において、自己回帰和分移動平均モデルは、自己回帰移動平均モデルの一般化である。これらのモデルは、データの理解を深めるため、または将来のポイントを予測するために、時系列データに適用される。

ARIMAモデルは、データが平均に関して非定常性を示す場合に適用され、初期の差分ステップを 1回以上適用して平均関数の非定常性を排除することができる。時系列に季節性が見られる場合は、季節成分を除去するために季節的差分を適用することができる。ウォルドの分解定理によれば、ARMAモデルは規則的な広義の定常時系列を記述するのに理論的には十分であるので、ARMAモデルを使用する前に、例えば差分を使用して非定常時系列を定常化することが主な動機となる。時系列に予測可能なサブプロセスが含まれている場合、予測可能な成分はARIMAのフレームワークでは平均非ゼロで周期的な成分として扱われるので、季節的な差分処理によって除去されることに注意が必要である。

ARIMAのARの部分は、関心のある展開する変数がそれ自体の遅延した値に回帰されることを示している。MAの部分は、回帰誤差が実際には、同時期および過去の様々な時点で発生した誤差項の線型結合であることを示している。I の部分は、データの値が過去の値との差分に置き換えられていることを示している。これらの特徴の目的は、モデルがデータにできるだけ適合するようにすることである。

非季節ARIMAモデルは、一般に と表記される。パラメータ//p//、//d//、//q//は非負の整数で、pは自己回帰モデルの次数、//d//は差分の階数、//q//は移動平均モデルの次数を表す。

季節ARIMAモデルは、通常 と表記される。ここで、//m//は各季節の期間の数を意味し、大文字の//P//、//D//、//Q//はARIMAモデルの季節部分の自己回帰項、差分項、移動平均項を意味する 。

3つの項のうち2つがゼロの場合、モデルを表す頭字語のうちゼロではないパラメータを用いてモデルを記載することができる。例えば、 は 、 は 、 は と記載される。

ARIMAモデルは、ボックス・ジェンキンス法に従って推定することができる。

1. 定義
-----

時系列データ//Xt//が与えられたとき、 モデルは下記のようになる。

または同等に

ここで、はラグ演算子、はモデルの自己回帰部分のパラメーター、は移動平均部分のパラメータ、は誤差項である。誤差項は、一般に、平均ゼロの正規分布からサンプリングされた独立同分布の変数であるとみなされる。

ここで、多項式 が多重度//d//の単位根を持つ場合、次のように書き換えることができる。

プロセスでは、//p// = //p'-d//で用いて、次のように表す。

したがって、//d//個の単位根を持つ自己回帰多項式を持つ プロセスの特殊なケースと考えることができる。 このため、//d > 0// のARIMAモデルで正確に記述されるプロセスは広義の定常ではない。

上記は次のように一般化できる。

これは、ドリフト  を伴う //// プロセスを定義する。

2. 差分
-----

定常時系列の性質は、観測された時刻に依存しない。具体的には、広義の定常時系列では、平均と分散/自己共分散は時間の経過とともに一定になる。統計における差分とは、非定常時系列を平均的な意味で定常化するために適用される変換であり、分散/自己共分散の非定常性とは関係がない。同様に、季節性時系列に季節差分を適用して季節成分を除去する。信号処理、特にフーリエ・スペクトル解析理論の観点からは、トレンドは非定常時系列のスペクトルにおける低周波数部分であり、季節はそのスペクトルにおける周期的な周波数部分である。したがって、差分はハイパスフィルタとして、季節差分はコムフィルタとして機能し、それぞれ低周波のトレンドと周期的な周波数の季節をスペクトル領域で抑制することができる。この観点から、差分と季節差分の哲学、数学、力、欠点を説明することができる。

データの差分を取るために、連続した観測値の差を計算する。数学的には次のようになる。

差分は時系列のレベルの変化を取り除き、トレンドと季節性を排除し、結果的に時系列の平均値を安定させる。

定常時系列を得るために、2回に渡ってデータの差分を取る必要がある場合もあり、これは 2次差分と呼ばれる。

データの差分を取るもう一つの方法として、季節差分がある。これは、観測値と前の季節の対応する観測値との差を計算するものである。これは次のように示される。

そして、この差分を取ったデータを用いて、ARMAモデルを推定する。

3. 例
----

いくつかのよく知られていた特殊なケースは、自然に生じたり、他の一般的な予測モデルと数学的に同等であったりする。例えば：

モデルは次の式で与えられ、ランダムウォークを示す。
定数項を伴う モデルは次の式で与えられ、ドリフトを伴うランダムウォークを示す。
モデルはホワイトノイズモデルである。
モデルは、減衰を伴う Holt のモデルである。
定数項のない モデルは、基本的な指数平滑化モデルである。
モデルは次の式で与えられ、加法誤差または二重指数平滑化を使用したHoltの線型法と同等である。

4. 次数の選択
--------

次数//p//および//q//は、サンプル自己相関関数、偏自己相関関数、拡張自己相関関数法を用いて決定することができる。

その他の代替法として、AIC、BICなどがある。非季節性ARIMAモデルの次数を決定するためには赤池情報量規準が有用である。AICは次のように書かれる。

ここで、//L//はデータの尤度、//p//は自己回帰モデル部分の次数、//q//は移動平均モデル部分の次数であり、//k' はARIMAモデルの切片を表す。AICでは //k// = 1の場合はARIMAモデルに切片があり、//k// = 0 の場合はARIMAモデルに切片がないことになる。//

ARIMAモデルの補正AICは、次のように書くことができる。

ベイズ情報量規準は、次のように書くことができる。

目標は、良いモデルのAIC、AICc、BICの値を最小化することである。調査するモデルの範囲でこれらの基準の一つの値が低ければ低いほど、そのモデルはデータに適している。AICとBICは 2つのまったく異なる目的で使用される。AICがモデルを現実の状況に近づけようとするのに対し、BICは完全な適合性をみつけようとする。BICのアプローチは、現実の複雑なデータに完璧にフィットすることはないと批判されることが多いが、AICに比べてパラメータが多いことでモデルに大きなペナルティを与えるため、選択のための有効な手法であることに変わりはない。

AICcは、差分の次数が等しいARIMAモデルの比較にのみ使用できる。差分の次数が異なるARIMAモデルについては、RMSEをモデルの比較に使用することができる。

5. 係数の推定
--------

6. ARIMAモデルを使用した予測
------------------

ARIMAモデルは、2つのモデルの「カスケード」と見なすことができる。1つ目は非定常である：

2番目は広義の定常である：

こうして、プロセスYtを自己回帰予測法の一般化を用いて予測することができる。

6.1. 予測区間
---------

ARIMAモデルの予測区間は、残差が無相関で正規分布しているという仮定に基づいている。これらの仮定のいずれかが当てはまらない場合、予測間隔が正しくない可能性がある。このため、研究者は予測区間を作成する前に、過程をチェックするために残差のACFとヒストグラムをプロットする。

95%の予測区間は

ここで、 は の分散である

のとき、パラメータや次数に関係なく、すべてのARIMAモデルに適用される。対して。

の場合、

date=September 2020}}[//要出典//]一般に、ARIMAモデルからの予測区間は、予測期間が長くなるにつれて広がる。

7. バリエーションと拡張
-------------

ARIMAモデルにはいくつかのバリエーションがある。複数の時系列を使用する場合は をベクトルと考えることができ、VARIMAモデルが適切な場合がある。モデルに季節効果が疑われるときは、モデルのARやMAの次数を増やすよりも、SARIMAモデルを使用する方が一般的には良いと考えられる。時系列が長距離依存性を示すと疑われる場合、フラクショナルARIMAモデルとも呼ばれる自己回帰フラクショナル和分移動平均モデルでは、//d// パラメーターに非整数値を持たせることができる。

8. ソフトウェアの実装
------------

ARIMAモデルに適切なパラメータを見つけるため、Box-Jenkinsパラメータ最適化のような方法論を適用する様々なパッケージがある。

EViews：広範なARIMAおよびSARIMA機能を備えている
Julia：TimeModelsパッケージにARIMA実装が含まれている
Mathematica：[1]関数が含まれている
MATLAB：[2] には、[3] と [4]が含まれる
NCSS：ARIMA ィッティングと予測のためのいくつかの手順が含まれる
Python：[5]パッケージには、時系列分析のモデルや時系列分析のプロセスモデルが含まれている。
R：標準のR statsパッケージには、 [6] に記載されている //arima// 関数が含まれている。この他に の部分では、この関数は季節要因、切片項、外性変数も含む。[7] が参考になり、さらに多くのリンクがある。Rの [8] パッケージは auto.arima}} 関数を用いて与えられた時系列のARIMAモデルを自動的に選択することができ、また、simulate.simulate}} 関数を用いて季節性および非季節性のARIMAモデルをシミュレートすることができる。
Ruby：[9] gemは、ARIMAモデルやカルマンフィルターなどの時系列分析に使用される。
JavaScript：[10] パッケージには、時系列分析と予測のモデルが含まれている
C：[11] パッケージには、ARIMA、SARIMA、SARIMAX、AutoARIMA、および時系列分析のための複数の方法が含まれている
[12]：[13]と[14]が含まる
SAS：計量経済学および時系列分析システムに広範なARIMA処理が含まれている
IBM SPSS：StatisticsパッケージとModeler statisticalパッケージにARIMAモデリングが含まれている。デフォルトのExpert Modeler機能は、様々な季節性および非季節性の自己回帰 //p//、和分 //d//、移動平均 //q// の設定と、7つの指数平滑化モデルを評価する。Expert Modelerは、対象となる時系列データを平方根や自然対数に変換することもできる。 また、Expert ModelerをARIMAモデルに限定したり、Expert Modelerを使用せずにARIMAの季節性および非季節性の //p//、//d//、//q// 設定を手動で入力するオプションもある。7種類の外れ値の自動検出が可能で、この機能が選択されている場合、検出された外れ値は時系列モデルに収容される。
SAP：SAP ERPのAPO-FCSパッケージ は ARIMA モデルの作成とボックス・ジェンキンスの方法論によるフィッティングを可能にする
SQL Server Analysis Services：MicrosoftのデータマイニングアルゴリズムとしてARIMAが含まれている
Stata：Stata 9以降のARIMAモデリングが含まれている
[15]：[16] アプリにARIMAモデルが含まれている
Teradata Vantage：機械学習エンジンの一部としてARIMA機能を備えている
TOL：ARIMAモデルをモデル化するように設計されている[17]
Scala：[18]ライブラリには、Scala、Java、Python用のARIMA実装が含まれ、Apache Spark上で動作するように設計されている
PostgreSQL / MadLib：[19]
X-12-ARIMA：米国国勢調査局

9. 関連項目
-------

自己相関
自己回帰移動平均モデル
有限インパルス応答
無限インパルス応答
ボックス・ジェンキンス法

10. 脚注
------

10.1. 出典
--------

11. 参考文献
--------

12. 外部リンク
---------

[20]
[21]