データ圧縮 【data compression】 圧縮符号化 / compression coding

概要

データ圧縮(data compression)とは、データを一定の計算手順で加工し、実質的な内容を損なわずにより短い符号列で表すこと。原則として得られた圧縮符号は逆の計算手順により元のデータ復元することができ、データの一部を損なって容量を減らす削減や間引きとは異なる。

同じ情報を短いデータ長で表現することで、記憶装置上で占有する領域を小さくすることができ、また、機器間をより短い時間や少ない回線の占有度で伝送することができる。ただし、圧縮後の符号列は元のデータを扱う処理系では利用できないため、使用前に必ず元の状態に戻す処理(解凍、伸長、展開などと呼ばれる)が必要となる。

圧縮処理や解凍処理に費やされる計算量や計算時間などと引き換えにデータ量の縮減という成果を得ており、両者が見合わなければ圧縮をう意義は失われる。例えば、データ伝送を高速化するためにデータ圧縮を導入したのに、圧縮、伝送、解凍の合計時間が元データ伝送時間を上回ってしまっては元も子もない。

圧縮の逆変換の呼称

圧縮(compress)後の符号列から元のデータ復元する逆方向の変換処理のことを英語では “decompress” (compressに否定接頭辞de-を付したもの)というが、日本語では定まった訳がなく、解凍、伸長、展開などの用語が用いられる。

ファイルアーカイバでは複数のファイルを一つの圧縮ファイルにまとめることが多いため、その中から指定されたものを取り出して元の状態に戻すことを「抽出」ということもある(英語でもこの文脈では “extract” を用いる)。

日本では1980年代にパソコン通信ファイル圧縮ソフトの付属文書などを通じて「解凍」という用語が広まった(対応して圧縮のことを凍結と呼ぶこともあったがこれは広まらなかった)ため、慣用的に解凍と呼ぶことが多いが、本来の語義として圧縮と解凍では意味が対応しておらず、解凍には容積の増減の意味はないことなどから批判も多い。

一方、伸長や展開は、伸ばす、広げるという意味は合っているが、圧縮の逆の動作としての元に戻すという意味合いは薄いとの批判もあり、あまり定着していない。

圧縮率と圧縮比

どのくらい圧縮できたかを圧縮率という用語で表すことがある。より小さい量に圧縮できたことを「圧縮率が高い」という。

実際には二つの異なる指標が圧縮率と呼ばれており、一つは圧縮後のデータ量の元のデータ量に対する比率、もう一つは削減量の元の量に対する比率である。いずれを指すのかは文脈により異なる。圧縮後にデータ量が元の10分の1になったことを、前者の指標では圧縮率10%、後者では90%と表現する。

一方、圧縮前と後のデータ量の比や倍率で圧縮の程度を表すこともあり、データ圧縮比と呼ばれる。10分の1に圧縮したことを10:1あるいは10倍と言い表す。

可逆圧縮と非可逆圧縮

完全に元のデータに戻せる符号列に変換する方式を「可逆圧縮」、元のデータの一部を削除・変形することで高い圧縮率を得る代わりに完全には元に戻せなくなる方式を「非可逆圧縮」あるいは「不可逆圧縮」という。

可逆圧縮はわずかでもデータの一部が異なれば元とはまったく違う意味になってしまう文字(テキストデータコンピュータプログラムの圧縮や汎用ファイル圧縮などで用いられ、通常単にデータ圧縮といえば可逆圧縮を指す。

非可逆圧縮は主に画像や音声、映像など元のデータに大きな情報冗長性が含まれる対象に用いられる。人間の視覚や聴覚の特性を利用して、人間が気づきにくい形でデータの一部を改変・削除することで、劇的な高圧縮率を得ることができる。

元の情報を損なう変換を伴うため、非可逆圧縮は厳密にはデータ圧縮手法の一部ではないとする立場もある。また、非可逆圧縮アルゴリズムの中には、元データの形式変換や加工(この段階ではデータ長の縮減は伴わない)をった後、データ圧縮自体は連長圧縮などの可逆圧縮によりう(すなわち、「非可逆」の工程では圧縮していない)ものも多い。

(2018.3.18更新)

他の辞典による解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。
ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる