その「因果」、本当に因果?──グレンジャー因果とは

目次

イントロダクション

「気温が上がった翌日に、アイスの売上が増えた」。では、「アイスの売上が増えた翌日に、気温が上がる」ことはあるでしょうか? ありません。通常、原因は結果より先に起きるからです。

この「時間の順序」を使って、2つの時系列データのうち、どちらが先導しているかを調べる方法が、グレンジャー因果です。1969年に Clive Granger が提案しました。ただし、名前に「因果」と付いていても、本当の因果とは限りません。この記事では、そのズレを、具体例で確かめます。

グレンジャー因果とは

グレンジャー因果とは、「$Y$の過去の値だけで予測するより、$X$の過去の値も使って予測したほうが、$Y$をうまく予測できるとき、$X$は$Y$のグレンジャー原因である」という考え方です。Grangerは、このようにデータで検証できる形で、因果とフィードバックを定義することを提案しました。

検定のしくみ

アイスの売上を例に、2つのモデルを比べます。

  • 制限モデル: $\text{今日のアイス} = a + b \times \text{前日のアイス}$
  • 非制限モデル: $\text{今日のアイス} = a + b \times \text{前日のアイス} + c \times \text{前日の気温}$

帰無仮説は、「$c = 0$(気温の過去の値は、アイスの予測に役立たない)」です。気温を加えたときに、予測の誤差(残差平方和、$RSS$)がどれだけ減るかを、$F$検定で調べます。

$$
F = \frac{(RSS_{\text{制限}} – RSS_{\text{非制限}})/q}{RSS_{\text{非制限}}/(n-k)}
$$

$q$ は追加した変数の数、$n$ はデータ数、$k$ は非制限モデルの係数の数です。誤差が大きく減るほど $F$ は大きくなり、$p$値は小さくなります。

注意点:グレンジャー因果は、本当の因果ではありません。グレンジャー因果が示すのは、「過去の値が、予測に役立つ」という先行関係です。$X$を動かしたら$Y$が動く、という介入の効果ではありません。

具体例①:気温とアイスの売上

300日分の架空のデータを使います。気温は前日の気温に引きずられて変化し、アイスの売上は、自分の前日の値と、前日の気温に反応するように作りました。つまり、正解は「気温 → アイス」の一方向です。

アイスが前日の気温に反応するのは、遅れを見せるための単純化です。現実には、アイスの売上は、その日の気温にも反応します。ただし、気温のように、前日の値が今日の値に引き継がれやすい変数なら、同じ日に反応する場合でも、この検定は「気温 → アイス」を検出します(第5章の表)。

図1: 気温(上)がピークになった翌日に、アイスの売上(下)がピークになる。アイスの売上は、気温の動きを1日遅れでなぞっている。

向き$RSS$(制限 → 非制限)$F$値$p$値判定
気温 → アイス$433.8 \to 280.1$$162.3$$6.2 \times 10^{-30}$有意
アイス → 気温$306.4 \to 305.7$$0.7$$0.41$有意でない

気温の過去の値を加えると、アイスの予測の誤差は $433.8$ から $280.1$ に減りました。逆に、アイスの過去の値を加えても、気温の予測の誤差は、ほとんど変わりません($306.4 \to 305.7$)。

意味:検定は「気温 → アイス」の一方向だけを検出しました。データの作り方(正解)と一致しています。

具体例②:見かけのグレンジャー因果

次に、日焼け止めの売上を加えます。日焼け止めは、その日の気温に反応して売れるとします(アイスは、具体例①と同じ設定のままです)。アイスとは無関係で、日焼け止めがアイスを売らせているわけではありません。

図2: 日焼け止めとアイスの間に、直接の関係はない。しかし、日焼け止めの前日の売上は、前日の気温の手がかりになり、今日のアイスの予測に役立つ。そのため、見かけの関係が現れる。

向きRSS(制限 → 非制限)F値p値判定
日焼け止め → アイス433.8 → 355.665.11.8 × 10−14有意
アイス → 日焼け止め673.2 → 661.15.40.020有意
日焼け止め → アイス(気温を使ったうえで)280.1 → 280.00.20.67有意でない
アイス → 日焼け止め(気温を使ったうえで)564.9 → 564.40.20.64有意でない

無関係なはずの日焼け止めとアイスの間で、両方向とも有意になりました。日焼け止めの前日の売上は、前日の気温の「手がかり」になるので、アイスの予測に役立ちます。アイスの前日の売上も、気温の手がかりになるので、日焼け止めの予測に役立ちます。しかし、気温を使ったうえで調べると、どちらも消えます。

同じ設定を1,000回繰り返して、$5\%$水準で有意になった割合を数えました。

向き真の関係有意になった割合
気温 → アイスあり$100\%$
アイス → 気温なし$6.1\%$
日焼け止め → アイスなし(共通の原因があるだけ)$100\%$
アイス → 日焼け止めなし(共通の原因があるだけ)$90\%$
日焼け止め → アイス(気温を使ったうえで)なし$4.0\%$
アイス → 日焼け止め(気温を使ったうえで)なし$5.0\%$

意味:真の関係がなければ、有意になる割合は $5\%$ 前後(有意水準)になります。ところが、共通の原因(気温)があるだけで、無関係な2つの間にも、ほぼ毎回「グレンジャー因果」が現れます。原因の候補となる変数を十分に含めていないと、見かけの関係が生じうることは、Granger自身も指摘しています。

グレンジャー因果と真の因果の関係

グレンジャー因果は、真の因果の「手がかり」ですが、一方がもう一方を含むわけではありません。「真の因果がある」ことと「グレンジャー因果がある」ことは、重なる部分もありますが、はみ出す部分もあります。次の$2 \times 2$の表で整理します。

グレンジャー因果ありグレンジャー因果なし
真の因果あり① 気温 → アイス(具体例①)③ 見逃される場合(下で説明)
真の因果なし② 日焼け止め → アイス(具体例②)④ アイス → 気温(具体例①)

② 真の因果がないのに、グレンジャー因果になる

具体例②のとおりです。共通の原因(気温)があると、無関係な日焼け止めとアイスの間にも、グレンジャー因果が現れます。気温を使ったうえで調べると、消えます。

③ 真の因果があるのに、グレンジャー因果にならない

次の2つの場合です。どちらも、「前日までの値だけを使う」というグレンジャー因果の定義から生じます。

  • 同じ時点で効く: 電気のスイッチを押すと、すぐに電気がつくように、遅れなく効く因果です。前日の$X$が、今日の$X$の手がかりにならない(持続性がない)と、見逃されます。$X$に持続性があると、前日の$X$が今日の$X$の手がかりになるので、検出されます。気温のように、前日の値が今日の値に引き継がれやすいものは、こちらです(下の表)。
  • 先読み: 人が将来を見越して行動すると、結果が原因より先に動きます。この場合、原因 → 結果の向きは見逃され、結果 → 原因の向きが検出されます。

真の効果が「$X \to Y$」のデータを作り、1,000回繰り返して、$5\%$水準で有意になった割合を数えました。

設定「$X \to Y$」が有意「$Y \to X$」が有意
同じ時点で効く($X$に持続性なし)$4.1\%$$5.3\%$
同じ時点で効く($X$に持続性あり)$100.0\%$$5.4\%$
先読み($X$に持続性なし)$5.2\%$$100.0\%$

意味:「グレンジャー因果がない」ことから、「真の因果がない」とは言えません。逆に、「グレンジャー因果がある」ことからも、「真の因果がある」とは言えません。グレンジャー因果は、データ上の先行関係という「手がかり」であり、真の因果をすべて含む枠ではありません。

注意点:表の割合について、効果の大きさや持続性の強さを変えると、数値は変わります。見逃される、向きが逆に出る、という傾向を見るための例です。

活用場面

グレンジャー因果は、時系列データのあいだの「先行・遅行」を調べたい場面で使えます。分野が違っても、基本の使い方は共通です。

  1. 同じ間隔(日・週・月など)で並べた、2つ以上の時系列を用意する
  2. トレンドのあるデータは、差分や変化率にして、定常に近づける
  3. 何期前まで使うか(ラグの長さ)を決める
  4. 「$X \to Y$」と「$Y \to X$」の両方向で検定する
  5. 共通の原因になりそうな変数を使ったうえでも検定し、結果を「先行関係」として読む
分野どのように使うか変数の例気をつけること
マーケティング施策の過去の値が、売上の予測に役立つかを調べ、施策と売上の時間的な前後関係を検証するクーポンの配布数 → 売上季節や給料日のような共通の原因で、見かけの関係が出る
広告・集客広告費の過去の値が、来客数の予測に役立つかを調べ、両者の時系列的な関連を分析するチラシやCMの出稿量 → 来客数曜日や天候が共通の原因になる。来客数の予想を見越して広告費を決めると、向きが逆に出ることがある
サプライチェーン需要のデータと、発注・在庫のデータの予測関係を把握し、どちらが先行するかを調べる店舗の販売数 → 卸への発注量需要の予測にもとづいて発注するので、先読みで向きが混ざることがある
金融株価や金融指標どうしの、先行・遅行関係を検証する為替 → 株価、出来高 → 株価株価は、水準のままだと定常でないことが多いので、変化率にするなどして使う。市場は将来を織り込むので、先読みにも注意する

※ いずれの場合も、見つかるのは「予測に役立つ」という先行関係で、真の因果とは限りません。施策の効果そのものを確かめたいときは、A/Bテストなど、別の方法を使います。

まとめ

  • グレンジャー因果: $Y$の過去だけの予測に、$X$の過去を加えると、予測が良くなるか
  • 検定: 誤差($RSS$)の減り方を、$F$検定で調べる
  • 限界: 本当の因果ではない。共通の原因があると、無関係な2つの間にも見かけの関係が出る一方、真の因果があっても、見逃されることがある
  • 使い方: 他の変数を使ったうえでの検定、定常性、ラグの長さを確認する

参考文献

  1. Granger, C. W. J. (1969). Investigating causal relations by econometric models and cross-spectral methods. Econometrica, 37(3), 424–438. https://www.jstor.org/stable/1912791
CTA
  • URLをコピーしました!
  • URLをコピーしました!
この記事を書いた人
目次