今度は,欠席,遅刻,早退,出席の確率が, それぞれ 1/2, 1/4, 1/8, 1/8 であるとしましょう.すべての確率を足し合わせると 1になることに注意してください. すると,平均情報量は,次のように 1.75 bit となります.対数の底を2とします.
H = ( (−(1/2)log(1/2)) + (−(1/4)log(1/4)) + 2×(−(1/8)log(1/8)) ) bit = 1.75 bit
つまり,1回の記録には,本来 2 bit 分の情報はないということになります.
しかし,4通りの情報を 2 bit 未満で符号化することは可能なのでしょうか? 実際には,次のような符号化を行なえば,平均の符号の長さは 1.75 bit になります.
出欠 | 欠席 | 遅刻 | 早退 | 出席 |
---|---|---|---|---|
ビット列 | 0 | 10 | 110 | 111 |
ビット長 | 1 bit | 2 bit | 3 bit | 3 bit |
1/2×1 bit + 1/4×2 bit + 1/8×3 bit + 1/8×3 bit = 1.75 bit
このように情報の性質に応じて, より効率の良い符号化の方法が存在する可能性があります. 平均情報量は理論的に最短の平均符号長を示しますが, 平均情報量での符号化はいつでも実現できるわけではありません. 最も短い符号を得る方法として, ハフマン符号 があります.
与えられた情報の性質を解析し,よりコンパクトな符号化を行なうことを, 圧縮と呼びます. たとえば,文書ファイルの中で特定の文字が良く使われ, それ以外の文字が殆んど使われていないことが判明したとします. その場合,良く使われている文字には短い符号, あまり使われていない文字には長い符号を割り当てれば, 平均の符号の長さが短くなり,ファイル全体をコンパクトにできるわけです. 圧縮には,損失のない手法と損失のある手法があります. ハフマン符号は, 損失のない圧縮手法のひとつです. 文書ファイルの例は損失のない圧縮方法であり, この場合, もとの情報を完全に復元することが可能です. 一方,画像情報や音声情報などの場合には, 損失はあるものの圧縮率の高い手法がよく用いられます. 詳しくは22.3 データの圧縮で扱います.
圧縮された情報を復元して元の情報に戻すことを専門的には 伸張 と呼びますが,圧縮されたファイルを元のファイルに復元することを俗に 解凍と呼びます.
シェルのコマンドラインにおいて,コマンドを用いて圧縮してみます.またファイルの種類によってどのくらい小さくなるかを考えます.
Mac OS X の環境において, Finder を使ってファイルを圧縮する方法について,扱います.
19.6 平均情報量 | 19.7 圧縮 | 19.7.1 コマンドラインからの圧縮 | ||
発展項目をスキップ | 19.9 確認テスト | |||
2009年度版に向けて現在作業中です.
このページに関してお気づきの点がありましたら
コメント投稿システムまでお願いします.
|
Tue, 15 Mar 2005 05:59:45 JST (1599d) |