3.2 エントロピーレート

定常性を置いたので,「1 文字あたりの不確かさ」を定義する用意ができた.自然な候補は二つある.長さのブロック全体の不確かさをで割った時間平均と,文字読んだあとで次の 1 文字に残る不確かさである.前者は第2章の圧縮の議論にそのまま乗る量で,後者は「次の文字がどれだけ読めないか」という予測の言葉になっている.定常情報源では,この二つがどちらも収束し,しかも同じ値になる.それが本節の定理である.

以下,上付きのは先頭文字のブロック,下付きのは次に来る 1 文字を表す(第2章補題 2.3.3 の証明と同じ約束である).添字が始まりなので,の次の文字がちょうどになる.のときは空の組で,それで条件付けたは条件が空なので無条件のに等しい(定義 1.2.2 で条件を定数にとった場合である).

定義

定義 3.2.1(ブロックエントロピーとエントロピーレート). 定常情報源に対し,ブロックエントロピー

𝐻𝑛:=𝐻(𝑋𝑛)(𝑛1),𝐻0:=0

で定める.極限

𝐻(X):=lim𝑛𝐻𝑛𝑛,𝐻(X):=lim𝑛𝐻(𝑋𝑛𝑋𝑛)

が存在するとき,それぞれを情報源の エントロピーレート と呼ぶ.

はブロックが長くなるほど大きくなりうる量なので,そのままでは情報源どうしを比べられない.で割ってはじめて「1 文字あたり」になる.のほうは割らなくてよい.最初から 1 文字分の量だからである.定義に二つの記号を置いたのは,収束先が同じであることがまだ分かっていないからで,定理 3.2.6 でこれが一致する.

形式化: ブロックエントロピー blockEntropy,増分 conditionalEntropyTail,エントロピーレートentropyRate (ソース)

例 3.2.2(i.i.d. 情報源のエントロピーレート). i.i.d. 情報源では,補題 2.3.3 よりだからで,である.もう一方は,と独立なので補題 2.3.3 の証明で確かめた等式である).どちらもになり,第2章のエントロピーがそのまま再現される.

ブロックを 1 文字ずつに分ける

補題 3.2.3. 任意の情報源と任意のに対し

𝐻𝑛=𝑛1𝑖=0𝐻(𝑋𝑖𝑋𝑖).

証明(についての数学的帰納法). のときは両辺ともである(右辺は空和).で成り立つとしての場合を見る.ブロックは対にほかならないから,エントロピーのチェイン則(定理 1.2.3)より

𝐻𝑛+1=𝐻(𝑋𝑛,𝑋𝑛)=𝐻(𝑋𝑛)+𝐻(𝑋𝑛𝑋𝑛)=𝐻𝑛+𝐻(𝑋𝑛𝑋𝑛).

第 1 項に帰納法の仮定を当てるとになり,第 2 項はちょうどの項である.

形式化: blockEntropy_eq_sum_conditionalEntropyTail,証明の 1 段分にあたるblockEntropy_succ_chain_rule (ソース)

この分解に定常性は使っていない.エントロピーのチェイン則だけで出るからである.定常性が効くのは次の補題である.

分解が言っているのは,ブロックを一気に読むかわりに 1 文字ずつ読んでいったときの,不確かさの増分の足し合わせだ,ということである.番目の増分は「先頭文字を知ったうえでを当てる」不確かさで,記憶のある情報源ではこれがとともに減っていく.次の補題がそれである.

増分は減っていく

補題 3.2.4. 定常情報源では,数列は非増加であり,かつ任意のである.

証明. 非負性は,条件付きエントロピーが非負量の平均であることによる(定義 1.2.2命題 1.1.4).

非増加を見る.条件付けの単調性(定理 1.2.4)をとして使うと

𝐻(𝑋𝑛+1𝑋0,𝑋1,,𝑋𝑛)𝐻(𝑋𝑛+1𝑋1,,𝑋𝑛)

である.定常性(定義 3.1.1 =1)よりの同時分布はのそれに等しいから,右辺はに等しい.左辺はである.

形式化: conditionalEntropyTail_antitoneconditionalEntropyTail_nonneg (ソース)

証明で使ったのは二手だけである.条件を一つ減らすと不確かさは増えない(あるいは同じ),というのが一手目.減らして残ったものが,時計をずらせば元の問題そのものになる,というのが二手目である.定常性が効くのはこの二手目だけで,そこがなければ「が違う量どうしを比べる」ことができない.

読み方は素直である.過去を長く見せられるほど,次の 1 文字は当てやすくなる.ただしどこまでも下がり続けるわけではない.非負なので底がある.その底こそが,情報源の「どうしても残る 1 文字あたりの不確かさ」である.

平均も同じところへ行く

補題 3.2.4 で片方の極限は片付いた.もう一方のは,補題 3.2.3 によれば同じ数列の相加平均である.数列が収束すればその相加平均も同じ値に収束する,という解析の事実を使えばよい.

補題 3.2.5(Cesàro 平均). 実数列に収束するならば,1𝑛𝑛1𝑖=0𝑎𝑖 𝐿𝑛 ).

証明. をとる.だから,あるがあってならばである.に対し

1𝑛𝑛1𝑖=0𝑎𝑖𝐿1𝑛𝑛1𝑖=0|𝑎𝑖𝐿|=1𝑛𝑁1𝑖=0|𝑎𝑖𝐿|+1𝑛𝑛1𝑖=𝑁|𝑎𝑖𝐿|

と分ける.第 2 項はで抑えられる.第 1 項の分子はに依らない定数だから,を十分大きくとれば未満にできる.合わせて未満である.

定理 3.2.6(エントロピーレート定理). 定常情報源ではがともに存在し,しかも一致する.すなわち極限

lim𝑛𝐻𝑛𝑛=lim𝑛𝐻(𝑋𝑛𝑋𝑛)

は両側とも存在して等しい.

証明. 補題 3.2.4 より数列は非増加かつ下にで有界だから,あるに収束する.これがの存在である.

補題 3.2.3 よりであり,これはいま収束を示した数列の相加平均である.補題 3.2.5 よりこれもに収束する.これがの存在と,二つの一致である.

形式化: 極限の存在 entropyRate_exists_of_stationary,二つの定義の一致entropyRate_eq_lim_condEntropy (ソース)

二つの定義が一致することの意味. 左辺は「長いブロックを丸ごと符号化したときの1 文字あたりの費用」で,第2章の圧縮の言葉である.右辺は「次の 1 文字がどれだけ読めないか」で,予測の言葉である.定理 3.2.6 は,圧縮の限界と予測の困難さが同じ数だと言っている.橋渡しをしているのは Cesàro 平均で,証明はそれ以上のことを何もしていない.増分が落ち着けば,その平均も同じところに落ち着く,というだけである.最初の何文字かは記憶が浅いぶん不確かさが大きいが,で薄まって消える.

両端で確かめる. i.i.d. なら増分は最初から一定で,平均も例 3.2.2).逆にを一度決めたら以後ずっと同じ文字を出し続ける情報源では,のあと増分はに落ちるので,レートはである.長さのブロックが実質 1 文字分の情報しかもたないのだから,1 文字あたりに直せばになるのが正しい.

形式化上の注記. entropyRate は「収束するならその極限」を返す形で定義されており,定義の時点では収束を要求しない.極限が実際に存在することは entropyRate_exists_of_stationary が別に述べ,その値が条件付きエントロピーの極限に一致することを entropyRate_eq_lim_condEntropy が述べる.本文が定義 3.2.1 で「存在するとき」と断って定理 3.2.6 で存在を示したのと,同じ二段構えである.

単位は本文と違う.形式化は本章を通じてを自然対数にとるので,ブロックエントロピー・増分・エントロピーレート,および 3.5 節の経験エントロピーはいずれもナットが単位である.本文は 3.1 節で底を 2 に固定したので,そこだけが表層で食い違う.ビットで測るエントロピーレートは entropyRate₂ として別に定義されている.

InformationTheory — 形式化検証つき情報理論教科書(レビュー版).数式は MathJax + AMS Euler で事前レンダリング.