Bayesian Causal Inferenceでは傾向スコアは不要?

学生さんからベイズ的な統計的因果推論に関する文献を教えてほしいという要望があり、色々と探していたところ以下の動画を発見しました。

統計的因果推論に対するベイズ的アプローチの概要を知るのには丁度良いかと思い、学生さんにはこちらの動画といくつかの論文を紹介しました。

こちらのスライドの途中で「the propensity score: ignorable」と書かれているところがあります。これは、Bayesianの視点では、(設定によっては)傾向スコアの情報が不要というもので、動画でも述べられているとおり、Bayesianの立場からは自然な話なのですが、論文を書いていると査読者からこの部分の説明を求められることも少なくありません。Frequentistの立場からの統計的因果推論の話しか知らない人からすると意外と思われるかもしれませんので、簡単にこちらの内容を紹介しようと思います。(先に書いておくと、Frequentistの立場であっても傾向スコアを使わない平均処置効果の推定方法はありますが、今回の話はそれとは別の話です。)

準備:潜在反応モデルと平均処置効果

まずは簡単に潜在反応モデルと平均処置効果の定義をおさらいしておきます。この辺りは統計的因果推論の教科書ではたいてい書いてあると思いますのでサラッと流します。

0と1の2値をとる変数\(Z\)が実数値をとる変数\(Y\)に与える因果効果を推定する問題を考えます。例えば\(Z\)を「ECサイトで割引クーポンを付与するかしないか」を表す変数(0:付与しない、1:付与する)、\(Y\)を「(クーポン付与後の)ECサイトでの利用額」を表す変数とし、割引クーポンを付与することが利用額に対してどの程度効果があるかを調べたいといった問題が考えられます。この効果を調べるために、\(n\)個のデータ\((Y_{1}, Z_{1}),\ldots, (Y_{n}, Z_{n})\)が与えられているとします。このとき、\((Y_{i}, Z_{i})\)がi.i.d.で\(\mathbb{P}_{YZ}\)に従うとすれば、\(\mathbb{E}[Y|Z=1]-\mathbb{E}[Y|Z=0]\)の推定は容易に行えます。ただし、\(\mathbb{E}[Y|Z=1]-\mathbb{E}[Y|Z=0]\)は\(Z\)の\(Y\)への効果を表す量として不適切な場合があります。例えば、もともとECサイトを沢山利用しているユーザーに対してのみクーポンを付与していた場合、そのようなユーザーはクーポンが付与されなかったとしても利用額が大きい傾向があると考えられるので、\(\mathbb{E}[Y|Z=1]-\mathbb{E}[Y|Z=0]\)で効果を測ろうとすると過大評価となってしまう可能性があります。

そこで各\(i\)に対して\(Y_{i}^{(0)}, Y_{i}^{(1)}\)という2つの変数の存在を仮定します。これはそれぞれ、ユーザー\(i\)に対してクーポンを付与しなかった場合の利用額と、クーポンを付与した場合の利用額を表す変数です。そうすると\(Y_{i}^{(1)}-Y_{i}^{(0)}\)はユーザー\(i\)に対する\(Z\)の\(Y\)への因果効果と考えられ、これを個別処置効果(Individual Treatment Effect: ITE)といいます。\(Y_{i}^{(0)}, Y_{i}^{(1)}\)と観測される\(Y_{i}\)には、\(Y_{i}=Z_{i}Y_{i}^{(1)}+(1-Z_{i})Y_{i}^{(0)}\)という関係があるとします。これはつまり、\(Z_{i}=0\)のときには\(Y_{i}\)は\(Y_{i}^{(0)}\)と等しく、\(Z_{i}=1\)のときには\(Y_{i}\)は\(Y_{i}^{(1)}\)と等しいということを表します。この関係式は\(Y_{i}^{(0)}\)と\(Y_{i}^{(1)}\)はいずれか一方しか観測できないことも表しています。そのため、ITEは定義はできても原則として推定することはできない量です。

ITEの推定はできませんが,その期待値\(\mathbb{E}\left[Y_{i}^{(1)}-Y_{i}^{(0)}\right]\)はどうでしょう?この量は母平均処置効果(Population Average Treatment Effect: PATE)といいます(動画では他の平均処置効果と区別するためにPATEといっていますが、単純にATEと呼ぶことも多いです)。もし\(Z_{i}\)が\((Y_{i}^{(0)}, Y_{i}^{(1)})\)と独立ならば、\begin{align}\mathbb{E}\left[Y_{i}^{(z)}\right]&=\mathbb{E}\left[Y_{i}^{(z)}|Z_{i}=z\right]=\mathbb{E}\left[Y_{i}|Z_{i}=z\right]\quad(z=0,1)\end{align}が成り立ちますので,\((Y_{i}^{(0)}, Y_{i}^{(1)}, Z_{i})\)がi.i.d.で\(\mathbb{P}_{Y^{(0)}Y^{(1)}Z}\)に従うとすれば、\begin{align}\mathbb{E}\left[Y_{i}^{(1)}-Y_{i}^{(0)}\right]=\mathbb{E}\left[Y^{(1)}-Y^{(0)}\right]=\mathbb{E}[Y|Z=1]-\mathbb{E}[Y|Z=0]\end{align}となります。しかし、一般的には\(Z_{i}\)と\((Y_{i}^{(0)}, Y_{i}^{(1)})\)は独立とは限りません。クーポンの例で言えば、クーポンを付与する側としては、付与する効果が高いユーザー、つまり\(Y_{i}^{(1)}-Y_{i}^{(0)}\)が大きそうなユーザーにクーポンを付与したいので、無作為にクーポンを付与しているのでないかぎり、\(Z_{i}\)は\((Y_{i}^{(0)}, Y_{i}^{(1)})\)と従属であると考えられます。

Unconfoundedness仮定と傾向スコア

\(Z_{i}\)と\((Y_{i}^{(0)}, Y_{i}^{(1)})\)が独立でない場合、両者に影響を与える変数が存在すると考えられます。クーポンの例でいうと、ユーザーの性別や年齢などの属性データ、過去1年間の利用額などが挙げられます。このような変数は交絡要因とよばれることもあります。交絡要因の変数をまとめたものを変数\(X\)とし、ユーザー\(i\)に対する変数を\(X_{i}\)と書くことにします。このとき、すべての交絡要因が観測可能で、\(X\)以外に交絡要因が存在しないと仮定すると、\(Z\)と\((Y^{(0)}, Y^{(1)})\)は\(X\)が与えられたもとで条件付き独立となります。これは確率関数・確率密度関数でいうと、\begin{align}p(y^{(0)}, y^{(1)}, z|x)=p(y^{(0)}, y^{(1)}|x)p(z|x)\qquad \forall y^{(0)}, y^{(1)}, x, z\end{align}が成り立つということです。(以後、話を簡単にするために分布はすべて確率関数または確率密度関数を持つものとします。)この条件はUnconfoundedness仮定とよばれます。Unconfoundedness仮定は次のようにも表現できます。\begin{align}p(z|y^{(0)}, y^{(1)}, x)=p(z|x)\qquad \forall y^{(0)}, y^{(1)}, x, z\end{align}\(p(z|x)\)は\(x\)が与えられたもとでの\(z\)の条件付き確率ですが、特に\(e(x):={\rm Pr}(Z=1|X=x)\)は傾向スコアとよばれます。今回は説明しませんが、逆確率重み付け推定量や二重に頑健な推定量などの推定量はこの傾向スコアを利用してPATEの推定を行います。

Unconfoundedness仮定のもとでは、\begin{align}\mathbb{E}\left[Y^{(1)}|X\right]&=\mathbb{E}\left[Y^{(1)}|X, Z=1\right]\\&=\mathbb{E}\left[Y|X, Z=1\right]\end{align}が成り立ちます(一行目は条件付き独立性から、二行目は\(Z=1\)のもとでは\(Y^{(1)}=Y\)となることから)。期待値の公式から\begin{align}\mathbb{E}\left[Y^{(1)}\right]&=\mathbb{E}_{X}\left[\mathbb{E}\left[Y^{(1)}|X\right]\right]\\&=\mathbb{E}_{X}\left[\mathbb{E}\left[Y|X, Z=1\right]\right]\end{align}が成り立ちます。\(\mathbb{E}\left[Y^{(0)}\right]\)についても同様です。

※ 最後の式では実は少し注意が必要で、条件付き期待値の条件部がnullになってしまう可能性があります。\(0<{\rm Pr}(Z=1|X)<1\)が\(\mathbb{P}_{X} {\rm -}a.s.\)で成り立てば、そのようなケースを排除できます。この条件はOverlap仮定やCommon support仮定とよばれます。

以上からPATEは\begin{align}\mathbb{E}\left[Y^{(1)}-Y^{(0)}\right]=\mathbb{E}_{X}\left[\mathbb{E}\left[Y|X, Z=1\right]-\mathbb{E}\left[Y|X, Z=0\right]\right]\end{align}のように表せることになります。

Unconfoundedness仮定のもとでのPATEのベイズ推定

さて、ここからが本題です。\(\mathbb{P}_{Y|X,Z}, \mathbb{P}_{X}\)が確率密度関数を持つとすると、\begin{align}\mathbb{E}_{X}\left[\mathbb{E}\left[Y|X, Z=1\right]\right]&=\int \int y\cdot p(y|x,z=1, \theta_{Y^{(1)}})p(x|\theta_{X})\mathrm{d}y\mathrm{d}x\\ \mathbb{E}_{X}\left[\mathbb{E}\left[Y|X, Z=0\right]\right]&=\int \int y\cdot p(y|x,z=0, \theta_{Y^{(0)}})p(x|\theta_{X})\mathrm{d}y\mathrm{d}x\end{align}のように表すことができます。ここで、\(\theta_{Y}=(\theta_{Y^{(0)}}, \theta_{Y^{(1)}}), \theta_{X}\)は分布のパラメータです。ここで一つ重要なポイントは、PATEが\(\theta_{X}, \theta_{Y}\)の関数で表されるということです。つまり何らかの関数\(\Phi\)により\begin{align}\mathbb{E}\left[Y^{(1)}-Y^{(0)}\right]=\Phi(\theta_{X}, \theta_{Y})\end{align}のように表すことができます。よってBayesianの立場からPATEの推定問題を考えるならば、\(\theta_{X}, \theta_{Y}\)の事後分布が得られればよいということになります。例えば損失関数として二乗誤差損失をとった場合、\(\Phi(\theta_{X}, \theta_{Y})\)の事後平均を出力するのがベイズ最適な推定量となります。

では\(\theta_{X}, \theta_{Y}\)の事後分布がどのようになるかを考えます。まず、\(\mathbb{P}_{Y|X,Z}, \mathbb{P}_{X}\)と同様\(\mathbb{P}_{Z|X}\)も確率関数を持つと仮定し、そのパラメータを\(\theta_{Z}\)とします。得られるデータは\(D=(X_{i}, Y_{i}, Z_{i})_{i=1,\ldots,n}\)で、それに対する尤度は\begin{align}p(D|\theta_{X}, \theta_{Y}, \theta_{Z})=\prod_{i=1}^{n}p(X_{i}|\theta_{X})p(Z_{i}|X_{i}, \theta_{Z})p(Y_{i}|X_{i}, Z_{i}, \theta_{Y})\end{align}と表されます。もし\(\theta_{X}, \theta_{Y}, \theta_{Z}\)が独立ならば、\begin{align}p(\theta_{X}, \theta_{Y}, \theta_{Z}|D)\propto p(\theta_{X})p(\theta_{Y})p(\theta_{Z})\prod_{i=1}^{n}p(X_{i}|\theta_{X})p(Z_{i}|X_{i}, \theta_{Z})p(Y_{i}|X_{i}, Z_{i}, \theta_{Y})\end{align}となりますが、右辺で\(\theta_{Z}\)を含むのが\(p(\theta_{Z})\prod_{i=1}^{n}p(Z_{i}|X_{i}, \theta_{Z})\)のみで、これらの項には\(\theta_{Y}, \theta_{Z}\)が含まれないので\begin{align}p(\theta_{X}, \theta_{Y}|D)\propto p(\theta_{X})p(\theta_{Y})\prod_{i=1}^{n}p(X_{i}|\theta_{X})p(Y_{i}|X_{i}, Z_{i}, \theta_{Y})\end{align}となります。つまり\((\theta_{X}, \theta_{Y})\)の事後分布を求めるのに\(p(Z|X, \theta_{Z})\)の情報は全く不要であることが分かります。先ほど述べたとおり、PATEは\(\theta_{X}, \theta_{Y}\)の関数として表せますので、PATEに関してベイズ的な推論を行う上で\(p(Z|X, \theta_{Z})\)は不要となります。

まとめ

今回はBayesianの視点では、設定によっては傾向スコアの情報が不要となることを説明しました。そもそも傾向スコアを使って因果推論を行う動機の一つに、極力\(p(Y|X, Z)\)のモデル化をしたくないということが挙げられると思うので、\(p(Y|X, Z)\)のモデルの情報を積極的に使うアプローチは根っこの部分で考え方が違うともいえます。

統計的因果推論では傾向スコアが重要視されることが多いのに、ベイズ推定ではその情報が不要になるというのがparadoxであるとして、動画の後半では傾向スコアの情報をベイズ推定に活用する方法について述べられています(私個人としてはparadoxとは感じませんし、動画でも述べられていますが後半で述べられているアプローチのいくつかは論理的におかしい部分があります)。機会があればいずれこちらの内容も紹介したいと思います。

関連記事

  1. データ科学入門Ⅱ発刊

  2. 尤度原理について

  3. AAAI2024に論文が採択されました!

  4. AICによるモデル選択の意味を数値実験を通じて理解する

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。