以下の本を読みます。キャラクターは架空のものです。解釈の誤りは筆者に帰属します。お気付きの点がありましたらご指摘いただけますと幸いです。
- 作者:清水 昌平
- 発売日: 2017/05/25
- メディア: 単行本(ソフトカバー)
まとめ
- 1章: 【悲報】因果効果、相関係数からわからない
- 2章: 構造的因果モデルの導入、それを用いた平均因果効果の定義、平均因果効果が推定できるランダム化実験
- 3章: ランダム化実験できないときはどうやって平均因果効果を推定するの? → 因果グラフさえ特定すれば勝てる(そのノードXのノードYに対する平均因果効果はノードXとノードXの親たちでノードYを回帰した偏回帰係数だから)→ じゃあどうやって因果グラフ推定するの? → 構造的因果モデルに線形関数・非ガウスノイズを仮定すれば観測変数の分布から因果グラフを識別できて勝てる(LiNGAM)(非線形関数を許す手法もある;p56)(逆に関数とノイズに何も仮定しなかったり、線形関数・ガウスノイズだと因果グラフを識別できない)
見かけ上は正の相関があるが本当の因果効果は負である、なんてことがあるでしょうか。
そうだな、現実とは違うかもしれないけど、「ゲームソフトをたくさんもっている児童ほどテストの成績がよい」という正の相関があったとする。でも、実は「ゲームソフトをたくさんもっている」にも「テストの成績がよい」にも「家が裕福である」という交絡因子があまりにも大きく効いていたとする。そしたら、本当は「ゲームソフトをどれだけもっているか」の「テストの成績」に対する効果が負であったとしても正の相関が観測されるかもしれない。あとは、前の記事にもかいたけど、「若手の医師ほど手術の成功率が高い」とか。ベテランの医師ほど難しい手術をまかされるならね。…あ、でも、後者の場合は下図の左ではなくて右なのかな。「X: 経験年数」「Y: 手術の成功率」「Z: まかされる手術の難易度」だとしたら、X → Z だと思うし。
なるほど…Chapter1 を要約すると「因果効果の大きさ、わからない」といったところでしょうか。
それで Chapter2 に入ると、構造的因果モデルの流儀で「この集団において、 は の原因になる」とは、
それで、(2.3) (2.4) 式の構造方程式モデルで の値を から に変化させたときの平均因果効果は
- ある薬がある病気の人たちを治す効果を測りたいのですが、「全員に薬を飲ませたときの病気の人の割合」と「全員に薬を飲ませなかったときの病気の人の割合」を両方観測することはできません。前者を観測した後時間を巻き戻して後者を観測できればいいのですが、時間は巻き戻せませんので。
- 全員にあらかじめコインを振ってもらうことにしましょう。まあ、あらかじめコインを振ってもらったところで、「全員に薬を飲ませたときの病気の人の割合」と「全員に薬を飲ませなかったときの病気の人の割合」を両方観測することはできません。
- ところでこのとき「全員に薬を飲ませたときの病気の人の割合」と「全員に薬を飲ませたときの、コインが表の人の中での病気の人の割合」は等しくなるはずですね。コインを振った結果が病気が治るかどうかに影響を与えることはありませんから。同様に、「全員に薬を飲ませなかったときの病気の人の割合」と「全員に薬を飲ませなかったときの、コインが裏の人の中での病気の人の割合」も等しくなるはずです(上式の2行目)。
- さらに、「全員に薬を飲ませたときの、コインが表の人の中での病気の人の割合」は、「コインが表の人に薬を飲ませてコインが裏の人に薬を飲ませなかったときの、コインが表の人の中での病気の人の割合」と言い換えられます。「全員に薬を飲ませなかったときの、コインが裏の人の中での病気の人の割合」は「コインが表の人に薬を飲ませてコインが裏の人に薬を飲ませなかったときの、コインが裏の人の中での病気の人の割合」と言い換えられます(上式の3行目)
- 「~ときの」がそろったのに気付くでしょう。もはや時間を巻き戻す必要がなくなったのです。
ときに副部長、上のランダム化実験の説明をかいていたら因果推論へのオールマイティなアプローチを思い付きました。タイムマシンの開発です!
…部長だけがこっそり過去の行動を変えることができるタイムマシンがあるんだったらもう因果推論なんかやらずに20年前に戻ってヤフー株買えばいいじゃないか。
それもそうですね。Chapter2 は構造的因果モデルの導入でした。Chapter3 は、この本のタイトルである「統計的因果探索」の基礎ということですが、そもそも統計的因果探索とは因果グラフを未知としてどうすれば因果グラフが推測できるかを取り扱う研究なのですね。確かに、「睡眠障害」と「抑うつ気分」はどちらが原因でどちらが結果なのか、はたまた因果関係はないのかわかりませんね。そして49ページにきて、Chapter1 の例(3つの因果グラフ)に戻ってきました。データが3つの因果グラフのうちどれから生成されたかを推測することを「因果探索の基本問題」とよぶと。そして「因果探索の基本問題」はノンパラメトリックアプローチでは解けない? では、パラメトリックに、かつ関数には線形性を・外生変数の分布にはガウス分布を仮定したら、やっぱり解けないと…。
13ページの図1.4の3つの観測変数の分布は全部同じで区別できないってことだね。
それで、このテキストで主に取り扱うのはセミパラメトリックに関数形のみを仮定し外生変数の分布には仮定をおかないアプローチで、特に関数に線形性・外生変数の分布に非ガウスを仮定する LiNGAM (Linear Non-Gaussian Acyclic Model) を解説すると。これで「因果探索の基本問題」が解けるということですが。「ガウス分布でさえなければ、どんな連続分布でもかまいません(53ページ)」というのもすごいですね。逆にいうと、それほどまでにガウス分布はデータがどうやって生まれたかを包み隠してしまうのでしょうか…。
それで、58ページからは未観測共通原因 が観測済みであると仮定していますね。そうすると の因果グラフの候補は27通り(双方向の因果関係は考えないので;46ページ)…多いですね…非巡回の仮定を追加しても25通り…全然減ってないじゃないですか…。
しかし、未観測共通原因がなく因果関係が非巡回であれば、 (3.2) と、自分の親と自分の誤差変数から影響を受けるのみですね。さらに線形関数を仮定すれば (3.3) です。これをさらに行列で (3.5) とかけば行列 の1つのゼロ・非ゼロのパターンが1つの有効非巡回グラフに対応すると。それはそうですね。そして、ここでの統計的因果探索の目的が以下のように定式化されます。
単純に ではいけないのはわかるよね。これでは「 の親たちが にしてくれるようなとき」について期待値をとっていることになる。でもこれだと、 の親の誰かから に対する因果関係はあるが実は と の間に因果関係はないというときにも、 の に応じて の期待値は変わってしまう。でも、こんなのは の に対する因果効果じゃない。 を変化させたって は変化しないからね。本当に を変化させたときの の変化を知りたいなら、「 さんの親たちの実現値にかかわらず を にしたときの」という条件付けが必要だ。まず さんの親たちのある実現値に対して の期待値を計算したのが だよね。他方、 さんの親は を経由せずに に因果効果をもたらしている可能性はある。そこは期待値計算のときに考慮しなきゃだから、そこは普通に期待値をとって結局 になる。
む、そういわれるとそうですね…そして、 から への平均因果効果は と の差であり、結局 になるんですね。この は を で回帰したときの の偏回帰係数です。
まとめると、「 から への平均因果効果」を求める手順としては以下になるのかな。
- 構造方程式の係数行列 を推測し、因果グラフを描く。
- が の祖先ではないことを確認する(祖先であったら因果の向きに反する)。
- の親たち をリストアップする。
- を で回帰する。
- の偏回帰係数 が から への平均因果効果である。
77ページの図3.13、因果グラフだけみれば因果的マルコフ条件から導ける条件付き独立性がないのに、実は になってるね…これは… から送り出された と が で合流して起きた負の奇跡かな? 実質的に から への有向辺がないのと同じになってる。
なるほど? しかし、それを仮定する必要があるんですか? だって、その77ページの図って、まさに副部長がいった通り「実質的に から への有向辺がないのと同じ」なんでしょう? じゃあ から への有向辺がない因果グラフを推測したって問題ないじゃないですか。それとも、誤差の議論などで不具合が出てくるんでしょうか。確かにあるはずの枝を見落とすと平均因果効果がくるってきそうですが…まあいいです。それで、各アプローチで因果グラフを特定できるかどうかを概観すると以下のようになるんですね。
- ノンパラメトリックアプローチ: マルコフ同値類までしか特定できないので因果グラフを一意に推測できないことがある。以下の手順による。
- (線形性・ガウス性を仮定する)パラメトリックアプローチ: 同じ観測変数の分布を与える因果グラフを識別できない。
- (平均因果効果のとりうる範囲を推定しようとする試みなどはある。)
- セミパラメトリックアプローチ(LiNGAM): 誤差変数が非ガウスなら因果グラフを一意に特定できる。詳細は次章以降。
- 各因果グラフの場合の観測変数の分布を求める(どうやって誤差分布を特定する??)。
- 実際の観測変数の分布と比較する。