2.3 情報源符号化定理
前節の終わりに述べた見通しを,定理の形にする.典型集合はおよそ2𝑛𝐻個しか元をもたず(定理 2.2.5),ブロックはほぼ確実にその中に落ちる(定理 2.2.3).ならば典型系列に通し番号を振り,番号だけを送ればよい.番号を書き下すのに必要なのは1 文字あたり約𝐻(𝑋)ビットで,典型集合から外れたときだけ復号に失敗するが,その確率は 0 に向かう.
これで「1 文字あたり𝐻(𝑋)ビットあれば送れる」までは言える.本節の主題は,その先の「𝐻(𝑋)ビットより少なくては送れない」のほうである.前者は符号を一つ作れば済む存在の主張だが,後者はどんな符号を設計してもという全称の主張であり,構成では歯が立たない.ここで第1章のファノの不等式(定理 1.10.1)が唯一の橋になる.二つを合わせると,圧縮率の下限がちょうどエントロピーに一致する.
本節ではXは 2 文字以上とする(ファノの不等式がそれを要求する).前節の記法はそのまま引き継ぐ.
定義
定義 2.3.1(ブロック情報源符号). 長さ𝑛の ブロック情報源符号 とは,符号語数𝑀𝑛 ≥1と,符号化写像𝑐𝑛 :X𝑛 →{1,…,𝑀𝑛},復号写像𝑑𝑛 :{1,…,𝑀𝑛} →X𝑛の組である.その レート と誤り確率 を
𝑅𝑛:=1𝑛log𝑀𝑛,𝑃(𝑛)𝑒:=Pr[𝑑𝑛(𝑐𝑛(𝑋𝑛))≠𝑋𝑛]で定める.
レート𝑅𝑛は「1 文字あたり何ビット使ったか」である.番号𝑐𝑛(𝑋𝑛)を書き下すのにlog𝑀𝑛ビット要り,それで𝑛文字を運んでいるから,割り算がそのまま 1 文字あたりの費用になる(正確には整数ビットに切り上げる必要があるが,差は高々 1 ビットで,𝑛で割れば消える).𝑀𝑛を小さくすればレートは下がるが,番号の数が足りなくなれば別々の系列を同じ番号に潰さざるをえず,そこで復号に失敗して𝑃(𝑛)𝑒が上がる.この二つの綱引きが本節の全体である.
符号は𝑛ごとに 1 個ずつ,族として考える.「レート𝑅の符号」と言うときに意味があるのは,𝑛を大きくしたときのレートの極限であって,特定の𝑛での値ではない.
達成可能性
定理 2.3.2. 𝑅 >𝐻(𝑋)とする.このときブロック情報源符号の族(𝑀𝑛,𝑐𝑛,𝑑𝑛)𝑛≥1で,
𝑅𝑛⟶𝑅,𝑃(𝑛)𝑒⟶0を満たすものが存在する.
証明. 𝜀 :=(𝑅 −𝐻(𝑋))/2 >0とおき,𝑀𝑛 :=⌈2𝑛𝑅⌉とする.
符号を構成する.𝐻(𝑋) +𝜀 <𝑅だから,定理 2.2.5 の上界より
∣𝑇(𝑛)𝜀∣≤2𝑛(𝐻(𝑋)+𝜀)≤2𝑛𝑅≤𝑀𝑛であり,典型集合から{1,…,𝑀𝑛}への単射がとれる.𝑐𝑛を,𝑇(𝑛)𝜀の上ではこの単射,𝑇(𝑛)𝜀の外では定数1と定める.𝑑𝑛は,𝑐𝑛が典型系列に与えた番号についてはその典型系列を返し,残りの番号についてはX𝑛の元を任意に一つ決めて返すものとする.
誤り確率を抑える.𝑥 ∈𝑇(𝑛)𝜀なら𝑐𝑛は単射なので𝑑𝑛(𝑐𝑛(𝑥)) =𝑥となり,誤りは起きない.したがって誤りが起きるのは𝑋𝑛 ∉𝑇(𝑛)𝜀のときに限られ,
𝑃(𝑛)𝑒≤Pr[𝑋𝑛∉𝑇(𝑛)𝜀]である.右辺は定理 2.2.3 より 0 に収束する.
レートを計算する.𝑅 >𝐻(𝑋) ≥0(命題 1.1.4)だから2𝑛𝑅 ≥1であり,天井関数の定義から2𝑛𝑅 ≤𝑀𝑛 <2𝑛𝑅 +1.両辺のlogをとって𝑛で割ると
𝑅≤𝑅𝑛<𝑅+1𝑛log(1+2−𝑛𝑅)となる.右端の補正項は𝑛 →∞で 0 に収束するので𝑅𝑛 →𝑅.◼
工夫は典型集合の側にある. 圧縮方式そのものは「典型集合に番号を振り,外れたらあきらめる」だけで,工夫らしい工夫はない.効いているのはすべて前節の性質のほうで,要素数の上界(定理 2.2.5)がレートを,確率の収束(定理 2.2.3)が誤り確率を担っている.前節で典型集合を「確率×個数の釣り合いを捉える集合」と述べたが,その釣り合いの二つの側が,ここでちょうどレートと誤り確率に対応している.
数で見る. 例 2.2.2 の偏ったコイン(𝐻(𝑋) ≈0.469ビット)を𝑛 =100文字ずつ区切って送るとする.素朴に 1 文字 1 ビットで書けば 100 ビットだが,𝑅 =0.5をとれば𝑀100 =⌈250⌉通りの番号で足り,50 ビットで済む.半分である.このとき捨てているのは典型集合の外の系列で,その確率は𝑛とともに 0 に向かう.例 2.2.2 で見た「1ばかりの系列はいちばん確率が高いのに典型ではない」という系列も,ここでは捨てられる側にいる.それでも全体としてはほぼ確実に復号できる.
逆定理
逆向きの評価には,ブロック全体のエントロピーが必要になる.i.i.d. の場合にそれが1 文字あたりのエントロピーの𝑛倍になることを,先に確かめておく.
補題 2.3.3. i.i.d. 情報源に対し,𝑛 ≥1ならば𝐻(𝑋𝑛) =𝑛 𝐻(𝑋).
証明(𝑛についての数学的帰納法). 以下,上付きの𝑋𝑛は先頭𝑛文字のブロック,下付きの𝑋𝑛は次に来る 1 文字である(添字が0始まりなので,𝑋𝑛の次の文字がちょうど𝑋𝑛になる).
𝑛 =1のときは両辺とも𝐻(𝑋0) =𝐻(𝑋)である.𝑛で成り立つとして𝑛 +1の場合を見る.エントロピーのチェイン則(定理 1.2.3)を𝑋𝑛と𝑋𝑛の組に適用すると
𝐻(𝑋𝑛+1)=𝐻(𝑋𝑛,𝑋𝑛)=𝐻(𝑋𝑛)+𝐻(𝑋𝑛∣𝑋𝑛).第 2 項を評価する.独立性より𝑋𝑛は𝑋𝑛と独立だから,命題 1.3.2 の等号条件により𝐼(𝑋𝑛;𝑋𝑛) =0.定理 1.3.4 のエントロピー表現𝐼(𝑋𝑛;𝑋𝑛) =𝐻(𝑋𝑛) −𝐻(𝑋𝑛 ∣𝑋𝑛)と合わせて𝐻(𝑋𝑛 ∣𝑋𝑛) =𝐻(𝑋𝑛)であり,同分布性からこれは𝐻(𝑋)に等しい.帰納法の仮定𝐻(𝑋𝑛) =𝑛𝐻(𝑋)と足し合わせて𝐻(𝑋𝑛+1) =(𝑛 +1)𝐻(𝑋)を得る.◻
補題 2.3.3 の証明で独立性が効いているのは 1 か所,𝑋𝑛が先行するブロック全体と独立だという点である.𝑋𝑛が各𝑋𝑖と個別に独立であるだけでは足りない.
定理 2.3.4(弱逆定理). ブロック情報源符号の族(𝑀𝑛,𝑐𝑛,𝑑𝑛)𝑛≥1が𝑃(𝑛)𝑒 →0を満たし,かつレートの列(𝑅𝑛)が上に有界なら
𝐻(𝑋)≤lim inf𝑛→∞𝑅𝑛.
証明. ˆ𝑋𝑛 :=𝑑𝑛(𝑐𝑛(𝑋𝑛))とおく.これは𝑋𝑛の推定値であり,Pr[ˆ𝑋𝑛 ≠𝑋𝑛] =𝑃(𝑛)𝑒である.
ブロックのエントロピーを二つに分ける. 定理 1.3.4 のエントロピー表現を(𝑋𝑛,ˆ𝑋𝑛)に適用すると
𝐻(𝑋𝑛)=𝐼(𝑋𝑛;ˆ𝑋𝑛)+𝐻(𝑋𝑛∣ˆ𝑋𝑛).左辺は補題 2.3.3 より𝑛𝐻(𝑋)である.右辺の 2 項をそれぞれ上から抑える.
第 1 項:符号語数で抑える. ふたたび定理 1.3.4 より𝐼(𝑋𝑛;ˆ𝑋𝑛) =𝐻(ˆ𝑋𝑛) −𝐻(ˆ𝑋𝑛 ∣𝑋𝑛) ≤𝐻(ˆ𝑋𝑛)である(条件付きエントロピーは非負量の平均なので非負.定義 1.2.2 と命題 1.1.4).ˆ𝑋𝑛は𝑑𝑛の値域に属し,高々𝑀𝑛個の値しかとらないから,最大エントロピー上界(定理 1.1.5)より𝐻(ˆ𝑋𝑛) ≤log𝑀𝑛.
第 2 項:ファノの不等式で抑える. 定理 1.10.1 は「観測から対象を当てる」という形をしていたが,当てる操作が済んだ対にもそのまま使える.観測そのものを推定値とみなし,復号器として何もしない写像をとればよい.そこで対象を𝑋𝑛,観測をˆ𝑋𝑛,復号器を恒等写像として適用する.𝑋𝑛のとりうる値は|X|𝑛 ≥2個,誤り確率は𝑃(𝑛)𝑒だから
𝐻(𝑋𝑛∣ˆ𝑋𝑛)≤𝐻𝑏(𝑃(𝑛)𝑒)+𝑃(𝑛)𝑒log(|X|𝑛−1)≤𝐻𝑏(𝑃(𝑛)𝑒)+𝑃(𝑛)𝑒𝑛log|X|.三つを合わせると,各𝑛について
𝑛𝐻(𝑋)≤log𝑀𝑛+𝐻𝑏(𝑃(𝑛)𝑒)+𝑃(𝑛)𝑒𝑛log|X|であり,𝑛で割って
𝐻(𝑋)≤𝑅𝑛+𝐻𝑏(𝑃(𝑛)𝑒)𝑛+𝑃(𝑛)𝑒log|X|⏟_____⏟_____⏟=: 𝛿𝑛.仮定𝑃(𝑛)𝑒 →0と,定義 1.1.1 で置いた𝑝log𝑝 →0(𝑝 ↓0)の約束から𝐻𝑏(𝑃(𝑛)𝑒) →0であり,𝛿𝑛 →0.したがって𝐻(𝑋) −𝛿𝑛 ≤𝑅𝑛の両辺で下極限をとれば主張を得る.◼
橋の使い方. ファノの不等式は𝐻(𝑋𝑛 ∣ˆ𝑋𝑛)を誤り確率で上から抑える形をしているが,ここでの使い道は裏返しである.左辺のブロックのエントロピー𝑛𝐻(𝑋)は情報源だけで決まって動かせない.それを「符号語数の項」と「誤り確率の項」の和で上から抑えたのだから,誤り確率の項を 0 に押しつぶすと,残った符号語数の項が𝑛𝐻(𝑋)を支えきらなければならなくなる.𝑃(𝑛)𝑒 →0という仮定が,そのままlog𝑀𝑛への下からの圧力に変換されている.1.10 節では,この不等式を裏返して誤り確率の下界として使うのが実際の用途だと述べた.ここでの使い方はその変種で,𝑃(𝑛)𝑒を下から押すかわりに,𝑃(𝑛)𝑒 →0を仮定して誤り確率の項を消し,残った符号語数の項に𝑛𝐻(𝑋)を支えさせている.どちらも,情報量の言明から確率や符号語数の言明へ渡るという橋の役目は同じである.
lim infである理由. 結論がlimではなくlim infなのは,レートが収束するとは仮定していないからである.𝑅𝑛は振動してよく,主張しているのは「どんな部分列をとっても𝐻(𝑋)を下回る値に張り付くことはない」ということである.
両側を合わせる
定義 2.3.5(達成レート). ブロック情報源符号の族(𝑀𝑛,𝑐𝑛,𝑑𝑛)𝑛≥1が 達成可能 であるとは,𝑃(𝑛)𝑒 →0であり,かつレートの列(𝑅𝑛)が上に有界なことをいう.このときlim inf𝑛𝑅𝑛をその族の 達成レート と呼び,達成レート全体の集合をRと書く.
上に有界という条件は,符号語数が𝑛について指数を超える速さで増える族を除くために置く.実数列の下極限は上に有界でなければ実数として定まらないので,この条件がないと「達成レート」という値そのものが決まらない.除いても失うものはない.そういう族はレートがいくらでも大きいのだから,下限の値には関わらない.実用上の符号(𝑀𝑛が2𝑛𝑅程度のもの)ではつねに満たされる.
定理 2.3.6(情報源符号化定理).
infR=𝐻(𝑋).
証明. 𝐻(𝑋) ≤infR. 達成可能な族は定義 2.3.5 より𝑃(𝑛)𝑒 →0とレートの上界の両方を満たすから,定理 2.3.4 よりその達成レートは𝐻(𝑋)以上である.すなわち𝐻(𝑋)はRの下界であり,下限は下界以上だから𝐻(𝑋) ≤infR.
infR ≤𝐻(𝑋). 𝑅 >𝐻(𝑋)を任意にとる.定理 2.3.2 の族は𝑅𝑛 →𝑅を満たすので,収束列として上に有界であり,𝑃(𝑛)𝑒 →0も満たす.よって達成可能で,その達成レートはlim inf𝑛𝑅𝑛 =𝑅である.ゆえに𝑅 ∈Rで,とくにRは空でなくinfR ≤𝑅.𝑅は𝐻(𝑋)より大きい任意の実数だったからinfR ≤𝐻(𝑋).
二つを合わせて等号を得る.◼
定理 2.3.6 は,第1章で「平均驚き量」として定義した量が,圧縮という操作上の問いに対する答えでもあることを述べている.𝐻(𝑋)は分布から決まる数にすぎず,符号の話は一切していなかった.それが,あらゆる符号にわたる下限としてふたたび現れる.エントロピーが情報の量の尺度として正しいという主張の,最初の裏づけがこれである.
なお,infが達成されるかどうかは本定理の主張に含まれない.𝑅 =𝐻(𝑋)ちょうどのレートで誤り確率が 0 に収束する符号族があるかは,ここでは問わない.
InformationTheory — 形式化検証つき情報理論教科書(レビュー版).数式は MathJax + AMS Euler で事前レンダリング.