畳み込みと混合分布

公開:
統計

はじめに

たたみ込みと混合分布の違いについて議論していきます。正しく理解、勉強されている方は「なぜこの2つのトピックを並列しているのだ」と思われるかもしれないですが、個人的には混乱してしまったので比較しつつ深堀りしてみます。

畳み込み

独立に分布する確率変数 XfX(x)X \sim f_X(x)YfY(y)Y \sim f_Y(y) に対して、これらの和

Z=X+YZ = X+Y

の従う分布 fZ(z)f_Z(z) を考える際に用いられるのが、畳み込み(変数変換)の手法です[1]。再生性を持っている分布であれば和の分布も元の分布となるのですが(ex. 正規分布に従う確率変数の和は正規分布に従う)、一般的な確率変数に対しては慎重に考える必要があります。

fZ(z)f_Z(z) は以下の形式で表現されます。

fZ(z)=fX(t)fY(zt)dtf_Z(z) = \int f_X(t)f_Y(z-t) dt

誤った考え

まず単純に、

Z=X+YZ=X+Y

だから、確率密度関数も

fZ(z)=fX(x)+fY(y)f_Z(z) = f_X(x) + f_Y(y)

和の形になるとする考えは間違いです。

直感的理解

そもそも確率密度関数はあくまでも “密度” であるので、確率のような加法性は単純には成り立たないです。

と、解説されたりするのですが、それは間違いでちゃんと条件を整えることができれば確率密度関数同士の足し合わせにも意味をもたせることができます(cf. 混合分布)。そのため、確率密度関数の足し算でもいいけれど、以下の理由から今回のケースでは不適当であると考えるのが妥当だと思います。

今回のケース Z=X+YZ=X+Y はサイコロを 2 個振って出た目の合計が 7 になるような場合を考えることに相当します。このとき

(x,y)=(1,6),(2,5),(3,4),(4,3),(5,2),(6,1)(x, y) = (1,6),(2,5),(3,4),(4,3),(5,2),(6,1)

のように XX を決めれば YY も自動で決まるような関係性を持っています。そのため単純に

fX(x)+fY(y)f_X(x) + f_Y(y)

としてしまうと、「XXを決めればYYが決まる」という関係性を表現できていないことになります。そのため普通の足し算では駄目だというのが直感的な理解です。

累積分布関数を用いた導出

確率密度関数を求める際に直接は以上の理由から扱いづらいので、いったん累積分布関数を求めてそこからの微分という方法を取ることができます。

FZ(z)=P(X+Yz)=zyfX(x)fY(y) dxdy=FX(Xzy)fY(y) dy\begin{aligned} F_Z(z) &= P(X+Y \leq z) \\\\ &= \int_{-\infty}^{\infty} \int_{-\infty}^{z-y} f_X(x)f_Y(y)~dxdy \\\\ &= \int_{-\infty}^{\infty} F_X(X \leq z-y)f_Y(y)~dy \\\\ \end{aligned}

いま、XXYY は独立であるとしているので、YY をとある値 yy に固定して xzyx\leq z-y を満たすような XX の確率を考え、 最終的にすべての yy で考えるのが一行目からに行目の式変形です。

両辺を zz で微分すると左辺は

ddzFZ(z)=fZ(z)\frac{d}{dz}F_Z(z) = f_Z(z)

と、ZZの確率密度関数になり、右辺は

ddzFX(Xzy)fY(y) dy=fX(zy)ddz(zy)fY(y) dy=fX(zy)fY(y) dy\begin{aligned} &\int_{-\infty}^{\infty} \frac{d}{dz} F_X(X \leq z-y)f_Y(y)~dy \\\\ =&\int_{-\infty}^{\infty} f_X(z-y)\frac{d}{dz}(z-y) f_Y(y)~dy \\\\ =&\int_{-\infty}^{\infty} f_X(z-y)f_Y(y)~dy \\\\ \end{aligned}

となり、畳み込みの公式が導出できました。

混合分布

複数の異なる分布を組み合わせて一つの確率分布を形成する手法が混合分布の考え方で、複雑なデータを表現するときに使用されます。一般的な確率分布は単峰(ピークが一つ)ですが、複数の分布を組み合わせることで峰(ピーク)をいくつも持つようなデータを表現することができます。

混合分布は以下で表されます。

f(x)=i=1ncif(xθi)f(x) = \sum_{i=1}^n c_i f(x|\theta_i)

畳み込みを考える際には、「確率密度関数の和を考えない」としたのですが、混合分布では考えています。単純に考えている(想定している)ケースが異なるので 畳み込みでは確率密度関数の積、混合分布では確率密度関数の和、というようになっているだけなのですが、 初見で「???」となってしまっていました。

畳み込みとの違い

畳み込みでは確率変数の和を考えており

Z=X+YZ=X+Y

の従う確率密度関数を求めていました。混合分布ではその名の通り、確率密度関数(確率変数の従う分布)の和を考えており

f(x)=i=1ncig(xθi)f(x) = \sum_{i=1}^n c_i g(x|\theta_i)

もうすでに確率密度関数は f(x)f(x) として与えられていることに注意してください。まとめると

  • 足し合わせているのが確率変数なのか確率密度関数なのか

という、ただそれだけの内容です。


脚注

  1. もしくはモーメント母関数を用いた方法もあります。 ↩︎