シャノンの情報源符号化定理
テンプレート:情報理論 情報理論において、シャノンの情報源符号化定理(シャノンのじょうほうげんふごうかていり、テンプレート:Lang-en)は、データ圧縮の可能な限界と情報量(シャノンエントロピー)の操作上の意味を確立する定理である。1948年のクロード・シャノンの論文『通信の数学的理論』で発表された。シャノンの第二基本定理(通信路符号化定理)に対してシャノンの第一基本定理とも言う。
情報源符号化定理によれば、(独立同分布(iid)の確率変数のデータの列の長さが無限大に近づくにつれて)、符号化率(記号1つ当たりの平均符号長)が情報源のシャノンエントロピーよりも小さいデータを、情報が失われることが事実上確実ではないように圧縮することは不可能である。しかし、損失の可能性が無視できる場合、符号化率を任意にシャノンエントロピーに近づけることは可能である。
シンボルコードの情報源符号化定理は、入力語(確率変数と見なされる)のエントロピーとターゲットアルファベットの大きさの関数として、符号語の可能な期待される長さに上限と下限を設定する。
提示
情報源符号化とは、情報源の記号(の列)からアルファベット記号(通常はビット)の列への写像である。情報源の記号は二進数ビットから正確に復元できる(可逆圧縮)か、何らかの歪みを伴って復元される(非可逆圧縮)。これが、データ圧縮の背後にあるコンセプトである。
情報源符号化定理
情報源符号化定理(Shannon 1948)[1]は以下のように非形式的に提示されている(MacKay 2003, pg. 81,[2] Cover:Chapter 5[3])。
情報量 テンプレート:Math を持つ テンプレート:Mvar 個の独立同分布の確率変数は、テンプレート:Mathのとき、無視できるほどの情報損失のリスクをもって テンプレート:Math ビット以上に圧縮できる。しかし、テンプレート:Math ビット以下に圧縮されたとき、情報が失われることは事実上確実である。
シンボルコードの情報源符号化定理
テンプレート:Math を2つの有限のアルファベットとし、テンプレート:Math と テンプレート:Math をそれぞれのアルファベットからの全ての有限語の集合とする。
テンプレート:Mvar を テンプレート:Math の値をとる確率変数とし、テンプレート:Math を テンプレート:Math から テンプレート:Math への一意復号可能な符号とする(ここで、テンプレート:Math)。テンプレート:Mvar を単語長 テンプレート:Math で与えられる確率変数とする。
テンプレート:Math が テンプレート:Mvar の最小単語長さという意味で最適であるとき、
である。(Shannon 1948)
証明
情報源符号化定理の証明
テンプレート:Mvar が独立同分布(iid)な情報源であるとき、その時系列 テンプレート:Math は、離散値の場合はエントロピー テンプレート:Math 、連続値の場合は差分エントロピーで独立同分布となる。情報源符号化定理によれば、情報源のエントロピーより大きい任意のレートの任意の テンプレート:Math に対して、十分に大きい テンプレート:Mvar と、情報源 テンプレート:Math の独立同分布な テンプレート:Mvar 個の複写をとり、これを テンプレート:Math この二進数ビットに写像するエンコーダがあり、それは、少なくとも テンプレート:Math の確率で、情報源記号 テンプレート:Math が二進数ビットから復元できる。
達成可能性の証明。 いくつかの テンプレート:Math を修正し、
とする。テンプレート:仮リンク テンプレート:Math は、以下のように定義される。
テンプレート:仮リンク(AEP)が示すところによると、十分に大きい テンプレート:Mvar に対して、情報源によって生成された列が典型集合 テンプレート:Math に含まれる確率は 1 に近づく。特に、十分に大きい テンプレート:Mvar に対しては、 は任意に 1 に近く、具体的には より大きくすることができる。
典型集合の定義は、典型集合にある列が以下を満足することを意味する。
注意:
- テンプレート:Mathから導かれる列 の確率は テンプレート:Math より大きい。
- の左側(下限)からは となる。
- の右側(上限)および全体集合 テンプレート:Math の全確率に対する下限からは となる。
よって、 ビットはこの集合の任意の文字列を指すのに十分である。
エンコードアルゴリズム : エンコーダは、入力列が典型集合内にあるかどうかをチェックする。そうであれば、典型集合内の入力列のインデックスを出力する。そうでなければ、エンコーダは任意の テンプレート:Math 桁の数を出力する。入力列が典型集合内にある限り(少なくとも テンプレート:Math の確率で)、エンコーダは何の誤りも生じない。従って、エンコーダの誤りの確率の上限は テンプレート:Mvar である。
逆の証明。その逆は、テンプレート:Math より小さいサイズの集合が 1 から離れる確率の集合をカバーすることを示すことで証明できる。
シンボルコードの情報源符号化定理の証明
テンプレート:Math について、テンプレート:Math をそれぞれ可能な テンプレート:Math の語長とする。 と定義する。ここで、 テンプレート:Mvar は テンプレート:Math となるように選択される。
ここで、2行目はギブスの不等式に、5行目はクラフトの不等式による。
よって テンプレート:Math である。
2行目の不等式について、
とすると、
であり
であり
よって、クラフトの不等式には、これらの語長を持つ接頭辞のない符号が存在する。従って、最小の テンプレート:Mvar は以下を満たす。
非定常独立系への拡張
離散時間非定常独立情報源のための固定レート可逆情報源符号化
典型集合 テンプレート:Math を
と定義する。
次に、与えられた テンプレート:Math に対して、 テンプレート:Mvar が十分に大きい場合、 テンプレート:Math である。あとは、典型集合の列をエンコードするだけであり。情報源符号化の通常の方法は、この集合の濃度が であることを示す。 従って、テンプレート:Math より大きい確率で符号化するには、平均して テンプレート:Math ビットで十分である。ここで、テンプレート:Mvar を大きくすることによって、テンプレート:Mvar と テンプレート:Mvar を任意に小さくすることができる。