平均符号長・とは?初心者にも分かる基本と実例で学ぶ共起語・同意語・対義語も併せて解説!

  • このエントリーをはてなブックマークに追加
平均符号長・とは?初心者にも分かる基本と実例で学ぶ共起語・同意語・対義語も併せて解説!
この記事を書いた人

高岡智則

年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)


平均符号長・とは?

データを短い文字列で表すとき、私たちは記号ごとに決められた長さのコードを作ります。平均符号長は、そんなコードの「長さの平均」を表す考え方です。ここでは、中学生にも分かるように、平均符号長が何を意味するのか、どう計算するのか、そして実際の例を交えて説明します。

まず、ある記号 i が現れる確率を p(i)、その記号を表すコードの長さを l(i) とします。全ての記号について L = Σ p(i) · l(i) という式で平均符号長を求めます。たとえば、A が出る確率が 0.5、B と C がそれぞれ 0.25 のとき、それぞれの符号長を 1、2、2 と決めれば、L = 0.5×1 + 0.25×2 + 0.25×2 = 1.5 ビット程度の平均長になります。

なぜ平均符号長が重要か

私たちは情報を小さく送るほど便利です。平均符号長ができるだけ小さいコードを選ぶと、データを送るときの全体のデータ量が減ります。しかし、長いコードを作りすぎると実際には不便です。そこで、プレフィックス符号と呼ばれる仕組みを使います。これは、あるコードが別のコードの先頭になっていない性質で、途中で誤解して解読されることを防ぎます。

このような前提のもと、実は ハフマン符号 のような方法を使うと、与えられた確率分布のもとで 可能な限り平均符号長を小さくできます。つまり、同じ情報を伝えるのに必要なビット数を最小化する近似解として有名です。

もう少し詳しい話

平均符号長には理論的な下限があり、それは情報の不確定さを表す量「エントロピー」と呼ばれます。エントロピーを表す式は H(P) = - Σ p(i) log2 p(i) です。ここで底が 2 の対数を使うと単位はビットになります。重要な性質として エントロピー ≤ 平均符号長 という不等式が成り立ちます。つまり、情報の不確実性を表すエントロピーを下回ることは、一般のコードでは難しいということです。

さらにKraftの不等式 という条件も覚えておくと役に立ちます。プレフィックス符号を作るときには Σ 2^{-l(i)} ≤ 1 という関係が成立する必要があります。これがコードの設計を難しくしつつも、最適性の指針にもなります。

具体的な例で見てみよう

確率が A: 0.5、B: 0.25、C: 0.25 のとき、短いコードを次のように決めるとします。A の符号長を 1、B と C の符号長を 2 とします。これを使うと、各記号の寄与は 0.5×1 = 0.50.25×2 = 0.50.25×2 = 0.5 となり、合計 1.5 ビットになります。理論的にはこのケースのエントロピーも 1.5 ビット程度で、最適性が評価できます。

記号確率 p(i)符号長 l(i)p(i)×l(i)
A0.510.5
B0.2520.5
C0.2520.5
合計1.5

結論として、平均符号長は情報をどれだけ短く表現できるかの目安です。エントロピーに近づけるほど良いコードであると言え、学ぶときには実際の例で練習するのが一番分かりやすいです。


平均符号長の同意語

平均符号長
ある符号化方式における全コード語の長さの期待値。各コード語の長さをその出現確率で重み付けした平均を指します。
平均コード長
コード長の平均値。出現確率に基づく長さの加重平均で、情報源の分布に依存します。
符号長の期待値
符号長(コード語の長さ)の確率分布から求める平均値。長さの統計的期待値を表します。
符号語長の平均
符号語(コード語)の長さの平均値を指す表現で、平均符号長と同義で使われます。
コード長の平均
コードの長さの平均値。符号長と同義の表現です。
平均ビット長
コードをビット列で表現したときの、コード語のビット長の平均値。特に二進符号を想定する場面で使われます。
符号長期待値
符号長の期待値という表現。長さの確率分布から算出します。
符号語長の期待値
符号語の長さの期待値。符号語とコード語は同義で使われることがあります。
コード語の平均長
コード語(符号語)の長さの平均値を指す表現。
平均符号語長
符号語長の平均値を指す表現。全コード語の長さの重み付き平均として解釈します。

平均符号長の対義語・反対語

最大符号長
コードのセットの中で最も長い符号の長さ。平均符号長と比べて長さの上限を示す概念です。
最短符号長
コードのセットの中で最も短い符号の長さ。平均長さの対比として、最小長さを示す側面を表します。
固定長符号
全ての符号語が同じ長さで割り当てられる符号方式。可変長コードに対して、長さのばらつきがない点が特徴です。
等長符号
固定長符号とほぼ同義で、すべての符号語が等しい長さになることを指します。対義的なイメージとして使われます。
最悪ケース符号長
デコード時に想定される最長の符号長。平均符号長とは別の「最悪の場合の長さ」を示す指標です。
符号長のばらつきが大きい
コード長の分布が広く、長さに大きなばらつきがある状態。平均符号長だけでは全体像が把握しづらい点を示します。
符号長のばらつきが小さい
コード長の分布が狭く、ほとんどの符号語が同じか近い長さになる状態。平均符号長の実現が安定している状態を示します。

平均符号長の共起語

符号長
各コード語に割り当てられたビット列の長さのこと。短いほどデータを少ないビットで表現できます。
期待符号長
すべてのコード語長 l(i) と出現確率 p(i) の積を足し合わせた、平均的なコード長のこと。L = Σ p(i) l(i)。
エントロピー
情報源の不確かさの程度を表す指標。H(X) のように表され、理論上の平均符号長の下限となります。
冗長性
実際の平均符号長とエントロピーの差。余分に使用されているビットの量を指します。
最小平均符号長
理論上達成可能な平均符号長の下限。通常はエントロピーに近づくほど小さくなります。
情報量
1つのシンボルが持つ情報の量。確率に基づいて決まり、情報の新しさを表します。
情報源符号化定理
情報源を適切に符号化すれば平均符号長はエントロピー以上になる、という理論。
シャノンの不等式
エントロピーと平均符号長の関係を示す不等式。H(X) ≤ L ≤ H(X) + 1(二値コードの場合)等。
算術符号化
データを連続的な区間に割り当てて符号化する手法。平均符号長をエントロピーに非常に近づけやすい。
算術符号
算術符号化で生成されるコード。連続的な区間割り当てによる表現方法
Huffman符号
出現確率に基づいて接頭符号を構成する二進符号。平均符号長を比較的抑えるのに適した手法。
シャノン-ファノ符号
シャノンとファノのアイデアを組み合わせた接頭符号。実装が比較的シンプルです。
符号木
接頭符号を生成するための木構造。葉がコード語、根から葉へ伸びる階層がコード長を決めます。
接頭符号
他のコード語の前方に来ない性質を持つ符号。これによりデコードが一度で完了します。
二進符号化
コードを2進数のビット列で表現すること。デジタル機器で扱いやすい形式です。
実効符号長
実際に運用したときの平均符号長。データ分布や符号設計で変わります。
符号化
情報源のデータをコード語に変換する全体の過程。データ圧縮の基礎입니다。
ソース符号化
情報源を効率的に符号化してデータを圧縮する技術分野。
符号長分布
コード語の長さがどのように分布しているかを表す分布。設計時の指標になります。
最適符号長
特定のソース分布に対して平均符号長を最小にする符号長の組み合わせ。

平均符号長の関連用語

平均符号長
情報源の各記号 x に対して割り当てられた符号語の長さ l(x) の期待値。通常 L̄ = Σ p(x) l(x)。
符号長
々の記号 x に対して割り当てられる符号語の長さ l(x)。
符号語
符号化された出力としてのビット列。元の記号 x を表す文字列。
プレフィックス符号
先頭辞が他の符号語の先頭部と重ならないよう制約を持つ、互いに重複しない符号集合。
プレフィックス自由性
プレフィックス符号と同義。いずれの符号語も他の符号語の前方部分として現れない性質。
Kraft不等式
プレフィックス符号が存在するための必要条件を表す不等式。Σ_x 2^{-l(x)} ≤ 1。
Kraft–McMillan不等式
長さ分布 {l(x)} がプレフィックス符号として実現可能かを判定する一般化された不等式。
Huffman符号
出現確率の高い記号には短い符号語を割り当て、最適なプレフィックス符号を作るアルゴリズム
Shannonのソース符号定理
エントロピー H(X) を平均符号長の下限として示し、可能な限り近づける符号を作る方法を提供。
エントロピー
情報源の不確実性を表す平均情報量。H(X) = - Σ p(x) log2 p(x)。
Shannon–Fano符号
Shannon-Fano 法による可変長符号化の古典的アルゴリズム
算術符号化
確率区間を連続的に狭めて全体の符号語として一つの数値を表現する、ほぼエントロピーに近い圧縮を実現する手法。
ブロック符号化
複数の記号を1つのブロックとして扱い、長い平均符号長を抑制する符号化法。
冗長性
平均符号長 L̄ とエントロピー H(X) の差。低減が求められる指標。
効率
エントロピーに対する平均符号長の比率。通常は L̄ / H(X)。
固定長符号
全ての符号語が同じ長さの符号化方式。
可変長符号
符号語の長さが記号に応じて異なる符号化方式。
情報源モデル
情報源の確率分布や構造を記述するモデル。
符号長分布
各記号 x に対応する符号長 l(x) の分布のこと。

平均符号長のおすすめ参考サイト


学問の人気記事

トルクの単位・とは?初心者向けに徹底解説!なぜ単位が違うのかまで分かる共起語・同意語・対義語も併せて解説!
1943viws
引用・参考文献とは?初心者でもわかる使い方とポイント解説共起語・同意語・対義語も併せて解説!
712viws
ensureとは?初心者にもわかる意味と使い方を徹底解説共起語・同意語・対義語も併せて解説!
665viws
座標計算・とは?初心者向けガイドで完全マスター共起語・同意語・対義語も併せて解説!
637viws
示差走査熱量測定とは?初心者向けガイドで学ぶ基本と実験のポイント共起語・同意語・対義語も併せて解説!
518viws
絶縁抵抗値とは?初心者でも分かる測定の基本と安全のコツ共起語・同意語・対義語も併せて解説!
508viws
no・とは?初心者にもわかる意味と使い方ガイド共起語・同意語・対義語も併せて解説!
506viws
ナイロン樹脂とは?初心者にもわかる基本と用途ガイド共起語・同意語・対義語も併せて解説!
468viws
welchのt検定とは?不等分散のデータを比較する統計手法をやさしく解説共起語・同意語・対義語も併せて解説!
426viws
k型熱電対とは?初心者にも分かる基礎解説と活用事例共起語・同意語・対義語も併せて解説!
411viws
summarize・とは?初心者向け解説と使い方のコツ共起語・同意語・対義語も併せて解説!
396viws
気圧の単位とは?中学生にもわかるPa・atm・bar・Torrの違いと換算ガイド共起語・同意語・対義語も併せて解説!
390viws
論述問題・とは?初心者にも分かる解説と解き方のコツ共起語・同意語・対義語も併せて解説!
385viws
穴加工・とは?初心者が知っておく基本と現場での活用ポイント共起語・同意語・対義語も併せて解説!
381viws
z変換・とは?初心者が知っておくべき基礎と日常への応用共起語・同意語・対義語も併せて解説!
338viws
3/4・とは?分数の基本を分かりやすく解く完全ガイド共起語・同意語・対義語も併せて解説!
338viws
100g・とは?初心者が今すぐ知っておきたい基本と使い方共起語・同意語・対義語も併せて解説!
337viws
endnoteとは?研究ノートを整理する基本ツールの解説共起語・同意語・対義語も併せて解説!
330viws
洗浄バリデーションとは?初心者が押さえる基本と実務のポイント共起語・同意語・対義語も併せて解説!
329viws
pastとは?初心者向けガイド:意味・使い方・例文を徹底解説共起語・同意語・対義語も併せて解説!
291viws

新着記事

学問の関連記事