有限離散分布が指数型分布族に属することの証明

　ちゅらデータの k.ueda です。今年も [ちゅらデータ Advent Calender](https://qiita.com/advent-calendar/2021/churadata) に参加しました。これは8日目の記事です。[昨年](https://qiita.com/advent-calendar/2020/churadata)は[超準解析の記事](https://qiita.com/kueda_cs/items/4592cc064c6ef97835c5)を書いたので、今年も数学っぽい話題にします。

　有限離散分布が指数型分布族に属することの証明はググったり書籍を参照すればいくつか出てくるのですが、いずれも行間があって少し困ったので埋めてみました。

　確率空間 $\left(\left\\{\omega_0, \omega_1, \cdots, \omega_n \right\\}, \mathcal{F}, P\right)$ 上の離散分布の確率モデルは
$$p = \left(p_0, p_1, \cdots, p_n\right) = \left(P\left(\omega_0\right), P\left(\omega_1\right), \cdots, P\left(\omega_n\right) \right)$$
をパラメータとして
$$f\left(x\mid p\right) = \prod_{i=0}^{n} p_i^{\delta_i\left(x\right)}$$
と表現できます。ただし、$\delta_i$ は
$$\delta_i\left(x\right) = 1 \ \mathrm{if} \ X\left(\omega_i\right) = x \ \mathrm{else} \ 0$$
なる関数です。任意の実現値 $x\in \mathrm{image}\left(X\right)$ に対して $\delta_0\left(x\right), \delta_1\left(x\right),\cdots,\delta_n\left(x\right)$ のうちいずれかひとつが必ず $1$ となるので、
$$\sum_{i=0}^{n} \delta_i\left(x\right)= 1$$
となることに注意してください。

　パラメータの変数変換
$$\theta = \left(\theta_1, \theta_2, \cdots, \theta_n \right) = \left(\log \left(\frac{p_1}{p_0} \right), \log \left(\frac{p_2}{p_0} \right), \cdots,\log \left(\frac{p_n}{p_0} \right)\right)$$
を考えます。確率モデルをこのパラメータを持つ形を目指して変形してみます。

$$
\begin{align}
f\left(x\mid p\right) &= \prod_{i=0}^{n} p_i^{\delta_i\left( x \right)} \\\
&=\exp \left( \log \left(\prod_{i=0}^{n} p_i^{\delta_i\left( x \right)} \right)\right) \\\
&= \exp \left(\sum_{i=0}^{n} \log \left(p_i^{\delta_i\left( x \right)} \right)\right) \\\
&= \exp \left(\sum_{i=1}^{n} \log \left(p_i^{\delta_i\left( x \right)} \right) + \log\left(p_0^{\delta_0\left(x\right)}\right)\right) \\\
&= \exp \left(\sum_{i=1}^{n} \log \left(p_i^{\delta_i\left( x \right)} \right) - \sum_{j=1}^{n} \log \left(p_0^{\delta_j\left(x\right)} \right) + \sum_{k=1}^{n} \log \left(p_0^{\delta_k\left(x\right)} \right) + \log\left(p_0^{\delta_0\left(x\right)}\right)\right) \\\
&= \exp \left(\sum_{i=1}^{n} \log \left(\left(\frac{p_i}{p_0}\right)^{\delta_i\left(x\right)}\right) + \sum_{k=0}^{n}\log\left(p_0^{\delta_k\left(x\right)}\right)\right) \\\
&= \exp \left(\sum_{i=1}^{n} {\delta_i\left(x\right)} \log \left(\frac{p_i}{p_0}\right) + \sum_{k=0}^{n}{\delta_k\left(x\right)}\log\left(p_0\right)\right) \\\
&= \exp \left(\sum_{i=1}^{n} {\delta_i\left(x\right)}\  \theta_i + \log\left(p_0\right) \sum_{k=0}^{n}{\delta_k\left(x\right)}\right) \\\
&= \exp \left(\sum_{i=1}^{n} {\delta_i\left(x\right)}\  \theta_i + \log\left(p_0\right)\right) \\\
\end{align}
$$

　それぞれの変形では
1. 対数関数と指数関数を適用
2. 対数関数の中の積を外に出して和へ
3. $i=0$ のみ切り出し
4. $\sum_{j=1}^{n}\log\left( p_0^{\delta_j\left(x\right) } \right)$ を足し引き
5. 指数関数の中の第1項は対数関数の差分を商に、第2項は和に $k=0$ を取り込んでいる
6. 対数関数の中の指数部分を外に出す
7. 指数関数の中の第1項はパラメータ変換、第2項は $k$ で束縛されていない $\log\left(p_0\right)$ を和の外へ出している
8. $\sum_{k=0}^{n} \delta_i\left(x\right)= 1$ を適用

という操作をしています。

　どうやら指数型分布族の形になりそうですが、まだ元のパラメータ $p_0$ が残ってしまっているようです。これは以下のように変形すると $\theta$ のみの形にすることができます。

$$
\begin{align}
\log\left(p_0\right) &= - \log\left(\frac{1}{p_0}\right) \\\
&= - \log\left(\frac{\sum_{i=0}^{n}p_i}{p_0}\right) \\\
&= - \log\left(\frac{p_0 + \sum_{i=1}^{n}p_i}{p_0}\right) \\\
&= - \log\left(1 + \frac{\sum_{i=1}^{n}p_i}{p_0}\right) \\\
&= - \log\left(1 + \sum_{i=1}^{n} \frac{p_i}{p_0}\right) \\\
&= - \log\left(1 + \sum_{i=1}^{n} \exp \left(\log\left(\frac{p_i}{p_0}\right)\right)\right) \\\
&= - \log\left(1 + \sum_{i=1}^{n} \exp \left(\theta_i\right)\right)
\end{align}
$$

　以上をまとめると、指数型分布族の形にすることができます。

$$f\left(x\mid p\right) = f\left(x\mid \theta\right) = \exp \left(\sum_{i=1}^{n} {\delta_i\left(x\right)}\  \theta_i - \log\left(1 + \sum_{j=1}^{n} \exp \left(\theta_j\right)\right) \right)$$