21 分で読了
このページの目次

エントロピーと情報の計測

エントロピーは「無秩序度」といった形而上学的な概念ではなく、数えられるビット数である——不確かな事柄を明確にするために、平均して何個のはい/いいえの質問が必要かを表す。自己情報量、エントロピー、結合エントロピー、条件エントロピー、相互情報は同じ言語の5つの用語であり、その後のすべての内容(圧縮、チャネル、損失関数)はこれらの量から派生する。

導入: 数字当てゲームで何回質問するか

まずはゲームをして直感を養い、その後に定義を語る。

相手は 1 から 8 の間の整数を思い浮かべている。あなたははい/いいえの質問しかできない。例えば「4 より大きいか?」など。当てられるようにするために、平均して最低何回質問すればよいだろうか?

最適な戦略は、毎回残りの候補を半分に減らすことだ。「4 より大きいか?」とまず問う。答えがどうであれ、候補は 8 個から 4 個に減る。さらに半分に減らして 2 個、そして 1 個にする。3回切れば、唯一の答えが確定する。\log_2 8 = 3 で、ちょうど3回だ。

これは偶然ではない。⁠確率が半々の2択の質問1つは、ちょうど 1 bit の情報を持つ⁠;そしてエントロピーは「平均して最低何回質問すればよいか」という理論的下限を与える。確率がちょうど2分木に適している場合のみ正確に一致し、一般に1回のゲームの最適な平均質問回数は H(X) から H(X)+1 の間にあり、多くの試行をまとめて初めて H(X) に漸近する。

ゲームを変えてみよう。相手は 80\% の確率で 7 を選ぶ(この数に「霊性」があると思うとする)。この場合、依然として半分に分割するのは賢明ではない——賢明な方法は、最初の質問で直接「7 かどうか」を問うことだ。大多数の場合、1回で的中し、平均質問回数は 3 回を大幅に下回る。

結論は極めて素朴である。⁠分布が偏り、構造化されているほど、平均して必要な質問は少なくなる⁠。この記事全体で行うことは、この直感を数式に変換することだ。情報量、エントロピー、後の章での圧縮は、究極的には同じ問いに答えている——⁠不確かな事柄を明確にするために、平均して何 bit 必要なのか⁠。

自己情報量: 1つの事象がどれほど「意外」か

まず単一の事象を見る。⁠自己情報量(self-information) は、数字当てゲームの直感を任意の確率に一般化する。事象 x の発生確率が p(x) のとき、その自己情報量は以下のように定義される:

I(x) = -\log_2 p(x)

単位は bit である。これは「この事象が発生したことを確認するのが、はい/いいえの質問を何回分相当か」を測るものである。

ゲームに戻って検証しよう:8 個の数が一様分布であれば、各数の確率は 1/8 であり、自己情報量は -\log_2(1/8) = 3\ \text{bit} となり、手動で数えた3回の質問と完全に一致する。

いくつかの例で感覚を養おう:

  • コイン投げで表が出る、p=0.5、自己情報量 -\log_2 0.5 = 1\ \text{bit}
  • サイコロで特定の目が出る、p=1/6、自己情報量 -\log_2(1/6) \approx 2.58\ \text{bit}
  • 「明日太陽が昇る」といった必然的な事象、p \approx 1、自己情報量 \approx 0\ \text{bit}。あなたはすでにそれを知っているので、それは情報を提供せず、質問する必要もない。

なぜ対数を使わなければならないのか? 情報量は「加法的」であるべきだからである。2つの独立した事象が同時に発生する場合、総情報量は各自の情報量の和であるべきだ。独立事象の結合確率は積 p(x)p(y) となる。対数はまさに乗算を加算に変換する:

-\log(p(x)p(y)) = -\log p(x) - \log p(y)

この「加法性」は審美的な好みではなく、エントロピー体系全体の基盤である。

エントロピー: 自己情報量の期待値

単一の事象が明確になったので、次に確率変数全体を見る。⁠エントロピー(entropy) H(X) は、X のすべての取り得る値の自己情報量の期待値⁠——つまり数字当てゲームにおける「平均して何回質問すればよいか」の理論的な基準である:

H(X) = -\sum_x p(x) \log_2 p(x)

それはまた別の問いへの答えでもある:X を最適符号で表現する場合、平均符号長はいくらの bit に近づけることができるか⁠。単一記号の接頭符号では通常 H(X)\leq L<H(X)+1 が成り立ち、長列のブロック符号化では記号あたりの符号長を H(X) に任意に近づけることができ、これはソース符号化定理によって保証される。当面は、エントロピーが大きいほど不確実性が高く、平均して必要な質問(必要な bit)が多くなることを覚えておけばよい。

二元エントロピー関数

最も単純なケースは、2つの値しか取らず、その確率がそれぞれ p1-p である場合である:

H(p) = -p\log_2 p - (1-p)\log_2(1-p)

この曲線はエントロピーを理解するための最適な入り口である:

二元エントロピー関数 H(p) = −p log₂ p − (1−p) log₂(1−p) p H 1 bit 0 0.5 1 最大エントロピー 1 bit p=0 → 0 bit (確定) p=1 → 0 bit (確定) 最も公平 (p=0.5) = 最も予測困難 = エントロピー最大; どちらかに偏ると単純になる。

数字当てゲームの言葉でこの曲線を読むと、p=0.5 のときエントロピーが最大 (1 bit) になる。最も公平なコインは最も予測が難しく、どう質問しても平均して1回分必要になる。どちらかに偏るとエントロピーは低下し、p=0 または p=1 に至ると結果は確定しており、エントロピーは 0 になる——質問する必要はない。

エントロピーの3つの性質

この3つの性質は後で繰り返し登場し、すべて数字当てゲームの直感で検証できる:

  • 非負性⁠: H(X) \geq 00 \leq p(x) \leq 1 であるため、各項 -p\log p は非負である。等号は X が完全に決定されている場合(ある p(x)=1)にのみ成立する——決定された事象に不確実性はない。
  • 上限と最大エントロピー: H(X) \leq \log_2|X|、ここで |X| は取り得る値の数である。等号は X一様分布である場合にのみ成立する。すべての値が等確率のとき不確実性が最大となり、数字当てゲームでは「利用可能な偏向がなく、ただひたすら半分に分割するしかない」状態に対応する。これはまた、一様分布が「最も無知な」事前分布である理由も説明する——追加の制約がない場合、それはエントロピーが最大となる分布(最大エントロピー原理)である。
  • 連鎖則⁠: H(X,Y) = H(X) + H(Y \mid X)。これは次のように読む:XY を同時に明確にするための総不確実性は、まず X を明確にし、その後に「X が既知の条件下で Y に残る不確実性」を加えたものと同じである。これは複雑な結合分布を条件付き項に分解する核心的な道具であり、LLM の自己回帰的分解の形そのものである:H(\text{トークン列}) = \sum_i H(\text{トークン}_i \mid \text{前文})。トークンを1つ生成するたびに、「次の位置に残る不確実性はどれくらいか」と問うていることになる。

連続変数のエントロピーに離散直感をそのまま当てはめられない

上記の H(X) は離散値を対象としている。連続変数には微分エントロピー(differential entropy) を使用する:

h(X)=-\int p(x)\log p(x)\,dx

これは離散エントロピーに似ているが、挙動は異なる。微分エントロピーは負になり得、単位や座標のスケール変換によって変化し、「正確な実数を1つ符号化するために何 bit 必要か」という解釈を直接持てない——連続値を正確に表現するには通常無限の bit が必要だからである。したがって、連続分布を比較する際には、座標変換に対してより安定な KL発散と相互情報量 を優先して使用することが多い。もう1つのよく使われる帰結として、分散が固定されている場合、ガウス分布の微分エントロピーが最大となるというのがある。これは AWGN チャネル容量 の公式の背後にある重要な性質である。

直感: 構造がどのようにエントロピーを压低するか

ここでよくある誤解を明確にしておく:⁠エントロピーは値の数を測るものではなく、分布の形状を測るものである⁠。

値の数は「最大で何回質問すればよいか」(上限)のみを決定する。実際に「平均して何回質問すればよいか」を決定するのは分布の形状——それは均一か? 値の間に依存関係はあるか?——である。この違いを明確にする3つの例を示す:

  • 公平なコイン⁠: 2つの値、一様分布、H = 1 bit。上限に達しており、近道はない。
  • 公平なサイコロ⁠: 6つの値、一様分布、H = \log_2 6 \approx 2.58 bit。
  • 自然言語の文字⁠: 26文字。一様であれば \log_2 26 \approx 4.7 bit/文字となるはずだ。しかし英語の文字分布は極めて偏っており(e が非常に高頻度、z が非常に低頻度)、文字間には強い依存関係がある(q の後にはほぼ必ず u が来る)。特定の文字集合とコーパスの口径において、シャノンの英語エントロピーレートの古典的な推定値は約 1.0–1.3 bit/文字 であり、4.7 を大幅に下回る。この値は、スペースや句読点を含めるかどうか、コーパスの種類、推定方法によって変化する。

最後の例は少し考えさせる価値がある。一様分布を仮定してランダムな英単語の文字を当てる場合、平均して約5回必要になる。しかし、「母音かどうか」「前の文字は q か?」といった情報量の多い質問を先に行えば、大部分の位置はほとんど当てずに確定する。この「構造によるエントロピーの压低」——4.7 と 1.2 の間のギャップ——こそが、圧縮アルゴリズムと言語モデルが成り立っている基盤である。それらが成し遂げていることは、本質的にこれらの冗長性を絞り出すことだ。

定義直感
H(X)-\sum p\log pX 自身の平均不確実性(平均して何回質問するか)
H(X,Y)-\sum p(x,y)\log p(x,y)X と Y を同時に明確にするために何回質問するか
H(Y \mid X)-\sum p(x,y)\log p(y \mid x)X が既知の条件下で、Y を明確にするためにさらに何回質問するか
I(X;Y)H(Y)-H(Y \mid X)X を知ることで、Y を明確にするために何回質問を減らせるか

結合エントロピー、条件エントロピー、相互情報量: 2つの変数の間

前述では1つの確率変数のみについて語った。2つの変数がある場合、「平均して何回質問するか」という言語は自然と一族へと成長する。3つのメンバーを1つずつ見ていこう:

  • 結合エントロピー(joint entropy) H(X,Y) = -\sum p(x,y)\log_2 p(x,y): XY を同時に明確にするために、平均して何回質問するか。
  • 条件エントロピー(conditional entropy) H(Y \mid X) = -\sum p(x,y)\log_2 p(y \mid x): X がすでに知られている場合、Y を明確にするために平均してさらに何回質問するか。2つの極端なケースは問題を示している——YX によって完全に決定される場合、H(Y \mid X)=0(追加で質問する必要はない);両者が独立の場合、H(Y \mid X)=H(Y)X を知っても何の役にも立たず、質問を節約できない)。
  • 相互情報量(mutual information) I(X;Y) = H(X) - H(X \mid Y) = H(Y) - H(Y \mid X): 1つの変数を知ることで、別の変数について何回質問を減らせるか⁠。

相互情報量にはいくつかの美しい性質がある。対称性(I(X;Y)=I(Y;X))、非負性、そして I(X;Y)=0 であることと XY が独立であることは同値である。また、I(X;Y)=D_{KL}(p(x,y) \parallel p(x)p(y)) という等価な書き方もできる。つまり、実際の結合分布と「両者が独立であると仮定した」分布との間の KL発散 である。言い換えれば、相互情報量は「2つの変数が独立からどれだけ逸脱しているか」を測るものである。

条件相互情報量とデータ処理不等式

時には、「XY が合計でどのくらいの情報を共有しているか」ではなく、Z が既知の条件下で、それらが追加でどのくらいの情報を共有しているかに関心を持つことがある。これが条件相互情報量である:

I(X;Y\mid Z)=H(X\mid Z)-H(X\mid Y,Z)

これは「文脈 Z に由来する共通の相関」と、「XY の間に残る結びつき」を分離できる。注意すべき点として:⁠相互情報は統計的依存関係を記述するものであり、自動的に因果関係を意味するわけではない⁠。2つの変数が、単に第3の変数の影響を共通して受けているだけかもしれない。

相互情報量で最も繰り返し使用すべき性質はデータ処理不等式(data processing inequality) である。X\to Y\to Z がマルコフ連鎖を形成し、つまり ZY を介してのみ X にアクセスできる場合、次が成り立つ:

I(X;Z)\leq I(X;Y)

直感的には、⁠情報は加工を通じて保持または消失するだけで、凭空に増加することはない ということである。圧縮、要約、量子化、ニューラルネットワークの中間表現はすべてこの制約に従う。後の チャネル容量情報ボトルネック は、本質的に「不要な情報をどのように捨て去るか」を研究している。

ベン図: 情報計測の集合論的関係

これら4つの量間の代数的関係は、重なり合う2つの円で直感的に記憶できる。これは情報論で最も古典的な図である:

エントロピー計測の集合関係: 重なり部分が相互情報量 H(X) H(Y) H(X|Y) H(Y|X) I(X;Y) (相互情報量) X のみ Y のみ 和集合 = H(X,Y) = H(X) + H(Y|X) = H(X|Y) + I(X;Y) + H(Y|X)

すべての恒等式は図から直接読み取ることができる。和集合は H(X,Y)、左の円は H(X)、重なり部分は I(X;Y)、左の三日月は H(X \mid Y) である。したがって H(X) = H(X \mid Y) + I(X;Y)H(X,Y) = H(X) + H(Y \mid X) といった式は一目で理解できる。

1つの注意点:この類推は2つの変数の場合にのみ厳密に成立する。3つ以上の変数がある場合、「相互作用情報量」は負の値を取り得、ベン図は機能しなくなる。しかし、2つの円の図は直感を養うには十分である。

この計測は、その後のすべての内容の基盤である:圧縮は符号長を H(X) に近づける(ソース符号化)、チャネル容量は \max I(X;Y) (チャネル容量)、ディープラーニングの損失関数は 交差エントロピーとKL発散 の直接的な応用である。

1つの表で記事全体を繋ぐ

答えたい問い主要な道具続きを見る
1つの事象が発生するのはどれほど意外か?自己情報量 -\log p(x)本編
1つの変数は平均してどれほど不確実か?エントロピー H(X)本編
X を知ることで Y の予測がどれほど容易になるか?相互情報量 I(X;Y)本編
モデル分布 q で真の分布 p をフィッティングするにはどのくらいの代償が必要か?交差エントロピー、KL発散第2編
可逆データは最大でどれほど圧縮できるか?エントロピーレート、ソース符号化第3編
ノイズのあるチャネルでは最大でどれほど信頼性高く伝送できるか?相互情報量、チャネル容量第4編
許容される歪みがある場合、最小で何 bit 必要か?率歪み関数 R(D)第5編
これらの量は LLM でそれぞれ何に対応するか?NLL、PPL、KL、出力エントロピー第6編

参考文献

  • 教科書⁠: "Elements of Information Theory" (Cover & Thomas — 情報論の標準教科書、第2章 エントロピー、相対エントロピー、相互情報量)
  • 論文⁠: "A Mathematical Theory of Communication" (Shannon, 1948 — エントロピーと情報論の基礎を築いた作品、すべてはここから始まる)
  • 教科書⁠: "Information Theory, Inference, and Learning Algorithms" (MacKay — 無料でオンライン入手可能、第2、4章の直感性が極めて優れている)

キーワード: 自己情報量 self-information, エントロピー entropy, 微分エントロピー differential entropy, 結合エントロピー joint entropy, 条件エントロピー conditional entropy, 相互情報量 mutual information, 条件相互情報量 conditional mutual information, データ処理不等式 data processing inequality, マルコフ連鎖, 連鎖則 chain rule, 最大エントロピー maximum entropy, 二元エントロピー関数 binary entropy, bit