12.6 Lempel–Ziv 符号の最適性
前節の数え上げには,情報源の確率がどこにも現れなかった.見ていたのはフレーズが相異なることだけで,どのフレーズが起こりやすいかは問わなかったからである.そのぶん結論も粗く,前節が行き着いた 系 12.5.12 が与えたのは1文字あたり3log2(|X| +1) +⌊log2|X|⌋ +3ビットという,アルファベットだけで決まる定数の上界だけだった.本節は同じ数え上げに確率を入れる.鍵になるのは,同じ長さのフレーズは相異なるので,その確率を足しても1を超えない,という一点である.確率が小さいものを多く並べるほど本数は稼げるが,そのぶんlog2の逆数の和が大きくなる.この釣り合いを不等式にしたのが Ziv の不等式であり,1文字あたりの符号長をエントロピーレートと結びつける橋になる.
フレーズの確率で数え上げを置き換える
補題 12.6.1. Xを空でない有限アルファベット,𝑚を0以上の整数とし,𝑆をX𝑚の空でない部分集合,𝑔をX𝑚上の実数値関数で𝑆のすべての元で正の値をとり∑𝑧∈𝑆𝑔(𝑧) ≤1を満たすものとすると
|𝑆|log2|𝑆|≤∑𝑧∈𝑆log21𝑔(𝑧)である.
証明. 𝑀 :=|𝑆|と置き,𝑆の元を𝑧1,…,𝑧𝑀と並べる.𝑆は空でないから𝑀 ≥1である.定理 1.7.1 を𝑎𝑖 :=1,𝑏𝑖 :=𝑔(𝑧𝑖)(𝑖 =1,…,𝑀)に当てる.𝑎𝑖は非負,𝑏𝑖は仮定より正である.∑𝑖𝑎𝑖 =𝑀,∑𝑖𝑏𝑖 =∑𝑧∈𝑆𝑔(𝑧)だから
𝑀log2𝑀∑𝑧∈𝑆𝑔(𝑧)≤𝑀∑𝑖=1log21𝑔(𝑧𝑖)である.仮定より0 <∑𝑧∈𝑆𝑔(𝑧) ≤1だから𝑀/∑𝑧∈𝑆𝑔(𝑧) ≥𝑀であり,log2は狭義単調増加だから左辺は𝑀log2𝑀以上である.◻
補題 12.6.1 は,本数と確率のやりとりをいちばん短い形で述べたものである.左辺は「相異なるものを何個並べたか」の代償であり,右辺は「それぞれがどれだけ珍しいか」の合計である.並べた個数ぶんの確率の和が1を超えられない以上,個数を大きくとれば個々の確率は小さくならざるをえず,log2の逆数の和がそのぶん膨らむ.𝑔が𝑆の上で一様で,しかも総和がちょうど1の場合には,右辺の各項が左辺の1個あたりのぶんに等しくなり,両辺が一致する.不等式が述べているのはこの向きだけで,一致するのがその場合に限るかどうかは言っていない.次の定理は,これを長さごとに当てる.
定理 12.6.2(Ziv の不等式). Xを空でない有限アルファベット,{𝑋𝑖}𝑖≥0をXに値をとる確率変数の列,𝑘 ≥1とし,𝑠1,…,𝑠𝑘をXの文字を並べた空でない有限列で,長さの等しいものはどの二つも相異なるものとする.どの𝑗についてもPr[(𝑋0,…,𝑋|𝑠𝑗|−1) =𝑠𝑗] >0であるとし,Lをこれらの列の長さの集合とすると
𝑘log2𝑘≤𝑘∑𝑗=1log21Pr[(𝑋0,…,𝑋|𝑠𝑗|−1)=𝑠𝑗]+𝑘log2∣L∣である.
証明. 𝑘 ≥1だからLは空でない有限集合であり,𝑑 :=|L| ≥1である.各𝑚 ∈Lに対し,長さ𝑚の𝑠𝑗の全体を𝑆𝑚,その個数を𝑘𝑚と書く.長さの等しいものは相異なるから,𝑆𝑚はX𝑚の空でない部分集合で,∑𝑚∈L𝑘𝑚 =𝑘である.
長さごとに 補題 12.6.1 を当てる.𝑚 ∈Lを固定し,𝑧 ∈X𝑚に対し𝑔(𝑧) :=Pr[(𝑋0,…,𝑋𝑚−1) =𝑧]と置く.仮定より𝑔は𝑆𝑚のすべての元で正である.また𝑆𝑚の相異なる元𝑧に対する事象{(𝑋0,…,𝑋𝑚−1) =𝑧}は互いに排反だから,∑𝑧∈𝑆𝑚𝑔(𝑧) ≤1である.補題 12.6.1 より
𝑘𝑚log2𝑘𝑚≤∑𝑧∈𝑆𝑚log21𝑔(𝑧)である.列は長さによって重なりなく分類されるから,𝑚について足すと右辺は𝑗について1から𝑘まで足したものに等しく
∑𝑚∈L𝑘𝑚log2𝑘𝑚≤𝑘∑𝑗=1log21Pr[(𝑋0,…,𝑋|𝑠𝑗|−1)=𝑠𝑗]を得る.
残るのは左辺と𝑘log2𝑘の差である.Lに値をとる確率変数𝑌をPr[𝑌 =𝑚] :=𝑘𝑚/𝑘で定める(重みは非負で総和が1である).定義 1.1.1 より
𝐻(𝑌)=−∑𝑚∈L𝑘𝑚𝑘log2𝑘𝑚𝑘=log2𝑘−1𝑘∑𝑚∈L𝑘𝑚log2𝑘𝑚であり,𝑌は𝑑個の値しかとらないから 定理 1.1.5 より𝐻(𝑌) ≤log2𝑑である.両辺に𝑘 >0を掛けて移項すると
𝑘log2𝑘≤∑𝑚∈L𝑘𝑚log2𝑘𝑚+𝑘log2𝑑となる.前段の不等式を入れれば主張を得る.◼
系 12.6.3. Xを空でない有限アルファベット,{𝑋𝑖}𝑖≥0をXに値をとる確率変数の列,𝑛 ≥1,𝑥 ∈X𝑛とし,S(𝑥) =(𝑠1,…,𝑠𝑘)(定義 12.5.1)と書く.S(𝑥)のどのフレーズ𝑠についてもPr[(𝑋0,…,𝑋|𝑠|−1) =𝑠] >0であるとし,L(𝑥)をS(𝑥)に現れるフレーズの長さの集合とすると
𝑘log2𝑘≤𝑘∑𝑗=1log21Pr[(𝑋0,…,𝑋|𝑠𝑗|−1)=𝑠𝑗]+𝑘log2∣L(𝑥)∣である.
系 12.6.3 の右辺に現れるのは,情報源が最初の|𝑠𝑗|文字でちょうど𝑠𝑗を出す確率である.いっぽう𝑠𝑗は𝑥の途中から切り出された断片で,先頭から現れたとは限らない.この二つが噛み合うのは情報源が定常なとき(定義 3.1.1)で,そのとき窓をどこに置いても長さ𝑚の並びの分布は同じだから,右辺は「その断片がどれだけ珍しいか」を場所によらずに測ったものになる.定常でない情報源に対しても 系 12.6.3 は成り立つが,右辺が測っているものは断片の出た場所と無関係になってしまう.以下で情報源に定常性を課すのは,この理由による.
不等式の読み方も見ておく.左辺の𝑘log2𝑘は 定理 12.5.7 の左辺と同じ量で,フレーズ数を長さと比べるときの主役だった.定理 12.5.7 はこれをアルファベットの大きさと𝑛だけで抑えたが,系 12.6.3 はそれを情報源の確率で抑える.第2項の𝑘log2|L(𝑥)|は,フレーズを長さごとに束ねたことの代償である.長さは1以上𝑛以下だから|L(𝑥)| ≤𝑛であり,この項は𝑘log2𝑛以下で,ここに 系 12.5.8 の抑えを入れても,𝑛で割った値の上界は定数の水準にとどまる.代償を小さくする道は,束ねた個数で測るのをやめて,長さの分布そのもので測ることである.次の借用は,この取り替えを含んでいる.
漸近最適性
ここから先は借りる.先に見取り図を置いておく.示すことは二つに分かれる.
下からの評価,すなわち1文字あたりの符号長がエントロピーレートを下回らないことは,3.5 節の Shannon–McMillan–Breiman の定理(定理 3.5.2)が,長さ𝑛のブロックの確率の−1𝑛log2をエントロピーレートに寄せることから出る.そこに,Kraft の不等式(定義 4.2.4)を満たす長さの組ではその量を大きく下回る系列がまれである,という評価を合わせる(定義 12.5.9 の符号長がその不等式を満たすことは,前節のはじめに断ったとおり本書では確かめていない).
上からの評価は,系 12.6.3 の右辺を,記憶を深さ𝑟で打ち切った近似の確率,すなわち次の文字が直前の𝑟文字だけで決まるとした𝑟次のマルコフ情報源の確率で読み直すところから始まる.束ね方も,長さだけで束ねるのをやめて,長さと直前の𝑟文字の対で束ねる形に細かくする.こうして束ねた組ごとに 補題 12.6.1 を当てると,𝑛で割った右辺は深さ𝑟の条件付きエントロピー𝐻(𝑋𝑟 ∣𝑋𝑟)(定義 1.2.2)に寄る.最後に𝑟を大きくすると,第3章 定理 3.2.6 よりその極限がエントロピーレートである.束ねたことの代償も,この道筋の中で消える.定理 12.6.2 の証明で𝐻(𝑌) ≤log2𝑑と落としたところが,長さの平均で決まる上界に取り替わるからである.長さの平均は(∑𝑗|𝑠𝑗|)/𝑘で,これは𝑛/𝑘以下だから,代償は𝑘log2(𝑛/𝑘)の水準に下がり,𝑛で割った(𝑘/𝑛)log2(𝑛/𝑘)は,系 12.5.8 より𝑘/𝑛が0に近づくので0に向かう.平均が与えられたときのエントロピーの上界としては 定理 10.3.4 の変分上界がある.ただしここで要るのは,どの長さが現れるかによらない形の上界で,本書はそこまでは書き下さない.
見取り図のどの段も本書は書き下さない.とくに難所は,𝑛の極限と深さ𝑟の極限を交換する最後の段である.
Lempel–Ziv 符号の漸近最適性を借りる. 借りるのは,{𝑋𝑖}をエルゴード的な定常情報源(定義 3.1.1・定義 3.4.1)とすると,確率1で
ℓLZ𝑛(𝑋𝑛)𝑛⟶𝐻(X)が成り立つ,という形である(ℓLZ𝑛は 定義 12.5.9 の符号長,𝑋𝑛 =(𝑋0,…,𝑋𝑛−1),𝐻(X)は 定義 3.2.1 のエントロピーレートで,第3章 3.1 節も本章もlogの底を2にとっているから単位はビットである).当てる相手は,空でない有限アルファベットX上のエルゴード的な定常情報源と,定義 12.5.9 の符号長だけである.この借用に依存するのは本節の地の文と 例 12.6.4 だけで,ほかの節はこの結論を使わない.本書はこれを証明しない.骨格は 定理 12.5.7 の数え上げと 系 12.6.3 の不等式で,そこから先は,はじめに置いた見取り図のとおりである.難所として挙げた最後の段が,本書が 3.5 節でやった極限の入れ替えとは別の見積もりになるのは,打ち切りの深さと分解のフレーズ長が絡むからである.いっぽう,この定理は無条件の機械検証済みの定理として形式化されている.3.4 節の Birkhoff の定理や第8章 8.4 節の達成可能性と同じで,本書が証明を載せないことと形式化されていないことは別である.
借りた定理が言っているのは,Lempel–Ziv 符号が万能だということである.ただし 定義 12.1.6 の万能符号とは,三つの点で違っている.一つめは対象で,ここだけは広げたことになる.定義 12.1.6 が族{𝑃𝜃}𝜃∈Θの分布だけを相手にするのに対し,借りた定理はエルゴード的な定常情報源を相手にし,1文字ずつの積で書けない,記憶のある情報源もそこに入るからである.二つめは測り方で,こちらは広い狭いが決まらない.冗長度は平均符号長についての量で,借りた定理は確率1での収束を述べており,どちらかがどちらかを含むわけではないからである.三つめは述べ方で,定義 12.1.6 は冗長度が0に近づくことを求め,借りた定理は1文字あたりの符号長がエントロピーレートに近づくことを述べる.族の分布については 補題 2.3.3 と 例 3.2.2 より,𝐻(𝑃𝑛𝜃)/𝑛もエントロピーレートも𝐻(𝑃𝜃)に等しいから,この二つの言い方は同じ内容を指している.それでいて,符号を作るのに使ったのは 定義 12.5.1 の分解だけで,情報源の分布はどこにも現れない.
比べる相手は二つある.第2章 定理 2.3.2 の符号は分布を知って作られており,定義 12.1.1 の枠組みで言えば,族が1点のとき,つまり真の分布が分かっている場合にあたる.第3章 系 3.5.10 は同じ極限をエルゴード的な定常情報源まで広げたが,そこでも符号を作る側は情報源を知っている.しかもそのうち記憶のあるものは,定義 12.1.1 の族には入らない.族の分布はどれも1文字ずつの積だからである.本節の符号は,どちらの場合にも情報源を知らないまま同じ極限に届く.
例 12.6.4(二つの偏ったコイン(Lempel–Ziv 符号)). 例 12.1.7 の族{𝑃𝜃}𝜃∈{1,2}をとり,𝜃 ∈{1,2}を一つ固定して,{𝑋𝑖}を𝑃𝜃の i.i.d. 情報源で,エルゴード的(定義 3.4.1)であるものとする.このとき𝜃がどちらであっても𝐻(X) =𝐻𝑏(0.1) =0.468…ビットであり(𝐻𝑏は 例 1.1.2 の二値エントロピー),借用した Lempel–Ziv 符号の漸近最適性より,確率1で
ℓLZ𝑛(𝑋𝑛)𝑛⟶𝐻𝑏(0.1)である.すなわち,族のどちらが真であっても,符号を取り替えずに同じ値に届く.
証明. 例 3.1.2 より i.i.d. 情報源は定常だから,仮定と合わせて{𝑋𝑖}はエルゴード的な定常情報源である.エントロピーレートは 例 3.2.2 より𝐻(X) =𝐻(𝑋0)であり,𝑋0は𝑃𝜃に従う.𝑃1も𝑃2も一方の点の確率が0.1の二値分布だから,どちらでも 例 1.1.2 より𝐻(𝑋0) =𝐻𝑏(0.1)である.値は−0.1log20.1 −0.9log20.9 =0.4689…ビットである.この情報源に借用した漸近最適性を当てれば結論を得る.ℓLZ𝑛は 定義 12.5.1 の分解だけから決まる関数で,𝜃を見ずに定まっているから,どちらの𝜃に対しても当てているのは同じ符号長の組である.◼
i.i.d. 情報源がエルゴード的であることは 3.4 節が述べているが,本書はそれを証明していない.そこで 例 12.6.4 では,エルゴード性を仮定として置いた.数を並べると,この族について本章がたどった道のりが見える.例 12.1.7 では,𝜃 =1と決めつけた符号長の組が𝜃 =2のもとで1文字あたり2.535…ビットを余計に払い,何も知らないふりをして書き写す組でも0.531…ビットを余計に払っていた(どちらもエントロピーからの超過分である).型による二段符号は𝑛 =1000でこれを0.022ビット以下に,混合による符号は0.003ビット以下に抑えた(例 12.2.7・例 12.4.8).Lempel–Ziv 符号はどちらの分布も見ずに作られていながら,1文字あたりの符号長がエントロピーレート0.468…ビットに寄る,すなわち超過分が0に向かう(前の四つの値は平均についてのもので,こちらは確率1での収束だから,測り方は違う).
借りた定理は片側だけの主張ではない.偏りの大きい情報源では縮み,偏りの無い情報源では縮まない,という両方を含んでいる.一様な i.i.d. 情報源が(例 12.6.4 と同じくエルゴード的だとすれば)そうで,例 1.1.3 と 例 3.2.2 よりエントロピーレートはlog2|X|ビットだから,1文字あたりの符号長はそこに落ち着く.これは各文字をそのまま書き写すのに要する長さで(|X|が2の冪ならちょうど整数になる),縮んでいない.縮まないことは欠点ではない.エントロピーレートがその情報源の1文字あたりの不確かさそのものだからである.
本章は,情報源の分布を知らずに符号を作る問題を二つの道筋で扱った.一方は 定義 12.1.1 の枠組みで,分布の族が与えられているところから始め,冗長度という一つの量に問題を落とし,型(12.2 節)と推定した分布(12.4 節)の二つの作り方で上から抑え,通信路容量(12.3 節)で下から抑えた.他方は本節までの二つで,族も分布も持ち出さず,一本の系列の中の繰り返しだけを見て符号を作り,それでも1文字あたりの符号長がエントロピーレートに届くことを見た.前者は「どの分布が真か」を有限個の候補の中で測る問題で,後者は候補を用意しない.同じ「知らずに符号化する」でも,知らなさの測り方が違っている.
InformationTheory — 形式化検証つき情報理論教科書(レビュー版).数式は MathJax + AMS Euler で事前レンダリング.