シャノンの定理は、ランダム データと確率に関して定義されます。同様に、文字列のエントロピーは、ランダムな文字列に対してのみ定義されます。エントロピーは、文字列自体ではなく、分布のプロパティです。したがって、シャノンの定理を非公式に次のように言い換えることができます。
特定の確率分布から文字列をランダムに選択した場合、その文字列に対して取得できる最適な平均圧縮率は、確率分布のエントロピー レートによって決まります。
任意のランダムな文字列が与えられた場合、その文字列を 1 ビットに圧縮する圧縮アルゴリズムを簡単に書くことができますが、私のアルゴリズムは必然的に他の文字列の長さを増加させます。私の圧縮アルゴリズムは次のように機能します。
- 入力文字列が事前に選択されたランダム文字列と等しい場合、出力は 1 ビット文字列「0」です。
- それ以外の場合、出力は "1" の N+1 ビット文字列とそれに続く入力文字列です。
対応する解凍アルゴリズムは次のとおりです。
- 入力が「0」の場合、出力は以前に選択されたランダム文字列です
- それ以外の場合、出力は最初の入力ビットを除くすべてです
ここで重要なのは、特定のディストリビューションのすべての文字列を平均して高い速度で圧縮する1 つのアルゴリズムを書き留めることはできないということです。文字列が多すぎます。
文字列の特定の確率分布がある場合、分布のエントロピー率を計算できます。次に、分布に従って文字列をランダムに選択し、任意のアルゴリズムを使用して圧縮しようとすると、圧縮された文字列の相対的なサイズは次のようになります。平均であり、エントロピー率を下回ることはありません。これがシャノンの定理です。