データ圧縮の基本:短くするために何をするのか

データ圧縮は、元のデータをそのままの形で保存・送信するのではなく、「表現を工夫してデータ量を減らす」ことです。多くの場合、元データの中にある“繰り返し”や“予測できるパターン”など、再現に必要でない(または必要以上に冗長な)情報を見つけます。その結果、必要情報だけを残す/あるいはより短い記号で表すことで、サイズを小さくします。

代表的な仕組み:符号化と冗長性の削り方

データ圧縮では、だいたい次の考え方が中心になります。

  • 統計的に起こりやすいものを短く表す:頻度が高い要素ほど短い符号にします。低頻度のものは長く表されます。
  • 予測して差分だけを持つ:直前の値や周囲の値から“だいたいこうなる”と予測し、ズレ(差分)だけを記録します。
  • 繰り返しをまとめて参照する:同じ並びが何度も出る場合、都度を書き直さず「これと同じです」と参照で済ませます。

これらのどれか(または複数)を組み合わせることで、元データをより少ない情報量に変換します。

可逆圧縮と不可逆圧縮:復元できるかどうか

データ圧縮には大きく分けて、可逆圧縮不可逆圧縮があります。

可逆圧縮

可逆圧縮は、圧縮したデータから元のデータを完全に復元できます。画像でも音声でも使われますが、特に「完全な一致が必要」な文書データなどで重要になります。一般に、不可逆より圧縮率は控えめになりやすいです。

不可逆圧縮

不可逆圧縮は、圧縮の過程で一部の情報を捨てることで、より大きく小さくします。その代わり復元すると元と完全一致にはなりません。画像・音声・動画など「多少の誤差が許容されやすい」データでよく使われます。

※ただし、どれだけ正確に再現できるか/どれだけ小さくできるかは、データの種類や方式の選び方に左右されます。ここは条件によって変動します。