本記事は総研大アドベントカレンダー2025 & 統計科学コースアドベントカレンダー2025、11日目の記事です。
与えた条件をみたす確率分布の候補がたくさんあるとき、その中からエントロピーが最大のものを選ぶべし、という指針があります。これを「最大エントロピー原理」と呼び、統計・機械学習領域外でも、物理学や神経科学などで幅広く応用されています。
この記事では、最大エントロピー原理の一つの幾何学的な見方を解説したいと思います。前提知識には、統計学についての基本的な事柄を仮定します。特に、
- Fisher情報行列
- KLダイバージェンス
- エントロピー
というワードに一度は触れたことがあると理解しやすいと思われますが、必須ではありません。幾何学についての専門的な知識(多様体など)は仮定しません。記事の最後で「情報幾何学」という枠組みによって、具体的に議論していた概念が一般化され、美しくまとまることを説明するつもりです。
最大エントロピー原理
まず、この記事で取り上げる最大エントロピー原理について簡潔に説明します。
問題の定式化
有限集合 $\Omega_n = \{0,1,\dots,n\}$ 上に値をとる確率変数 $X$ があるとします。$X$ が従う分布 $p$ はわかりませんが、いくつかの観測量($\Omega_n$ から $\mathbb{R}$ への関数)$f_1,\dots,f_k$ について、期待値が $c_1,\dots,c_k$ であることがわかっているとしましょう:
\mathbb{E}[f_i] = \sum_{x=0}^n f_i (x) p(x) = c_i \quad (i = 1,\dots,k).
このとき、最大エントロピー原理は、以上の期待値制約をみたす確率分布 $p$ のうち、エントロピー
H(p) = -\sum_{x=0}^n p(x) \log p(x)
を最大化するようなものを選ぶことを要請します。
一般的な解法
上記の問題は、
- 総和が1になる
- $k$ 個の期待値についての制約
という $k+1$ 個の等式制約がついた $n+1$ 変数($p(0),\dots,p(n)$)関数 $H$ の最大化問題として扱えます。したがってLagrangeの未定乗数法を用いることで解けることがよく知られています。結果的に求まる分布は指数型分布族になります:
p(x) = \exp\left[ \sum_{i=1}^k \theta_i f_i (x) - \psi(\theta) \right].
問題の別の見方
ところで、KLダイバージェンスという、2つの分布間の"距離"1を測る量が知られています:
\mathcal{D}(p||q) = \sum_{x=0}^n p(x) \log \left(\frac{p(x)}{q(x)}\right)
"距離"的な性質として、
- 非負性: $\mathcal{D}(p||q) \geq 0$、
- 非退化性: $p = q$ のとき、またこのときに限り $\mathcal{D}(p||q) = 0$、
をもち、ここでは詳しく説明しませんが、他にも「分解可能性」や「情報単調性」などの望ましい性質をもちます(2第4章などを参照してください)。
KLダイバージェンスの式をエントロピーの式と見比べると、似た形をしていますね。実際、一様分布 $p_{\text{uni}} (x) = 1/(n+1)$ を通して、
\mathcal{D}(p||p_{\text{uni}}) = \sum_{x=0}^n p(x) (\log p(x) + \log (n+1)) = -H(p) + \text{const.}
と結びつきます。このことから「エントロピー最大化」=「一様分布までの"距離"の最小化」がわかります。つまり、問題は
- 期待値制約をみたす分布全体から、一様分布までの"距離"が最も小さい点を選び出せ
と言い換えられます。
【準備編】 確率単体
ここで一旦最大エントロピー原理から少し離れて、「$\Omega_n$ 上の確率分布全体」がもつ、一般的な幾何学的性質を調べてみましょう。
$\Omega_n$ 上の確率分布全体を $\mathcal{P}_n$ で表すことにします:
\mathcal{P}_n = \left\{ p: \Omega_n \to (0,1) \mid \sum_{x=0}^n p(x) = 1 \right\}.
ここで $p \in \mathcal{P}_n$ は、いかなる $x$ についても $0 < p(x) < 1$ をみたすものとしていることに注意してください3。
$p \in \mathcal{P}_n$ は、$\Omega_n$ の元 $0,1,\dots,n$ に $p(0),p(1),\dots,p(n)$ と確率を割り振ります。これは逆に、$(p_0,p_1,\dots,p_n)$ という $n+1$ 個の数の組を適当に指定すれば、確率分布 $p$ が $p(0) = p_0, \dots, p(n) = p_n$ というように決まってしまうとも見れます。ただし、指定する数の組には
\sum_{i=0}^n p_i = 1, \quad 0 < p_i < 1 \quad (i = 0,1,\dots,n)
という条件がつきます。$\mathbb{R}^{n+1}$ 内の、上記の条件に対応する部分空間を確率単体と呼び $\mathcal{S}_n$ で表します:
\mathcal{S}_n = \left\{(p_0,p_1,\dots,p_n) \in \mathbb{R}^{n+1} \mid \sum_{i=0}^n p_i = 1, \quad 0 < p_i < 1 \;\; (i=0,1,\dots,n)\right\}
数学的に言えば、$\mathcal{P}_n$ と $\mathcal{S}_n$ の間には全単射が存在します。今後、この全単射によって、$\mathcal{P}_n$ を $\mathcal{S}_n$ と同一視します。すなわち、$p \in \mathcal{P}_n$ は $(p(0),\dots,p(n)) \in \mathcal{S}_n$ という点、$(p_0,\dots,p_n) \in \mathcal{S}_n$ は $p(i) = p_i$ という分布だと、それぞれ思うことにします。
確率単体上の座標系
$\mathcal{S}_n$ は $\mathbb{R}^{n+1}$ の部分空間であるため、その点は $n+1$ 個の座標値をもちます。しかし、座標値全体で和をとると1になる、という制約のために、自由に動ける座標値の数は $n$ 個になっています。例えば、$p_1,\dots,p_n$ の値を適当に決めれば、$p_0$ の値は自動的に $p_0 = 1 - (p_1 + \cdots + p_n) $ と決まってしまいます。
ここで重要なのは、$\mathcal{S}_n$ の一点を指定するには、$n$ 個の実数を決めることが必要十分である、という事実です。先程は $p_1,\dots,p_n$ という $n$ 個を選びましたが、他にも無数の選び方があり、これらを総じて座標系と呼ぶことにします4。数学的には、座標系は $\mathcal{S}_n$ から $\mathbb{R}^n$ への写像になります。
η-座標
$(p_1,\dots,p_n)$ の組を $\eta$-座標系と呼ぶことにします:
\eta: \mathcal{S}_n \to \mathbb{R}^n; \quad \eta(p) = (p_1,\dots,p_n).
先程も述べたように、$\eta$-座標の値が $(\eta_1,\dots,\eta_n)$ のように与えられたとき、対応する確率分布は次のように決まります:
p_0 = 1 - \sum_{i=1}^n \eta_i, \quad p_i = \eta_i \quad (i = 1,\dots,n).
θ-座標
もう一つ、確率の比を用いた座標系($\theta$-座標系と呼ぶことにします)を考えてみましょう:
\theta: \mathcal{S}_n \to \mathbb{R}^n; \quad \theta(p) = \left(\log \frac{p_1}{p_0}, \dots, \log \frac{p_n}{p_0}\right).
こちらも、$\theta$-座標の値が $(\theta_1,\dots,\theta_n)$ のように与えられたとき、対応する確率分布は一つに決まります:
p_0 = \frac{1}{1 + \sum_{i=1}^n e^{\theta_i}}, \quad p_i = \frac{e^{\theta_i}}{1 + \sum_{i=1}^n e^{\theta_i}} \quad (i = 1,\dots,n).
座標系の軸の「向き」
見ている点は同じでも、座標系が異なれば、その座標の見かけの値は一般的に異なります。逆も然りで、はじめに2つの座標系で $(\eta_1,\dots,\eta_n)$ と $(\theta_1,\dots,\theta_n)$ が同じ点 $p \in \mathcal{S}_n$ を指していたとき、1番目の座標値を $\alpha$ だけ動かしてみます($\alpha$ はこの操作が可能なほど十分小さいものとします)。このとき、動かしたあとの $(\eta_1 + \alpha,\dots,\eta_n)$、$(\theta_1 + \alpha,\dots,\theta_n)$ がそれぞれ指す点は、もはや同じとは限りません。
これは、それぞれの座標系の軸(例えば $\eta_1$ と $\theta_1$)が向いている方向や、目盛りの間隔が異なるからです。これらを調べるには、各座標系で、その軸方向に単位速度で動く曲線の「速度ベクトル」を調べるのが常套手段です。
η-座標における速度ベクトル
点 $p$ を出発し、$\eta$-座標系では $i$ 番目の軸方向に単位速度で変わる次の曲線 $c(t)$ を考えます:
\eta(c(t)) = (\eta_1(p),\dots,\eta_i(p) + t,\dots,\eta_n(p)).
これは、$\mathcal{S}_n$ 上では
c(t) = \left(1 - \sum_{j=1}^n \eta_j(p) - t,\, \eta_1(p),\dots, \eta_i(p) + t, \dots,\eta_n(p) \right)
と表されます。各 $t$ で各成分の総和がちゃんと1になっていること(すなわち $\mathcal{S}_n$ 上の点であること)を確認してください。ただし、$\mathcal{S}_n$ からはみ出ないように $t$ は十分小さい範囲で考えるものとします。
この曲線の $t=0$ における速度は、
v^{(\eta)}_i (p) \equiv \frac{dc}{dt}(0) = (-1,0,\dots,1,\dots,0) \in \mathbb{R}^{n+1}
となります。つまり、$\eta$-座標系から見ると $p$ から $i$ 番目の軸方向に単位速度で進むことは、$\mathcal{S}_n$ 上では $p$ から速度 $v^{(\eta)}_i (p)$ で動くことに対応していることを意味しています。
θ-座標における速度ベクトル
$\eta$-座標のときと全く同様の手続きをすることで(多少計算が大変になりますが)、
v^{(\theta)}_i (p) \equiv (-p_0 p_i, -p_1 p_i, \dots, -p_i^2 + p_i, \dots, -p_n p_i) \in \mathbb{R}^{n+1}
が得られます。$\eta$-座標のときと違って、速度ベクトルは点 $p$ に依存していることに注意してください。これは点ごとに軸の方向や目盛りが変わっていることを意味しています。
接ベクトル
上では各座標系で、ある軸方向に進むという特別な曲線の速度ベクトルを考えて、軸の「向き」を調べました。一方で、当然ながらどんな滑らかな曲線 $c(t)$ についても速度ベクトルは考えられます。速度ベクトルのことを数学では接ベクトルとも呼びます。
時刻 $t = 0$ で $p$ を通る $\mathcal{S}_n$ 上のすべての曲線の速度ベクトル(接ベクトル)を集めてきたものを接ベクトル空間と呼んで、$T_p \mathcal{S}_n$ で表します。先程調べた $v^{(\eta)}_i (p)$ や $v^{(\theta)}_i (p)$ も $T_p \mathcal{S}_n$ の元です。
$\mathcal{S}_n$ 上の接ベクトル $v \in T_p \mathcal{S}_n$ がみたすべき性質として、次は重要です:
$v \in T_p \mathcal{S}_n$ の成分の総和は0、すなわち $v_0 + v_1 + \cdots + v_n = 0$。逆に、これをみたす任意のベクトル $v \in \mathbb{R}^{n+1}$ は接ベクトル空間の元である。
証明
まず接ベクトル $v \in T_p \mathcal{S}_n$ の成分の総和が0であることを示します。接ベクトルはある曲線の速度ベクトルとして表されるため、 $$ v = \frac{dc}{dt}(0) $$ とします。$c(t) = (p_0(t),\dots,p_n(t))$ とすると $\sum_{i=0}^n p_i(t) = 1$ より、両辺微分して時刻 $t=0$ で評価すると $\sum_{i=0}^n v_i = 0$ が得られます。逆に、成分の総和が0のベクトル $v \in \mathbb{R}^{n+1}$ について、曲線を $c(t) = p + t v$ で定めれば、その時刻 $t=0$ での速度は $v$ になります。
$v^{(\eta)}_i (p)$ や $v^{(\theta)}_i (p)$ も、成分の総和をとるとちゃんと0になっていることを確かめてみてください。
実は $\{v^{(\eta)}_i (p)\}_{i=1,\dots,n}$ や $\{v^{(\theta)}_i (p)\}_{i=1,\dots,n}$ には、軸の向きという定性的な解釈を与えてくれる量、という以上に、接空間 $T_p \mathcal{S}_n$ の基底になっているという重要な事実があります。つまり、どんな接ベクトルも、どちらかの $n$ 本のベクトルの組の組み合わせ(線形結合)によって表せます。ここでは詳しくは触れませんが、今後も使う次の命題は示しておきます:
$p$ から出発し、$\eta$-座標系でみると $\eta(c(t)) = (x_1(t),\dots,x_n(t))$ である曲線 $c$(つまり $c (0) = p$)の、$t = 0$ における速度ベクトルは次のように表される:
$$
\frac{dc}{dt}(0) = \sum_{i=1}^n \frac{dx_i}{dt}(0) v^{(\eta)}_i(p).
$$
証明
$\eta: \mathcal{S}_n \to \eta(\mathcal{S}_n)$ の逆写像を $\phi$ で表すことにします。$\phi$ の具体的な形は $\eta$-座標を導入したときに既に求まっています: $$ \phi(\eta_1,\dots,\eta_n) = \left(1 - \sum_{j=1}^n \eta_j, \eta_1, \dots, \eta_n\right). $$ $\phi$ を用いると、$c(t) = \phi(x(t))$ と表せます。この曲線の $t=0$ における速度は、連鎖律より $$ \left. \frac{d}{dt} \phi(x(t)) \right|_{t = 0} = \sum_{i=1}^n \frac{\partial \phi}{\partial\eta_i}(\eta(p)) \frac{d x_i}{d t}(0) $$ です。ところで、先程の軸方向に単位速度で進む曲線の計算をこの形式で表すと、 $$ y(t) = (\eta_1(p), \dots, \eta_i(p) + t, \dots, \eta_n(p)), \quad c(t) = \phi(y(t)) $$ $$ v_i^{(\eta)}(p) = \left.\frac{d}{dt} \phi(y(t))\right|_{t=0} = \frac{\partial \phi}{\partial\eta_i}(\eta(p)) $$ が得られます。以上で題意が得られました。この命題は、曲線の $\eta$-座標系での成分表示が $(x_1(t),\dots,x_n(t))$ のように明確にわかっているとき、その成分表示の微分によって $t=0$ での速度ベクトルが表せる、ということを言っています。
例えば後の章で、$\eta$-座標系では直線に見える曲線が現れます。つまり、$\eta(c(t)) = \eta(p) + u t$($u \in \mathbb{R}^n$)という形の曲線です。この曲線の速度ベクトルは、上の命題を使うと
\frac{dc}{dt}(0) = \sum_{i=1}^n u_i v^{(\eta)}_i(p)
であることがすぐにわかります。$\theta$-座標系についても全く同じ形で命題が成り立ちます。
この章のまとめ
- $\Omega_n$ 上の確率分布は、各元の確率の値を $n+1$ 個並べた数の組と一対一に対応することから、確率分布全体 $\mathcal{P}_n$ を確率単体と呼ばれる $\mathcal{S}_n \subset \mathbb{R}^{n+1}$ と同一視できます。
- $\mathcal{S}_n$ の座標系として、$\eta$、$\theta$、それらの混合座標などがとれます。
- $\eta$-座標系、$\theta$-座標系それぞれの座標系の軸の向きを表す $\mathcal{S}_n$ 上の速度ベクトル $v^{(\eta)}_i$、$v^{(\theta)}_i$ を具体的に計算しました。
- 接ベクトル(=速度ベクトル)がみたす必要十分な性質を示しました。また、接ベクトル全体として接ベクトル空間 $T_p \mathcal{S}_n$ を導入しました。
- 曲線の速度ベクトルが、$\{v^{(\eta)}_i\}_{i=1,\dots,n}$ あるいは $\{v^{(\theta)}_i\}_{i=1,\dots,n}$ の線形結合によって簡単に表せることを見ました。
【結果1】 部分空間としての期待値制約をみたす分布
前の章では確率分布全体 $\mathcal{P}_n$ を幾何的な空間 $\mathcal{S}_n$ だと捉えられることを説明しました。この考え方のもとでは、最大エントロピー原理に現れる「期待値制約をみたす分布全体」は $\mathcal{S}_n$ の部分空間に対応します。これは $\mathcal{S}_n$ の中のどのような部分空間なのでしょう?
期待値制約に"沿った"座標系
期待値制約 $\mathbb{E}[f_i] = c_i$($i=1,\dots,k$)をみたす分布全体を $\mathcal{M}_k \subset \mathcal{S}_n$ で表します。実は、$\mathcal{S}_n$ には $\mathcal{M}_k$ に"沿った"座標系が存在し、この座標系でみると $k$ 個の座標が常に0の空間として $\mathcal{M}_k$ を記述することができます。さらに、この座標系は $\eta$-座標系のそれぞれの軸の回転+拡大縮小で記述できます。命題の形で述べると次のようになります:
$\mathcal{S}_n$ 上の座標系 $\xi = (\xi_1,\dots,\xi_n)$ で、$\eta$-座標系の線形変換で表せ(つまり、ある可逆行列 $A \in \mathbb{R}^{n \times n}$ とベクトル $b \in \mathbb{R}^n$ が存在して $\eta = A\xi + b$ と表せ)、更に $\mathcal{M}_k = \{p \in \mathcal{S}_n \mid \xi_1(p) = \cdots = \xi_k(p) = 0\}$ をみたすものが存在する。
証明
期待値制約を $\eta$-座標で表すと、 $$ \sum_{j=1}^n \eta_j(p) f_i (j) + \left(1 - \sum_{j=1}^n \eta_j(p)\right)f_i(0) = c_i \quad (i = 1,\dots,k) $$ と書けます。これは整理すると $$ \sum_{j=1}^n \eta_j (p)(f_i (j) - f_i (0)) = c_i - f_i(0) $$ です。$F_{ij} = f_i(j) - f_i(0)$、$d_i = c_i - f_i(0)$ とすると、$F \in \mathbb{R}^{k \times n}$、$d \in \mathbb{R}^k$ で、期待値制約は $F \eta(p) = d$ と表すことができます。観測量 $f_1,\dots,f_k$ は互いに独立なので $F$ のランクは $k$ で、線形代数の議論により(後述)ある可逆な行列 $A \in \mathbb{R}^{n \times n}$ が存在して、$FA = (I_k,\, O)$(左に $k \times k$ の単位行列、残りの $n-k$ 列はすべて0) となります。$\xi = A^{-1} \eta - \begin{pmatrix} d\\ 0\end{pmatrix}$ によって新しい座標系を定義すると、期待値制約 $F\eta(p) - d = 0$ は
$$
F\eta(p) -d = FA\left(A^{-1}\eta(p) - \begin{pmatrix} d\\ 0\end{pmatrix}\right) = \begin{pmatrix} \xi_1(p) \\ \vdots \\ \xi_k(p) \end{pmatrix} = \begin{pmatrix} 0 \\ \vdots \\ 0 \end{pmatrix}
$$
と表せて、題意が得られました。
証明中に出てきた線形代数の議論
まず、$F F^\top (F F^\top)^{-1} = I_k$ です。$\dim \ker F = n-k$ なので、$\ker F$ の $n-k$ 個の基底を並べた行列を $K \in \mathbb{R}^{n \times (n-k)}$ とすれば、$A = (F^\top (F F^\top)^{-1},\, K)$ によって $F A = (I_k,\,O)$ が得られます。【準備編】 確率単体上の"距離"
最大エントロピー原理の問題を言い換えたものは
期待値制約をみたす分布全体から、一様分布までの"距離"が最も小さい点を選び出せ
でした。これまでの章で、「期待値制約をみたす分布全体」が確率分布全体の中で、幾何学的には$\eta$-座標系を線形に変換した座標系の $k$ 個が0になるもの、として捉えられることがわかりました。残った"距離"について考察しましょう。
確率分布全体 $\mathcal{P}_n$ の上(あるいは確率単体 $\mathcal{S}_n$ の上)の"距離"とは、ここでもKLダイバージェンス
\mathcal{D}(p||q) = \sum_{x=0}^n p(x) \log \left(\frac{p(x)}{q(x)}\right)
のことです。
一方向に微小な変化をした場合
"距離"としてのKLダイバージェンスの性質を調べるために、まずはある分布 $p \in \mathcal{S}_n$ から、ほんの少しだけ分布を変化させた $p+v \in \mathcal{S}_n$ を考えてみましょう。ここで $p+v$ も分布であるためには $\sum_{i=0}^n v_i = 0$ が必要であること、すなわち $v$ は接ベクトルである($v \in T_p \mathcal{S}_n$)ことに注意しましょう。$\|v\| \ll 1$ とします。$p$ と $p+v$ はどれだけ"離れて"いるでしょうか?
まず $\mathcal{D}(p+v||p)$ を考えてみましょう。定義から
\begin{align}
\mathcal{D}(p+v||p) &= \sum_{i=0}^n (p_i + v_i)\log\left(1 + \frac{v_i}{p_i}\right)\\
&= \sum_{i=0}^n (p_i + v_i)\left(\frac{v_i}{p_i} - \frac{1}{2}\left(\frac{v_i}{p_i}\right)^2\right) + o(\|v\|^2)\\
&= \frac{1}{2}\sum_{i=0}^n \frac{v_i^2}{p_i} + o(\|v\|^2)
\end{align}
です。2番目の等号では $\log(1+x)$ のマクローリン展開を用いました。この式から、$p$ から変化させる方向によって、$p$ からの"距離"が変わることがわかります。具体的にはもとの確率が低い($p_i$ が小さい)方向ほど、変化は大きく影響し、もとの確率が高い($p_i$ が大きい)方向の変化の寄与は小さくなります。直感的にも尤もな結果ではないでしょうか?
実は、$p$ と $p+v$ を入れ替えた $\mathcal{D}(p||p+v)$ も、近似的には同じ結果を与えます:
\mathcal{D}(p||p+v) = \frac{1}{2}\sum_{i=0}^n \frac{v_i^2}{p_i} + o(\|v\|^2)
一般的には $\mathcal{D}(p||q) \neq \mathcal{D}(q||p)$ で対称性をみたさないことは有名ですが、局所的には対称性をもっているのです。
二方向に微小な変化をした場合
今度は、分布 $p \in \mathcal{S}_n$ から、微小に二方向 $v,w$ に変化させてみて、$p$、$p+v$ と $p+w$ の3点の間の"距離"にどのような関係が成り立っているか調べてみます。まず、
\begin{align}
\mathcal{D}(p+w||p+v) &= \mathcal{D}(p+v + (w-v) || p + v)\\
&= \frac{1}{2}\sum_{i=0}^n \frac{(w_i - v_i)^2}{p_i + v_i} + o(\|w-v\|^2)\\
&= \frac{1}{2}\sum_{i=0}^n \frac{(w_i - v_i)^2}{p_i} + o(\|v\|^2) + o(\|w\|^2)\\
\end{align}
2番目の等号では前の節の結果を、3番目の等号では $p_i + v_i = p_i(1 + v_i/p_i)$ として、$1/(1+x)$ のマクローリン展開を使いました。最後の式は、
\begin{align}
\frac{1}{2}\sum_{i=0}^n \frac{(w_i - v_i)^2}{p_i} &= \frac{1}{2}\sum_{i=0}^n \frac{v_i^2}{p_i} + \frac{1}{2}\sum_{i=0}^n \frac{w_i^2}{p_i} - \sum_{i=0}^n \frac{v_i w_i}{p_i}\\
&= \mathcal{D}(p+w||p) + \mathcal{D}(p||p+v) - \sum_{i=0}^n \frac{v_i w_i}{p_i}
\end{align}
と書き換えられます。まとめると、微小変化 $v,w$ によって、$p+w$ と $p+v$ の間の"距離"は
\mathcal{D}(p+w||p+v) \simeq \mathcal{D}(p+w||p) + \mathcal{D}(p||p+v) - \sum_{i=0}^n \frac{v_i w_i}{p_i}
と、$p,p+w$ と $p,p+v$ の間の"距離"を用いて分解することができることがわかりました。
拡張ピタゴラスの定理(局所版)
得られた分解式を観察すると、最後の項について
\sum_{i=0}^n \frac{v_i w_i}{p_i} = 0
が成り立てば、
\mathcal{D}(p+w||p+v) \simeq \mathcal{D}(p+w||p) + \mathcal{D}(p||p+v)
となって、これはEuclid幾何学でお馴染みの「ピタゴラスの定理」と全く同じ形をしていることに気づきます。ピタゴラスの定理は、3点 $p,q,r$ について、線分 $q,p$ と $q,r$ が $q$ で「直交」しているなら、距離の2乗について
d(p,r)^2 = d(p,q)^2 + d(q,r)^2
という関係が成り立つ、というものでした。
KLダイバージェンスを"距離"とする確率単体上の世界には、まだ「直交」という概念を与えていませんでしたが、上述の考察により次のように定義することにします:
$p \in \mathcal{S}_n$ において接ベクトル $v,w \in T_p \mathcal{S}_n$ が直交するとは、次が成り立つこと:
$$\sum_{i=0}^n \frac{v_i w_i}{p_i} = 0.$$
直交条件は、
\langle v,w \rangle_p = \sum_{i=0}^n \frac{v_i w_i}{p_i}
と書くことにすると $\langle v,w \rangle_p = 0$ とも書けます5。この直交条件が成り立つとき、「拡張ピタゴラスの定理」である
\mathcal{D}(p+w||p+v) \simeq \mathcal{D}(p+w||p) + \mathcal{D}(p||p+v)
が成り立つのです。
内積とη座標とθ座標
最後に登場した $\langle v,w \rangle_p$ という記号は、$\langle \cdot, \cdot \rangle_p$ が $T_p \mathcal{S}_n$ の内積になっていることを見越してのものです。「$T_p \mathcal{S}_n$ の内積」というワードにピンと来なくても、ここでは深入りしないため、気にしなくても大丈夫です。Euclid空間における通常の内積と同様の演算規則が成り立つものだと思ってください。ただ、前の章で求めた $\eta$-座標系と $\theta$-座標系の軸の向きである $v^{(\eta)}_i(p)$ と $v^{(\theta)}_j (p)$ には特別な関係が成り立つので、それだけ見ておきましょう。
以下が成り立つ。
$$
\langle v_i^{(\eta)}(p), v_j^{(\theta)}(p) \rangle_p = \delta_{ij}
$$
ここで $\delta_{ij}$ はクロネッカーのデルタです。証明は単純計算なので省略します。
この性質は、$\eta$-座標系の軸と $\theta$-座標系の軸が、ある意味で正規直交していることを表しています。この様子を双対的と呼んだりしますが、ここでは「双対らしさ」には立ち入りません。
拡張ピタゴラスの定理(大域版)
前節では、確率単体上に直交条件を定め、その直交条件をみたす十分近い3点には局所的に拡張ピタゴラスの定理が成り立つことを見ました。実は、この定理は大域的に拡張できます。まず、次の補題がわかります:
3点 $p,q,r \in \mathcal{S}_n$ に対して、KLダイバージェンスは次をみたす:
$$
\mathcal{D}(p||q) + \mathcal{D}(q||r) = \mathcal{D}(p||r) + \sum_{i=1}^n (\eta_i(p) - \eta_i(q))(\theta_i(r) - \theta(q))
$$
証明
特別な考察は必要とせず、計算すればわかります。ここでは概略だけ述べます。 $$ \mathcal{D}(p||q) + \mathcal{D}(q||r) = \sum_i p_i \log p_i + \sum_i q_i \log q_i - \sum_i p_i \log q_i - \sum_i q_i \log r_i $$ で(和は $0$ から $n$ まで)、これに $0 = - \sum_i p_i \log r_i + \sum_i p_i \log r_i$ を挟んで変形すると、 $$ \mathcal{D}(p||q) + \mathcal{D}(q||r) = \mathcal{D}(p||r) + \sum_i (p_i - q_i)(\log r_i - \log q_i) $$ がわかります。右辺第二項が $\eta,\theta$ を用いて書けることも、少しの計算で導けます。補題の式の右辺第二項=0のときが拡張ピタゴラス関係式です。右辺第二項=0となるような条件として、次が重要です:
3点 $p,q,r \in \mathcal{S}_n$ について、$p$ と $q$ を結ぶ $\eta$-直線と、$q$ と $r$ を結ぶ $\theta$-直線が交点 $q$ で直交しているとき、補題の右辺第二項=0となって、ピタゴラス関係式が成り立つ:
$$
\mathcal{D}(p||r) = \mathcal{D}(p||q) + \mathcal{D}(q||r)
$$
- $\eta$-直線とは、$\eta(c_{q \to p}(t)) = \eta(q) + t(\eta(p) - \eta(q))$、
- $\theta$-直線とは、$\theta(c_{q \to r}(t)) = \theta(q) + t(\theta(q) - \theta(r))$、
- 2つの曲線 $c_{q \to p}(t)$ と $c_{q \to r}(t)$ が $q$ で直交しているとは、$q$ における($t = 0$ における)それぞれの速度ベクトルが前節で導入した意味で直交していることです。
証明のために、前々章の「接ベクトル」で触れたことを思い出すと、
- 曲線 $c_{q \to p}(t)$ の $q$ における速度ベクトルは $\sum_{i=1}^n (\eta_i (p) - \eta_i (q)) v^{(\eta)}_i (q)$、
- 曲線 $c_{q \to r}(t)$ の $q$ における速度ベクトルは $\sum_{i=1}^n (\theta_i (r) - \theta_i (q)) v^{(\theta)}_i (q)$
です。更に前節最後に見た関係式(+内積の線形性)を用いると、2つの曲線 $c_{q \to p}(t)$ と $c_{q \to r}(t)$ が $q$ で直交していることが、まさに補題の右辺第二項が0であることと同値であることがわかります:
\begin{align}
0 &= \langle \sum_{i=1}^n (\eta_i (p) - \eta_i (q)) v^{(\eta)}_i (q),\, \sum_{i=1}^n (\theta_i (r) - \theta_i (q)) v^{(\theta)}_i (q)\rangle_q\\
&=\sum_{i=1}^n \sum_{j=1}^n (\eta_i (p) - \eta_i (q))(\theta_j (r) - \theta_j (q)) \langle v_i^{(\eta)}(q), v_j^{(\theta)}(q) \rangle_q\\
&= \sum_{i=1}^n (\eta_i (p) - \eta_i (q))(\theta_i (r) - \theta_i (q))
\end{align}
3番目の等号で、前節の最後の内積についての関係式を使いました。これで定理が証明されました。
前節では「十分近い3点」という条件がついていましたが、この定理では好きに3点を取ってきて良いという点で大域的になっています。このような関係式が交点での直交条件だけで成り立つという点で強力な定理で、最大エントロピー原理の幾何学的な考察においても本質的な役割を果たします。
もう少し一般化
上記の拡張ピタゴラスの定理では、$\eta$-座標系での直線、$\theta$-座標系での直線についての条件を課していました。この条件は、$\eta$-座標系を線形変換した座標系 $\xi$、$\theta$-座標系を線形変換した座標系 $\lambda$ での直線を考えても同値であることがわかります。
実際、$\eta = A \xi + b$、$\theta = B \lambda + c$ とすると、それぞれの軸の方向は
v^{(\xi)}_i(p) = \sum_{j=1}^n A_{j i} v^{(\eta)}_j (p), \quad v^{(\lambda)}_i(p) = \sum_{j=1}^n B_{j i} v^{(\theta)}_j (p),
であることが容易にわかります。$\xi$-座標系における $q$ から $p$ への直線と、$\lambda$-座標系における $q$ から $r$ への直線の $q$ における速度ベクトルは、それぞれ
\sum_{i=1}^n (\xi_i(p) - \xi_i(q)) v^{(\xi)}_i (q), \quad \sum_{i=1}^n (\lambda_i(r) - \lambda_i(q)) v^{(\lambda)}_i (q)
で、それぞれ $v^{(\eta)}_j (q)$、$v^{(\theta)}_j (q)$ で書き直して内積を計算すると、
\langle \sum_{i=1}^n (\xi_i(p) - \xi_i(q)) v^{(\xi)}_i (q),\, \sum_{i=1}^n (\lambda_i(r) - \lambda_i(q)) v^{(\lambda)}_i (q)\rangle_q = \sum_{i=1}^n (\eta_i(p) - \eta_i(q))(\theta_i(r) - \theta_i(q))
がわかります。
$\xi,\lambda$ のような $\eta,\theta$ の線形変換で表される座標系を、$\eta$-型、$\theta$-型の座標系と呼ぶことにします6。
以上の結果をまとめると次のようになります。
3点 $p,q,r \in \mathcal{S}_n$ について、$p$ と $q$ を結ぶ $\eta$-型直線と、$q$ と $r$ を結ぶ $\theta$-型直線が交点 $q$ で直交しているとき、ピタゴラス関係式が成り立つ:
$$
\mathcal{D}(p||r) = \mathcal{D}(p||q) + \mathcal{D}(q||r)
$$
この章のまとめ
- 分布を微小に動かしたときのKLダイバージェンスの値を調べ、局所的なピタゴラスの定理を発見しました。
- 局所的なピタゴラスの定理が成り立つ条件から「直交」概念を定義し、更に接空間の内積を導入しました。
- 拡張ピタゴラスの定理が大域的にも成り立つことを示しました。
【結果】 最大エントロピー原理の幾何学
以上で最大エントロピー原理を幾何学的に捉えるための準備が整いました!
真っ先に登場する幾何的な量は
- 期待値制約をみたす分布全体 $\mathcal{M}_k \subset \mathcal{S}_n$、
- 一様分布 $p_{\text{uni}} \in \mathcal{S}_n$、
です。最大エントロピー原理は、$p_0$ までの"距離"が最も短い $\mathcal{M}_k$ 上の点を探し出すものでした。このような点 $p^*$ は、任意の他の点 $p \in \mathcal{M}_k$ に対して
\mathcal{D}(p^*||p_{\text{uni}}) \leq \mathcal{D}(p||p_{\text{uni}})
を満たします。この $p^{*}$ はどこにある点なのかを知りたいです。ところで上の式には3点 $p_{\text{uni}}, p^*, p$ が登場しました。3点が登場したということは・・・拡張ピタゴラスチャンスです。
この3点に対して、もし拡張ピタゴラスの定理を用いて
\mathcal{D}(p||p_{\text{uni}}) = \mathcal{D}(p||p^*) + \mathcal{D}(p^*||p_{\text{uni}})
という分解が成り立てば、KLダイバージェンスの非負性から常に先程の不等式が成り立ちます。問題は、すべての $p$ に対してこの分解が可能な $p^*$ が存在するかです。
拡張ピタゴラスの定理の成立条件を見ると、$p^*$ には、任意の $p \in \mathcal{M}_k$ について、$\eta$-型直線 $c_{p^* \to p}(t)$ と、$\theta$-型直線 $c_{p^* \to p_\text{uni}}(t)$ が直交することが求められています。
ところで、【結果1】より、期待値制約をみたす分布全体 $\mathcal{M}_k$ は、ある $\eta$-型座標系 $\xi$ のうち、$\xi_1 = \cdots = \xi_k = 0$ である点全体として記述されます。そのため、$\mathcal{M}_k$ の2点 $p,q$ を結ぶ $\xi$-直線 $c_{q \to p}(t)$ の $q$ における速度ベクトルは $v^{(\xi)}_{k+1}(q), \dots, v^{(\xi)}_{n}(q)$ の線形結合だけで表されます。
$\xi = A \eta + b$ であったとしましょう。このとき、$\lambda = A^\top \theta$ と $\theta$-型座標系をとると、$\xi,\lambda$ の軸方向ベクトルが直交します:
v^{(\xi)}_i(p) = \sum_{j=1}^n A_{ji} v^{(\eta)}_j (p), \quad v^{(\lambda)}_i(p) = \sum_{j=1}^n (A^{-1})_{i j} v^{(\theta)}_j (p)\\
\langle v^{(\xi)}_i(p), \, v^{(\lambda)}_i(p) \rangle_p = \delta_{ij}
計算過程はこれまでと同様なので省略します。
$\lambda$-座標系では、一様分布は $(\lambda_1,\dots,\lambda_n) = (0,\dots,0)$ の点です。そこで、$\mathcal{E}_k$ を、$\lambda_{k+1} = \cdots = \lambda_{n} = 0$ である点全体として定義してみます。すると、$\mathcal{M}_k$ と全く同様にして、2点 $q,p_{\text{uni}} \in \mathcal{E}_k$ を結ぶ $\lambda$-直線 $c_{q \to p_{\text{uni}}}(t)$ の $q$ における速度ベクトルは $v^{(\lambda)}_{1}(q), \dots, v^{(\lambda)}_{k}(q)$ の線形結合だけで表されることがわかります。
もう答えはすぐそこです!以上の議論を整理しましょう。2つの座標系 $\xi$ と $\lambda$ を導入しました。それぞれ $\eta$-型座標系、$\theta$-型座標系で、
- $\mathcal{M}_k = \{p \in \mathcal{S}_n \mid \xi_1(p) = \cdots = \xi_k(p) = 0\}$、
- $\mathcal{E}_k = \{p \in \mathcal{S}_n \mid \lambda_{k+1}(p) = \cdots = \lambda_n(p) = 0\}$
です。実は、この2つの空間は1点で交わります7。この点を $q$ とすると、任意の $p \in \mathcal{M}_k$ について、$q \to p$ の $\xi$-直線と $q \to p_{\text{uni}}$ の $\lambda$-直線の $q$ における速度はそれぞれ
- $v^{(\xi)}_{k+1}(q), \dots, v^{(\xi)}_{n}(q)$ の線形結合
- $v^{(\lambda)}_{1}(q), \dots, v^{(\lambda)}_{k}(q)$ の線形結合
で表されます。先程の直交関係と合わせると、2つの曲線は $q$ で直交することがわかりました!この $q$ こそが求めたかった $p^*$ だったのです。
この章のまとめ
- エントロピーの最大化は、一様分布への"距離"であるKLダイバージェンスの最小化に対応していました。
- 期待値制約をみたす分布全体 $\mathcal{M}_k$ の中からそのような点を探すために、$\mathcal{M}_k$ が $\eta$-型座標系によって $k$ 個の軸が"潰れた"空間として書けることに注目しました。
- うまく直交関係が成り立つように別の $\theta$-型座標系を取り、その座標系の $n-k$ 個の軸が"潰れた"、一様分布を含む空間として $\mathcal{E}_k$ を見出しました。
- $\mathcal{M}_k$ と $\mathcal{E}_k$ の交点において、$\mathcal{M}_k$ に沿った"直線"と $\mathcal{E}_k$ に沿った"直線"は必ず直交することから、拡張ピタゴラスの定理が成り立ち、この交点こそが求めていたKLダイバージェンスを最小化する点でした。
おわりに
以上の内容は、情報幾何学という枠組みによってとても美しく簡潔に記述することができます。例えば
- $\Omega_n$ 上の確率分布は、Riemann多様体として
- KLダイバージェンスは、ダイバージェンスの公理をみたす多様体上の関数として
それぞれ一般化されます。また、今回登場した
- 「直交」関係を記述する内積は多様体上の計量として、
- $\eta$-型座標系は $\nabla^{(e)}$-affine座標系として、
- $\theta$-直線はe-測地線として
- $\mathcal{M}_k$ は $\nabla^{(e)}$-自己平行部分多様体
として、簡潔に記述することができます。
しかしながらこの記事ではあえて泥臭く、発見的な議論を一貫するように務めました。その影響でわかりづらくなっている部分が多々あると思いますが、愚直に手を動かすことで「お気持ち」のようなものを何となくでも掴んでいただければ幸いです。情報幾何に興味を持った方は、ぜひこの機に入門してみてください。
-
ここで"距離"と書いたのは、対称性を満たさないため厳密には距離ではないからです。 ↩
-
甘利俊一, 増補新版 情報幾何学の新展開, サイエンス社, 2025 ↩
-
これは後に登場する $\mathcal{S}_n$ を開集合にしたい、という数学的な都合でもありますが、確率0という「絶対に出ない」ものは予め除いてしまい、確率1という「これしか出ない」ものは考える必要がないと思うと、妥当な仮定と言えるでしょう。 ↩
-
数学的に正確に述べるなら、$\mathcal{S}_n$ から $\mathbb{R}^n$ のある開集合への同相写像のことを座標系と呼びます。 ↩
-
次の節冒頭でも説明するように、$\langle \cdot, \cdot \rangle_p$ は接ベクトル空間 $T_p \mathcal{S}_n$ の内積になっています。更に言えばこれはFisher計量による内積と一致しています。 ↩
-
一般的な呼び方ではありません。 ↩
-
確立単体上に混合座標系 $(\xi_1,\dots,\xi_k,\lambda_{k+1},\dots,\lambda_n)$ が取れるためです。これが座標系になっていることは、軸方向のベクトルが一次独立であることと、逆写像定理によります。 ↩