エントロピー(平均情報量)

情報理論のエントロピー(Entropy)は、確率分布の不確実性を定量化した尺度であり別名を平均情報量と呼びます。

確率変数 $X \in {x_1, \dots, x_n}$ の確率分布 $p(x)$ のエントロピー $H(X)$ は以下の式で定義されます($H(X)$ と $H(p)$ は同じものを指す表記で、確率変数に注目するか分布に注目するかの違いです)。

\[\begin{aligned} H(X) = \sum_{i=1}^{n} p(x_i) \cdot I(x_i) = -\sum_{i=1}^{n} p(x_i) \log_2 p(x_i) \quad \text{離散確率変数} \\ h(X) = -\int\limits_x p(x) \log_2 p(x) dx \quad \text{連続確率変数(微分エントロピー)} \end{aligned}\]

$p(x_i)=0$ の項は、極限 $\lim_{p\to0} p\log_2 p = 0$ に従い $0\log_2 0 := 0$ と約束します。

エントロピーは、確率変数 $X$ が値 $x_i$ を取る確率 $p(x_i)$ に対し、$x_i$ の情報量 $I(x_i)$ を乗算し総和を算出するので情報量の期待値になります。

最大・最小(離散確率変数の場合)

取りうる値が $n$ 個の離散確率変数について、

  • 最大:すべての値の確率が均等($p(x_i)=\frac{1}{n}$、完全に不確実な場合)のとき最大になり、最大値は $\log_2 n$ です
  • 最小:ある値の確率が 1(他はすべて $0$、不確実性がない場合)のとき $H(X)=0$ になります
\[p(x_k) = 1 \Rightarrow H(X) = -1\cdot\log_2 1 - \sum_{i\neq k} 0\log_2 0 = 0\]

連続確率変数の場合

連続確率変数の $h(X)$ は微分エントロピーと呼ばれ、離散のエントロピーとは性質が異なります。

  • 負の値を取り得ます(離散エントロピーは常に $0$ 以上です)
  • 変数変換(単位の変更など)で値が変わります
  • 「$0$ なら不確実性がない」という解釈は離散のエントロピーに対するものです

情報量との対比

  • 情報量($I(x)$): 確率変数 $X$ が特定の値 $x$ に確定した後、その 1 点に対して定まる不確実性(意外性)の大きさ
  • エントロピー($H(X)$): 確率変数 $X$ が取りうるすべての値について平均した分布全体の不確実性の大きさ

交差エントロピー

交差エントロピー $H(p,q)$ は、真の分布 $p$ に従うデータを、分布 $q$ に最適化した符号で符号化したときに必要な平均ビット数です。
$q$ の情報量(符号長)$-\log_2 q(x)$ を、真の確率 $p(x)$ で重み付けして平均をとったものになります。

\[\begin{aligned} H(p,q) = - \sum_{x} p(x) \log_2 q(x) \quad \text{離散確率変数} \\ H(p,q) = - \int\limits_x p(x) \log_2 q(x) dx \quad \text{連続確率変数} \\ \end{aligned}\]

常に $H(p,q)\ge H(p)$ であり、その差が KL ダイバージェンス $D_{\mathrm{KL}}(p\parallel q)$ です。詳細は 交差エントロピー を参照してください。

結合エントロピー(Joint Entropy)

結合エントロピー $H(X,Y)$ は、同時確率分布 $p(x,y)$ から得られる情報量 $I(x,y) = -\log_2 p(x,y)$ の平均的な量(期待値)で同時エントロピーとも呼びます。

\[H(X,Y) = \mathbb{E}_{(x,y)\sim p(x,y)}[-\log_2 p(x,y)] = -\sum_{x,y} p(x,y)\log_2 p(x,y) = -\sum_{x \in \mathcal{X}} \sum_{y \in \mathcal{Y}} p(x,y) \log_2 p(x,y)\]

NOTE
結合エントロピーは一般に確率変数 $X$, $Y$ を使って $H(X,Y)$ と表記します。
確率分布 $p$, $q$ を使った $H(p,q)$ は一般に交差エントロピー(クロスエントロピー)を表します。

具体例

同時分布 の天気($X$)と傘の持参($Y$)の表を使います。

  傘を持つ 傘を持たない 周辺確率
晴れ 0.1 0.4 0.5
雨 0.4 0.1 0.5
周辺確率 0.5 0.5  
  • $X$:天気(晴れ・雨)
  • $Y$:傘の所持(持つ・持たない)

周辺分布はどちらも $(0.5, 0.5)$ なので $H(X)=H(Y)=1$ ビットです。
結合エントロピーは 4 パターンの確率から計算します。

\[H(X,Y) = -2\,(0.1\log_2 0.1 + 0.4\log_2 0.4) \approx 2\times(0.332 + 0.529) \approx 1.722 \text{ ビット}\]

これは $H(X)+H(Y)=2$ ビットより小さくなっています(天気と傘が独立でないため、次の劣加法性の具体例になっています)。

同じ $X$, $Y$ でも、$X$ と $Y$ の関係が異なると $H(X,Y)$ は次のように変わります。

ケース 分布の例 $H(X,Y)$
$Y$ が $X$ で決まる(極端に強い依存) 雨なら必ず傘を持ち、晴れなら必ず持たない($p(\text{雨},\text{持つ})=p(\text{晴れ},\text{持たない})=0.5$) $H(X,Y)=H(X)=1$
表の分布(一部だけ依存) 上記の表 $\approx 1.722$
独立 天気 $X$ とコインの表・裏 $Y$ の組み合わせ $H(X,Y)=H(X)+H(Y)=2$
  • $Y$ が $X$ の関数として決まる場合は、天気が分かれば傘も分かるため、不確実性は $X$ の 1 変数分だけで済みます
  • 独立な場合は、まったく別の不確実性が 2 つ合わさるため、不確実性は単なる足し算になります

連鎖律(Chain Rule)

離散結合エントロピーは以下の連鎖律が成り立ちます。

\[H(X, Y) = H(X) + H(Y\vert{}X)\]

$X, Y$ 全体の不確実性 $H(X, Y)$ は、$X$ 自身の不確実性 $H(X)$ と、$X$ を知った後に残る $Y$ のあいまいさ(条件付きエントロピー $H(Y\vert{}X)$)の和です。

確率の乗法定理 $p(x, y) = p(x) \cdot p(y\vert{}x)$ を対数の中に代入して導出します($p(x,y)=0$ の項は $0$ として除きます)。

\[\begin{aligned} H(X, Y) &= -\sum_{x, y} p(x, y) \log_2 p(x, y) \\[4pt] &= -\sum_{x, y} p(x, y) \log_2 \big( p(x) \cdot p(y \mid x) \big) \\[4pt] &= -\sum_{x, y} p(x, y) \big[ \log_2 p(x) + \log_2 p(y \mid x) \big] \\[4pt] &= -\sum_{x, y} p(x, y) \log_2 p(x) \;-\; \sum_{x, y} p(x, y) \log_2 p(y \mid x) \\[4pt] &= -\sum_{x} \log_2 p(x) \underbrace{\left( \sum_{y} p(x, y) \right)}_{=\, p(x)\ \text{(周辺化)}} \;-\; \sum_{x, y} p(x, y) \log_2 p(y \mid x) \\[4pt] &= -\sum_{x} p(x) \log_2 p(x) \;-\; \sum_{x, y} p(x, y) \log_2 p(y \mid x) \\[4pt] &= \underbrace{-\sum_{x} p(x) \log_2 p(x)}_{H(X)} \;+\; \underbrace{\left( -\sum_{x, y} p(x, y) \log_2 p(y \mid x) \right)}_{H(Y \mid X)} \end{aligned}\]

$X$ と $Y$ を入れ替えれば $H(X,Y) = H(Y) + H(X\vert{}Y)$ も成り立ちます。

具体例での確認

上の天気と傘の表では、$H(Y\vert{}X) = H(X,Y) - H(X) \approx 1.722 - 1 = 0.722$ ビットです。
天気を知っても、傘を持つかどうかにはまだ約 0.72 ビットのあいまいさが残ります($Y$ 単独の不確実性 $H(Y)=1$ ビットよりは小さくなっています)。

情報量の関係性(劣加法性)

情報量の関係性から、不等式(劣加法性)が成り立ちます。

\[H(X, Y) \le H(X) + H(Y)\]

これは相互情報量 $I(X;Y)$(Mutual Information)が非負であることから従います。

\[H(X) + H(Y) - H(X,Y) = I(X;Y) \ge 0\]

$X$ と $Y$ の間に共通の情報(相互情報量)が存在するため、2つを個別に足したものは、結合エントロピー以上に大きくなります。等号が成り立つのは、重なりがゼロ(互いに独立)のときだけです。
相互情報量の詳細は 情報量 を参照してください。

また離散の場合、$H(Y\vert{}X)\ge 0$ なので、

\[H(X,Y) \ge \max\{H(X),\ H(Y)\}\]

も成り立ちます(結合したものは、単独のものより不確実性が小さくなることはありません)。

条件付きエントロピー(Conditional Entropy)

条件付きエントロピーは、$X$ の値が分かったとき、$Y$ にどれだけの不確実性が残るかを表します。まず $X$ の値を 1 つに固定した場合から定義します。

1. $X=x$ を固定したときのエントロピー $H(Y\vert{}X=x)$

$X=x$ が与えられたときの $Y$ の条件付き確率分布 $p(y\vert{}x)$ のエントロピーです。

\[H(Y\vert{}X=x) = -\sum_{y \in \mathcal{Y}} p(y\vert{}x) \log_2 p(y\vert{}x)\]

これは特定の値 $x$ ごとに 1 つ決まる数値です。

2. 条件付きエントロピー $H(Y\vert{}X)$

$H(Y\vert{}X=x)$ を、$X$ の分布 $p(x)$ で平均したものが条件付きエントロピー $H(Y\vert{}X)$ です。条件付き自己情報量 $-\log_2 p(y\vert{}x)$ の、同時分布 $p(x,y)$ における期待値と一致します。

\[H(Y\vert{}X) = \sum_{x\in\mathcal{X}} p(x)\,H(Y\vert{}X=x) = \mathbb{E}_{(x,y) \sim p(x,y)} [-\log_2 p(y\vert{}x)] = -\sum_{x \in \mathcal{X}} \sum_{y \in \mathcal{Y}} p(x,y) \log_2 p(y\vert{}x)\]

導出は、$p(x)\,p(y\vert{}x) = p(x,y)$ を使います。

\[\sum_{x} p(x)\Bigl(-\sum_{y} p(y\vert{}x)\log_2 p(y\vert{}x)\Bigr) = -\sum_{x,y} p(x)\,p(y\vert{}x)\log_2 p(y\vert{}x) = -\sum_{x,y} p(x,y)\log_2 p(y\vert{}x)\]

式のポイント

  • $p(y\vert{}x)$:$x$ という条件が分かっているときの $y$ の条件付き確率(残された不確実性)
  • $\mathbb{E}_{(x,y)\sim p(x,y)}$:あらゆる $(x, y)$ の発生パターンの確率 $p(x, y)$ で重みづけして、全体として平均的にどれくらいあいまいさが残るかを計算しています
  • $H(Y\vert{}X=x)$ は特定の $x$ に対する値、$H(Y\vert{}X)$ はそれを $x$ で平均した値、という違いに注意してください

3. 直感的なイメージ

ヒント $X$ がとても優秀($Y$ と強く関係している)なら、ヒントを聞いた瞬間に答えがほぼわかるため、残るあいまいさ $H(Y\vert{}X)$ はゼロに近づきます。

4. かんたんな例

今日の服装($Y$)を当てるゲームを考えてみます。

例 A:ヒントが「今日の天気($X$)」の場合

  • 状態:「今日の天気は『大雨』だよ」というヒント($X=\text{大雨}$)をもらった
  • 残るあいまいさ:雨なら「長靴+レインコート」の確率が高くなります。選択肢が絞られるため、服装 $Y$ の予測は簡単になります。これは $H(Y\vert{}X=\text{大雨})$ が小さいということです
  • 結論:天気は服装に強く関係するので、他の天気の場合も合わせて平均した $H(Y\vert{}X)$ も、$H(Y)$ より小さくなります

例 B:ヒントが「昨日の夕食($X$)」の場合

  • 状態:「昨日の夕食は『カレー』だよ」というヒント($X=\text{カレー}$)をもらった
  • 残るあいまいさ:カレーを食べたからといって、今日の服装にはほぼ影響がありません。ヒントをもらっても予測のしやすさは変わりません
  • 結論:夕食は服装とほぼ無関係なので、どの夕食の場合も $H(Y\vert{}X=x)\approx H(Y)$ であり、平均した $H(Y\vert{}X)$ も $H(Y)$ とほぼ等しくなります

特定の $x$ では不確実性が増えることもある

$H(Y\vert{}X=x)$ は、特定の $x$ については $H(Y)$ より大きくなることがあります。
たとえば、普段はほぼいつもスーツ($H(Y)$ は小さい)でも、$X=\text{休日}$ のときだけ服装がバラバラなら $H(Y\vert{}X=\text{休日})>H(Y)$ です。
それでも、すべての $x$ で平均した $H(Y\vert{}X)$ は必ず $H(Y)$ 以下になります($H(Y\vert{}X)\le H(Y)$、等号は独立のときのみ)。「ヒントをもらうと平均的には不確実性が減る」のは、平均をとった場合の性質です。

5. ほかのエントロピーとの関係性

結合エントロピー(全体のあいまいさ)の連鎖律を使うと、全体像が綺麗に整理できます。

\[H(X, Y) = H(X) + H(Y \mid X)\]

これを変形すると:

\[H(Y \mid X) = H(X, Y) - H(X)\]

「ヒント $X$ を知った後の $Y$ のあいまいさ」=「全体のあいまいさ $H(X, Y)$」−「ヒント $X$ が持っていたあいまいさ $H(X)$」

つまり、全体の中から $X$ の情報を取り除いた「残りの部分」を表しています。

さらに、相互情報量とは次の関係があります。

\[I(X;Y) = H(Y) - H(Y\vert{}X)\]

$X$ を知ることで減る $Y$ の不確実性の量が、相互情報量です。

非対称性

一般に $H(Y\vert{}X)\neq H(X\vert{}Y)$ です。
(前述の天気と傘の例は分布が対称なので、たまたま $H(Y\vert{}X)=H(X\vert{}Y)\approx0.722$ で一致します。)

まとめ(離散確率変数)

条件 意味 条件付きエントロピー $H(Y \mid X)$ の値
$Y$ が $X$ の関数($X$ が決まれば $Y$ が 100% 決まる) $X$ が分かれば $Y$ のあいまいさは残らない $0$
$X$ と $Y$ が独立 $X$ を知っても $Y$ のヒントにならない $H(Y)$(元のあいまいさのまま)
一般的な関係 $X$ が多少なりとも $Y$ の情報を持つ $0 \le H(Y \mid X) \le H(Y)$
  • $H(Y\vert{}X)=0$ は「$Y$ が $X$ で決まる」という向きのある条件です。逆向き($X$ が $Y$ で決まる)とは限りません
  • $H(Y\vert{}X)=H(Y)$ となるのは、$X$ と $Y$ が独立のときに限ります