冗長度

1.それぞれの最大エントロピー

前ページで全事象が等確率で起るときに最大エントロピーとなると述べました。また最大エントロピーは事象の数が大きくなるごとに大きくなる事例も示しました。最大エントロピー(Hmax)の事例をいくつか紹介しておきます。

\begin{equation} (1)コインを一回投げるとき\\ H_{max}=-\sum_{n=1}^2 \frac{1}{2} \log_2 \frac{1}{2}=1bit\\ (2)サイコロを一回振るとき\\ H_{max}=-\sum_{n=1}^6 \frac{1}{6} \log_2 \frac{1}{6}=\log_2 6 \risingdotseq 2.58bit\\ (3)アルファベット大文字のみ(26文字)の文字列\\ H_{max}=-\sum_{n=1}^{26} \frac{1}{26} \log_2 \frac{1}{26}=\log_2 26 \risingdotseq 4.70bit \\ (4)2バイト文字(日本語文字入力65536文字)\\ H_{max}=-\sum_{n=1}^{65536} \frac{1}{65536} \log_2 \frac{1}{65536}=\log_2 65536 = 16bit \end{equation}

最大エントロピーの式を立てることとその計算は簡単です。2バイト文字の65536文字の計算も、log関数の性質を思い出せばすぐに簡単な形に直せます。logの値が必要になる場合は、ネットのlog計算サイトを利用させてもらうとよいでしょう。

2.冗長度

冗長度はデータ圧縮の元になっている概念の一つです。データは実際の情報量よりも冗長な部分を含むので、その分だけ圧縮したりデータ破損の確認に利用できる、という考え方です。

2.1 冗長度の定義

冗長度(redundancy)の式は次の通りです。

\begin{equation} 1-\frac{H}{H_{max}} \end{equation}

0≦H/Hmax≦1なので、冗長度も0≦r≦1の値を取ります。H/Hmaxはそのデータのエントロピーが最大エントロピーに近づくごとに0から1に近づきます。1からそのH/Hmaxを引いているので、最大エントロピーのとき1-1/1=0で冗長度最小です。逆にエントロピーが小さい(確率が小さかったり大きかったりする)場合はH/Hmaxも0に近づいて、冗長度rは1に近づきます。結局のところ、出現頻度に偏りがあれば冗長な部分が多いのでデータ圧縮できますよ、ということを意味しています。

2.2 冗長度の例

冗長度を計算するための例を一つ示します。4文字(A、B、C、D)からなる文章があるとします。
出現確率は次の表の通りです。

文字確率
A1/4
B1/2
C1/8
D1/8

そして冗長度を計算すると次の通りとなります。

\begin{equation} H_{max}=-\sum_{n=1}^4 \frac{1}{4} \log_2 \frac{1}{4}=2bit\\ H=-\frac{1}{4} \log_2 \frac{1}{4} -\frac{1}{2} \log_2 \frac{1}{2} -\frac{1}{8} \log_2 \frac{1}{8} -\frac{1}{8} \log_2 \frac{1}{8}\\ =\frac{1}{2}+\frac{1}{2}+2 \cdot \frac{3}{8}=1.75bit\\ 冗長度r=1-\frac{1.75}{2}=0.125 \end{equation}

Hmax=2bit(22=4)なので、4つの文字を表現するのに必要な数とbit数が一致しています。Hmaxのとき、つまり冗長性なしのときのデータ量を「最小符号長」と呼びます。それに対して冗長性があるこの場合では、2bitよりも情報量が少ないので、情報量を保持したままデータの圧縮ができるのではないかと期待できます(必ずそうなるというわけではないですが)。

3.参照文献

<< 平均情報量(エントロピー) データ圧縮 >>

広告
プロフィール
このページを書いた人
むつきさっち

物理と数学が苦手な工学博士。
機械翻訳で博士号を取ったので一応人工知能研究者。研究過程で蒐集した知識をまとめていきます。紹介するのはたぶんほとんど文系分野。でも物理と大学数学も入門を書く予定。いつの日か。

むつきさっちをフォローする
情報理論入門
むつきさっちをフォローする

コメント

タイトルとURLをコピーしました