YutaroOgawa / causal_book

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

【誤植修正:初版】第4章 P. 81 とp. 82の導出 #11

Open YutaroOgawa opened 3 years ago

YutaroOgawa commented 3 years ago

読者の方より、誤植指摘を頂きました。誠にありがとうございます。

(誤り) 第4章 p.81 傾向スコアとは 下から7行目

この調整化公式の右辺は2つの項、P(Y=y | X=x, Z=z) とP(X=x) のかけ算となって  ↓ この調整化公式の右辺は2つの項、P(Y=y | Z=z, X=x) とP(X=x) のかけ算となって

ーーー

(誤り) 第4章 p.82 傾向スコアとは 一番最後の式までの導出手順がおかしい

正しくは、

調整化公式 P(Y=y | do(Z=z)) = Sigma_x P(Y=y | Z=z, X=x) P(X=x)

に対して、右辺の分母・分子に P(Z=z | X=x)をかけ算すると、

Sigma_x P(Y=y | Z=z, X=x) P(Z=z | X=x) P(X=x) / P(Z=z | X=x)

となる。ここで 同時確率と条件付き確率の変換から P(Z=z | X=x) P(X=x) = P(Z=z, X=x) なので、

Sigma_x P(Y=y | Z=z, X=x) P(Z=z | X=x) P(X=x) / P(Z=z | X=x) =Sigma_x P(Y=y | Z=z, X=x) P(Z=z, X=x) / P(Z=z | X=x)

となる。さらに再度P(Z=z, X=x)について、同時確率と条件付き確率の変換から P(Y=y | Z=z, X=x) P(Z=z, X=x) = P(Y=y, Z=z, X=x)

以上の式変形を用いて、調整化公式を変形すると、

P(Y=y | do(Z=z)) = Sigma_x P(Y=y | Z=z, X=x) P(X=x) = P(Y=y | do(Z=z)) = Sigma_x P(X,Y,Z)/ P(Z=z | X=x)

となります。