YutaroOgawa / causal_book

書籍「作りながら学ぶ! PyTorchによる因果推論・因果探索」の実装コードのリポジトリです
MIT License
113 stars 32 forks source link

【第4章1節p. 79】d分離したあとの因果ダイアグラム について #2

Open nabeichi63 opened 4 years ago

nabeichi63 commented 4 years ago

P.79の下6行がよくわかりませんでした。「入力変数にはd分離したあとで因果ダイアグラムに残っている変数を使用しました」とありますが、d分離して除外された変数がないように思いました。図4.1.1に元々からあるx_1(年齢), x_2(性別), Z(CMを見た)を使って、Y(購入額)を求める線形回帰モデルを、何も考えずに普通に求めているようにしか見えなかったのですが、Regression adjustmentとしての特徴的な処理はどのへんになるのでしょうか(あまり理解できていないのですみません)。また、「これらの変数を回帰モデルの入力にした理由は、d分離したあとでも残っている変数はバックドアパスを生むため、バックドアパスを閉じるために考慮をする必要があります」という文章は日本語として不明瞭で、やはり意味がわかりませんでした。

YutaroOgawa commented 4 years ago

@nabeichi63 さま

ありがとうございます。 おっしゃる通り、分かりづらい内容となっています。誠に申し訳ございません。

図4.1.1が今回の解析対象の図です。 図4.1.1をd分離した場合に、そのまま元の図の通りになります。 (原因変数:テレビCMを見た、結果変数:商品の購入量、そして両方の交絡因子である:性別、年齢)

よって、

d分離して除外された変数がないように思いました。

と記載いただいた通り、除外された変数はありません。 推論手法の解説のためシンプルにしたのですが、かえって混乱をまねき、申し訳ございません。

Regression adjustmentとしての特徴的な処理はどのへんになるのでしょうか

こちら説明不足で申し訳ございません。

今回d分離したあと、原因変数と結果変数以外に、交絡因子として性別、年齢の2変数が残りました。

「この残った2変数を、結果変数と原因変数の回帰モデルにいれてあげよう!」 というのが、調整(adjustoment)としての特徴的な処理となります。

また、「これらの変数を回帰モデルの入力にした理由は、d分離したあとでも残っている変数はバックドアパスを生むため、バックドアパスを閉じるために考慮をする必要があります

これらの変数(性別、年齢)は、回帰モデルに入れないと、交絡でバックドアパスを生んでいます。 すなわち、「原因変数:テレビCMを見た、の変動 → 結果変数:商品の購入量」 という直接の因果関係以外に、

性別 → 原因変数:テレビCMを見た 性別 → 結果変数:商品の購入量

結果、間接的なパスとして、「原因変数:テレビCMを見た」の変動と、「 結果変数:商品の購入量」の変動が間接的に生まれる状況です(交絡)。

この間接的な因果を生むバックドアパス

性別 → 原因変数:テレビCMを見た 性別 → 結果変数:商品の購入量

を閉じるために、回帰モデルに性別を入れてあげます。

そうすれば、陽に性別を回帰モデルで扱うことになるので、 「原因変数:テレビCMを見た、の変動 → 結果変数:商品の購入量」 という変化は、性別という変数を介した影響としてきちんと回帰モデルで表現できます。

回答が長文にわたり、申し訳ございません。 不明瞭な点などございましたら、追加でご質問くださいませ。

このようにIssueで質問をいただけることで、読者の皆さまの理解も深まるため、とても助かります。 誠にありがとうございます。