技能一覧 › 大学数学 情報理論・符号理論

D 元ハフマン符号

記号数 が となるよう確率 0 のダミー記号を補って、 元(例: 3 元)のハフマン符号を構成し、平均符号長の最小値を求められる

前提

この技能までの道筋(23 技能)
算数中学高校大学大学院

読み込み中…

右端(太枠)がこの技能です。左へドラッグすると、さらに前の前提をさかのぼれます。技能を押すと、そこまでの道筋が光ります。

一覧で見る(前提が先)
  1. 分数のたし算・ひき算 (算数 計算と数のきまり)
  2. 小数の四則計算 (算数 計算と数のきまり)
  3. 正負の数の加法・減法 (中学数学 数と式)
  4. 分数のかけ算・わり算 (算数 計算と数のきまり)
  5. 四則の混じった計算の順序 (算数 計算と数のきまり)
  6. 正負の数の乗除・累乗と四則混合 (中学数学 数と式)
  7. 約数の見つけ方 (算数 整数の性質)
  8. 素因数分解と約数の個数 (算数 整数の性質)
  9. 平方根の意味と根号の簡単化 (中学数学 数と式)
  10. 根号の乗除と加減 (中学数学 数と式)
  11. 指数の拡張と指数関数 (数学II 指数関数と対数関数)
  12. 語頭符号とクラフトの不等式 (大学数学 情報理論・符号理論)
  13. 対数の定義と性質 (数学II 指数関数と対数関数)
  14. 樹形図で数え上げる (算数 場合の数)
  15. 積の法則と和の法則 (算数 場合の数)
  16. 和の法則・積の法則と樹形図 (数学A 場合の数と確率)
  17. 順列・円順列・重複順列 (数学A 場合の数と確率)
  18. 組合せ (数学A 場合の数と確率)
  19. 確率の定義と和事象・余事象 (数学A 場合の数と確率)
  20. 期待値 (数学A 場合の数と確率)
  21. 確率変数と確率分布 (数学B 統計的な推測)
  22. エントロピー (大学数学 情報理論・符号理論)
  23. ハフマン符号 (大学数学 情報理論・符号理論)

説明

個の符号記号 を使う語頭符号(例: 3 元なら )のうち、1 記号あたりの平均符号長 が最小になるものを作る方法です。2 元ハフマン符号では「確率の小さい 2 つをまとめる」操作をくり返しましたが、 元では「小さい 個をまとめる」操作をくり返します。ただし記号数 によっては最後にうまく 1 つにまとまりません。そこで、あらかじめ確率 のダミー記号を補って数をそろえます。電話のトーン信号や 3 値論理など、2 種類より多い記号で送る場面で使います。

なぜそうしてよいのか

元の符号語は、各節点から 本の枝(ラベル )が出る木の葉に対応します。すべての内部節点がちょうど 個の子をもつ木(満ちた 分木)を考えます。根だけの木は葉が 1 個です。葉を 1 つ選んで 個の子に分けるたびに、葉は 個ずつ増えます。したがって、満ちた 分木の葉の数は必ず の形、つまり になります。逆向きに見ると、ハフマンの「 個を 1 個にまとめる」操作は 1 回ごとに個数を 減らします。最後にちょうど 1 個(根)で終わるには、最初の個数が でなければなりません。

記号数 がこの条件を満たさないとき、最適な符号の木には使われない枝が残ります。空いた枝が浅い位置にあれば、深い符号語をそこへ移して平均符号長を下げられます。また深い位置の空きが複数の節点に散らばっていれば、1 つの節点に寄せて符号語を短くできます。そのため、最適な符号では空きはすべて最も深い 1 つの節点の下に集まり、その数は 個以下です。この空きに確率 のダミー記号を置けば、満ちた 分木になります。ダミーは確率が なので に何も加えません。

あとは 2 元のときと同じ理屈が使えます。確率の小さい 個は、最も深い所で兄弟にできます。それらを 1 個(確率は和)にまとめると、記号数が 減った同じ形の問題になり、 の条件も保たれます。これをくり返して得られる符号が最適です。 は、まとめてできた節点(根を含む)の確率の総和に等しくなります。各記号の確率は、その記号から根までにある内部節点の数、つまり符号長 回だけ数えられるからです。

手順

  1. 補うダミーの個数 を決める: を満たす を選ぶ( なら常に )。

  2. 確率 のダミー記号を 個加え、全部で 個の記号を確率の小さい順に並べる。

  3. 確率の最も小さい 個をまとめて 1 つの節点にし、その確率を 個の確率の和とする。これを 1 個になるまでくり返す(毎回ちょうど 個まとめられる)。

  4. 木を根からたどり、各節点から出る 本の枝に を割り当てて符号語を読む。ダミーの符号語は使わない。

  5. 平均符号長 を計算する。検算として、まとめてできた節点の確率の総和と一致することを確かめる。

例題

情報源の 6 個の記号 がそれぞれ確率 で出る。3 元(符号記号 )の語頭符号の平均符号長 の最小値を、3 元ハフマン符号を構成して求めよ。

例題の解答

手順1: なので である。 は なので、 となる は である。

手順2: 確率 のダミー を加えて 7 個にし、小さい順に並べる: 。

手順3: 小さい 3 個 をまとめて節点 (確率 )を作る。残りは の 5 個になる。次に小さい 3 個 をまとめて節点 (確率 )を作る。残りは の 3 個である。最後にこの 3 個をまとめて根(確率 )とする。

手順4: 根から , , とする。 の下は , , とする。 の下は , とし、 は使わない。符号長は が 1、 が 2、 が 3 である。

手順5: となる。検算すると、まとめた節点の確率の和は で一致する。よって最小値は である。

答え:

よくある誤り

この説明は AI が書き、別の AI が例題を独立に解いて答えを確かめ、説明を一歩ずつ査読しました。

入口の問題

この技能を使う問題