時系列分析入門(ホワイトノイズ・MAモデル)

時系列分析入門(ホワイトノイズ・MAモデル)

宮森望

この記事は 茨大 Advent Calendar 2019 13日目の記事でした。

時系列分析入門(ホワイトノイズ・MAモデル)

この文書は沖本竜義著の経済・ファイナンスデータの計量時系列分析をベースにした時系列分析入門の文書です。以前に時系列データ、定常性についての文書を書きました。時系列データ、定常性というキーワードについて知らない方はそちらを読んでから戻ってきてください。

時系列分析入門(時系列データ・定常性)

ホワイトノイズ

はじめに、なぜホワイトノイズというものを持ち出してきたのか例を使って説明します。下の図は1959年のカリフォルニアの女児出生数を示したものです。横軸は記録を開始してからの日数を、縦軸は記録日の出生数を表します。図を見て分かるとおり線はギザギザと波打っています。他の例として株価のグラフもギザギザと波打つ様子が見て取れるはずです(「株価 グラフ」などで検索してみてください)。

データの出典: Newton (1988)、参照: https://www.kaggle.com/dougcresswell/daily-total-female-births-in-california-1959

今回示したものはほんの一例ですが、例から言えることとして時系列モデルには先のギザギザ感を含める必要性があります。そこで登場するのがホワイトノイズです。以下にホワイトノイズの定義を示します。

(ホワイトノイズの定義) 任意の時点$t$において、過程$\epsilon_t$が次の2つの性質を満たすとき$\epsilon_t$をホワイトノイズと呼ぶ

$$

\mathrm{E}[\epsilon_t] = 0 \tag{1} \label{whE}

$$

$$

\mathrm{Cov}[\epsilon_t, \epsilon_{t-k}] = \begin{cases}\sigma^2 &(k = 0)\\ 0 &(k \neq 0)\end{cases} \tag{2} \label{whCov}

$$

過程$\epsilon_{t}$が分散$\sigma^2$のホワイトノイズに従うとき$\epsilon_{t} \sim \mathrm{W.N.}(\sigma^2)$と書きます。$\eqref{whE}$は期待値が0であること、$\eqref{whCov}$は分散が$\sigma^2$であるが共分散は0であること(すなわち過程$\epsilon_t$のそれぞれの値は互いに無相関であること)を示しています。ホワイトノイズとして扱うことのできる過程の1つが**正規過程**(ガウス過程)です。正規過程というのはそれぞれの時点$t$の値$\epsilon_{t}$が正規分布に従っている分布のことです。すなわち、$\forall{t}\epsilon_t \sim \mathcal{N}(0, \sigma^2)$となります(ここで$\mathcal{N}(0, \sigma^2)$は期待値0、分散$\sigma^2$の正規分布を表します)。

正規過程を生成するのは正規乱数(正規分布に従う乱数)を生成することが可能なら、時点$t$毎に正規乱数を発生させるだけで簡単に生成可能です。Python言語であればライブラリのNumpyに含まれる`numpy.random`モジュールの`normal()`関数を使って、R言語であれば`norm()`関数を使うことで正規乱数を生成可能です。

MAモデル

やはりMAモデルの説明の前にも、なぜ時系列モデルを導入するのかという説明をします。言ってしまえばホワイトノイズも時系列モデルとなりますが、時系列分析の関心の1つである自己相関を記述することができないので($\mathrm{Cov}[\epsilon_t, \epsilon_{t-k}] = 0$より)役不足であると言えます。現実のデータには自己相関が含まれていることが多々あります。先ほどの出生数の例では、出産した人の多くは5-10年後に出産すると考えれば(逆に1-2年後に出産することは少ない)出生数の多い翌年は出生数が少なくなると考えられます。そこで自己相関を記述するために考えられた時系列モデルの1つが移動平均モデルです。

MAモデルは日本語で「移動平均モデル」とも呼びます(MAはMoving Averageの略)。MAモデルの定義式は以下です。

$$

y_t = \mu + \epsilon_{t} + \theta_{1} \epsilon_{t-1}, \quad \epsilon_t \sim \mathrm{W.N.}(\sigma^2) \tag{3} \label{ma1}

$$

ここで$\mu$と$\theta$は定数

なぜ$\eqref{ma1}$に移動平均と言う名前がついているのかというと、以下のような移動平均の式の形になっているからです。

$$

\begin{align}

a_1 &= \frac{x_1 + x_2}{2}\\

a_2 &= \frac{x_2 + x_3}{2}\\

   &\vdots

\end{align} \tag{4} \label{ma-eg}

$$

$\eqref{ma1}$は$\eqref{ma-eg}$のような単純な意味での移動平均とは見た目が少し異なりますが考え方は同じです。$\eqref{ma-eg}$では$a_2$が$a_1$との共通項$x_2$を持っています。MAモデルの定義式$\eqref{ma1}$では$\epsilon_{t-1}$が移動平均で言うところの共通項にあたります。この共通項によってMAモデルは自己相関を記述します。

$\eqref{ma1}$を正確には1次のMAモデルと呼び$\mathrm{MA}(1)$と表します。$\mathrm{MA}(2)$は$\eqref{ma1}$と同様に、

$$

y_t = \mu + \epsilon_{t} + \theta_{1} \epsilon_{t-1} + \theta_{2} \epsilon_{t-2}, \quad \epsilon_t \sim \mathrm{W.N.}(\sigma^2) \tag{5} \label{ma2}

$$

と表します。$\eqref{ma1}$で$\mu$を単なる定数項として定義しましたが$y_t$の期待値にもなります(実際に$y_t$の期待値を計算すると$\mu$だけが残ります)。一方の$\theta$は$y_t$の分散ならびに共分散(と相関係数)を決めるパラメータになります。導出は割愛しますがそれぞれの値、分散は$(1+\theta_1^2)\sigma^2$、1次の自己共分散は$\theta_1\sigma^2$(自己相関は$\theta_1 / (1 + \theta_1^2)$となります。

MAモデルの表現能力について、すなわち自己相関をどこまで記述できるのかという話では$\mathrm{MA}(1)$はわずか1次の自己相関までしか記述することができません。つまり2次以降の自己共分散が0になります。また$\mathrm{MA}(2)$は2次までの自己相関を、$\mathrm{MA}(3)$は3次までの自己相関を$\cdots$というようにMAモデルはそれぞれの次数と同じだけの自己相関を記述することが可能です。しかし次数を増やせば増やすほどパラメータ$\theta$とホワイトノイズ$\epsilon$も増えるため取扱いが難しくなっていきます。

最後に大事なこととしてMAモデルは次数やパラメータ$\theta$や$\mu$に関わらず常に定常となります。$\mathrm{MA}(1)$に間しては先に説明した性質から導くことが可能で、$\mathrm{MA}(q)$に関しても追加される項がホワイトノイズである、すなわち定常性を持った項であることを考えると直感的に理解できます。

終わりに

今回はホワイトノイズとMAモデルについて説明しました。説明が所々至らないのは申し訳ありません。実際はMAモデルを単独で使うというよりは、もう1つの時系列モデルでありMAモデルと表裏一体の関係にあるARモデルと共に用います。茨大Advent Calender 2019での私の担当は今日で終わりですが別の機会にARモデルについて説明します。ここまで読んでくださった方ありがとうございました。

Report Page