相対エントロピーから情報と物理を組み立てる 第1部 第6章 §1.6.2 ★★★ 1つの恒等式から、容量の上界・最適な入力の判定条件・「各行を包む最小の D の球の半径」という読み方がまとめて出る
通信路容量の定義
定義 1.6.2(通信路容量)
通信路 W の通信路容量を
C=pmaxI(p,W)(1.6.5)
で定める。最大は X 上の確率分布全体(単体)でとる。単体は有界な閉集合で、I(p,W) は p について連続なので、最大値は存在する。最大を与える p を最適な入力の分布 p∗、そのときの出力の分布を q∗=p∗W と書く。
この時点では C は「ある関数の最大値」にすぎず、通信の速さとの関係は1.6.3節の定理で初めて分かる。この節では、最大値を求めるための道具を D の性質からそろえる。
黄金の恒等式
命題 1.6.3(参照分布を入れ替える恒等式 ★★★)
Y 上の任意の分布 r について、q=pW とすると
x∑p(x)D(Wx∥r)=I(p,W)+D(q∥r).(1.6.6)
証明
lnr(y)W(y∣x)=lnq(y)W(y∣x)+lnr(y)q(y) と分けて、p(x)W(y∣x) を掛けて x,y について和をとる。第1項の和は式 (1.6.3) から I(p,W) になる。第2項は x について先に和をとると ∑xp(x)W(y∣x)=q(y) なので、∑yq(y)lnr(y)q(y)=D(q∥r) になる。
この恒等式は情報理論の教科書で「黄金の公式」と呼ばれることがある。D(q∥r)≥0 を使うと、すぐに2つのことが分かる。
系 1.6.4(相互情報量の変分表示と凹性)
I(p,W)=rminx∑p(x)D(Wx∥r),(1.6.7)
最小は r=q でだけ達成される。したがって I(p,W) は p について凹である。
証明
式 (1.6.6) の D(q∥r) は 0 以上で、r=q のときに限って 0 になる(D の非負性と等号条件、相対エントロピーから情報と物理を組み立てる 第1部第3章)。凹性については、r を1つ止めると右辺の和は p の1次関数で、1次関数の族の下限は凹関数になる。
凹性のおかげで、I(p,W) の極大はそのまま最大で、局所的な条件だけで最適かどうかを判定することができる。それが次の定理である。
最適な入力の判定条件
定理 1.6.5(容量の Kuhn–Tucker 条件 ★★★)
入力の分布 p∗ が容量を達成するための必要十分条件は、q∗=p∗W として、ある定数 C について
D(Wx∥q∗)=C(p∗(x)>0 の x),D(Wx∥q∗)≤C(p∗(x)=0 の x)(1.6.8)
が成り立つことである。このとき定数 C は通信路容量に等しい。
証明
(十分性)式 (1.6.8) が成り立つとする。p∗ で平均すると I(p∗,W)=∑xp∗(x)D(Wx∥q∗)=C である。任意の入力 p について、恒等式 (1.6.6) を r=q∗ で使うと
I(p,W)=x∑p(x)D(Wx∥q∗)−D(pW∥q∗)≤x∑p(x)D(Wx∥q∗)≤C.
最後の不等号は、どの x でも D(Wx∥q∗)≤C だからである。よって p∗ は最大を与え、最大値は C になる。
(必要性)p∗ が最大を与えるとし、C=I(p∗,W) とおく。ある入力 x0 について D(Wx0∥q∗)>C だったとする。x0 に確率を集めた分布 δx0 へ向けて pt=(1−t)p∗+tδx0 と動かすと、I の t=0 での右微分は∑x(δx0(x)−p∗(x))∂p(x)∂I で、偏微分は I=∑xp(x)∑yWlnW−∑yqlnq を p(x) で微分して
∂p(x)∂I=y∑W(y∣x)lnW(y∣x)−y∑W(y∣x)(lnq(y)+1)=D(Wx∥q)−1
となる。したがって右微分は (D(Wx0∥q∗)−1)−(C−1)>0 で、t を少し正にすると I が増える。これは p∗ の最大性に反するので、すべての x で D(Wx∥q∗)≤C である。さらに ∑xp∗(x)D(Wx∥q∗)=C で、各項が C 以下なので、p∗(x)>0 の x ではすべて等号になる。
条件 (1.6.8) を言葉で書くと、「実際に使う入力はどれも、平均の出力の分布から同じ距離(D)にあり、使わない入力はそれより近い」となる。使う入力のどれかが遠ければ、その入力を多めに使うと I が増える。近すぎる入力は、受け手にとって平均と区別しにくいので使わない。
容量は D の球の半径
定理 1.6.6(容量の min-max 表示 ★★★)
C=rminxmaxD(Wx∥r),(1.6.9)
最小は r=q∗(最適な入力での出力の分布)で達成される。特に、Y 上の任意の分布 r について
C≤xmaxD(Wx∥r).(1.6.10)
証明
任意の r について、恒等式 (1.6.6) を p=p∗ で使うとC=I(p∗,W)≤∑xp∗(x)D(Wx∥r)≤maxxD(Wx∥r) で、式 (1.6.10) が出る。r=q∗ を選ぶと、Kuhn–Tucker 条件 (1.6.8) から maxxD(Wx∥q∗)=C となり、等号が達成される。
容量を図で読む
Y 上の確率分布の全体を1つの図形(単体)と考え、通信路の各行 Wx をその中の点として打つ。「r を中心とする半径 ρ の D の球」を {s:D(s∥r)≤ρ} と決めると、式 (1.6.9) は「すべての点 Wx を含む D の球のうち、最も小さいものの半径が C で、その中心が q∗ である」と読める。行どうしが互いに離れているほど球は大きく、容量も大きい。球の表面に乗っている行が実際に使う入力で、球の内側に埋もれている行は使わない(式 (1.6.8))。D は対称でないので、これは普通の意味の距離の球ではない。中心 r を D の第2引数に置く向きが大事である。
式 (1.6.10) は、最適な入力を知らなくても、適当な r を1つ選ぶだけで容量の上界が出ることを言っている。下界は、適当な入力 p を選んで I(p,W) を計算すれば出る。上界と下界の差が小さくなるまで p と r を改善していく手続きが、1.6.4節の Blahut–Arimoto の反復法である。

図 1.6.2 入力の分布 p=(1−π,π) の関数としての相互情報量(どちらも厳密な値なので点線)。青は BSC(0.1)、赤(点つき)は Z(21)。白丸が最大値で、BSC では対称性から π∗=21、Z 通信路では乱される入力 1 を控えめに使う π∗=52 になる(例題 1.6.2)。どちらの曲線も凹である(系 1.6.4)
例題 1.6.2 Z 通信路の容量を Kuhn–Tucker 条件で解く ★★★
オリジナルZ(21) 通信路(入力 0 は必ず 0、入力 1 は確率 21 で 0 に化ける)を考える。入力 1 の確率を π とする。
- 出力の分布 q と、D(W0∥q)、D(W1∥q) を π で表せ。
- 条件 (1.6.8) を使って、最適な π∗ と容量 C を求めよ(両方の入力を使うと仮定してよい)。
- 最適なときの出力の分布 q∗ を求め、両方の行までの D が C になること(D の球の中心であること)を確かめよ。
解答
(1) q(1)=π/2、q(0)=1−π/2。W0=(1,0) なので D(W0∥q)=ln1−π/21=−ln(1−2π)。W1=(21,21) なので
D(W1∥q)=21ln1−π/21/2+21lnπ/21/2=−21ln((2−π)π).
(2) 両方の入力を使うので、条件 (1.6.8) は D(W0∥q)=D(W1∥q) である。両辺の指数をとって2乗すると(1−2π)2=(2−π)π、つまり 4(2−π)2=(2−π)π。π=2 なので 2−π=4π、π∗=52。容量はこのときの共通の値で
C=−ln(1−51)=ln45≈0.2231 nat≈0.3219 ビット.
入力 1 は半分の確率で 0 と見分けがつかなくなるので、21 より少なく使うのが得になる。
(3) q∗=(1−51,51)=(54,51)。D(W0∥q∗)=ln45、D(W1∥q∗)=21ln4/51/2+21ln1/51/2=21ln(85⋅25)=21ln1625=ln45。2つの行が q∗ から同じ D の距離にあり、q∗ は2点を含む最小の D の球の中心である。r=(1−t,t) を格子で動かして maxxD(Wx∥r) を数値で最小化しても、t=0.2 で最小値 ln45 をとる(verify_ch1-06.py)。一般の Z(s) でも同じ計算で C=ln(1+(1−s)ss/(1−s)) になる。
AI(Claude)が書いた教材を、木下が勉強しながら公開しています。式と数値は検算していますが、誤りが残っているかもしれません。誤りのご指摘・削除のご依頼をいただければ直します。 連絡先:support@tecktom.com