時系列データの統計解析に関しては、2014年11月29日の本ブログの記事で、主として経済時系列を想定した単位根検定と共和分の話を書きました。ここでは、あらゆる分野の時系列データの予測のための統計モデル構築に利用されているARMAモデルあるいはARIMAモデルについて、その概要とPythonによる分析事例を紹介します。
期間で観測される時系列データをと表します。この系列の平均と分散を以下のように記述します。
また、この系列の異なる時点の値同士の関連を表す自己共分散と自己相関を以下のように記述します。
共分散定常過程(弱定常過程)
系列が以下を満たすとき、共分散定常過程(弱定常過程)であるといいます。
定常な時系列とは、月別アイスクリーム売上高のような季節性や株価のような上がりっぱなしや下がりっぱなしのトレンドがなく、同じ値のまわりを動くような系列です。(弱)定常性は時系列の統計モデル化にあたっての基本です。定常でない場合は階差をとるなどした系列をモデル化します。
ホワイトノイズ
共分散定常過程で平均が0、のすべての自己共分散が0である場合、ホワイトノイズといいます。一般的には乱数表から順に数値をとってきて系列化したような、規則性がなく周期やトレンドもない系列を意味します。
自己回帰(AR)過程
以下の式で表される系列をp次の自己回帰過程あるいはAR(p)過程といいます。
ここではホワイトノイズです。これはある時点の値がその直近の過去の値の影響をうけている系列です。
移動平均(MA)過程
以下の式で表される系列をq次の移動平均過程あるいはMA(q)過程といいます。
ここではやはりホワイトノイズです。これも式からわかるように、時間的に隣り合った値は同じホワイトノイズ項を含んでいるので、関連性があります。
自己回帰移動平均(ARMA)過程
上の2つの過程の特性を両方組み込んだ、以下の式で表される系列を(p,q)次の自己回帰移動平均過程あるいはARMA(p,q)過程といいます。ARMAは「アーマ」と読むことも多いです。
自己回帰和分移動平均(ARIMA)過程
上記ARMA過程は時系列のさまざまな変動パターンを表せることが知られていますが、基本的に定常な時系列に限られます。現実には株価や年間GDPの推移など原系列は定常ではないが階差をとると定常になるケースは多くあります。階差をとった系列をARMAモデル化したものを自己回帰和分移動平均(ARIMA)過程といいます。
ARIMAは「アリマ」と読むのが普通です。の一回階差をとった系列がARMA過程に従うARIMA(p,1,q)過程は以下の式で表されます。