圧縮の解説(基本情報技術者シラバス用語)

目次

圧縮とは

圧縮とは、データの持つ情報を保ったまま、ファイルのサイズ(データ量)を小さくする技術のことです。インターネットでデータを送受信する時間を短縮したり、パソコンやスマートフォンの保存容量を節約したりするために欠かせない技術です。圧縮には大きく分けて、圧縮した後に元のデータと完全に同じ状態に復元できる「可逆圧縮」と、人間の目や耳に気づきにくい部分のデータを切り捨てて劇的にサイズを小さくする(元には戻せない)「非可逆圧縮」の2種類があります。

具体例

可逆圧縮の例としては、複数の文書ファイルを1つにまとめてサイズを小さくする「ZIPファイル」があります。解凍すれば元の文書が文字化けすることなく元通りになります。一方、非可逆圧縮の例としては、音楽ファイル(MP3)や写真(JPEG)があります。音質や画質を人が気づかない程度に少しだけ落とすことで、ファイルサイズを元の何十分の一にも小さくしています。

もう少し詳しく

データ圧縮は、コンピューターが扱う情報の冗長性(重複している部分や不要な部分)を取り除くアルゴリズムによって行われます。

「可逆圧縮(Lossless Compression)」は、アルゴリズム的に情報の重複を整理することでサイズを削減します。代表的な手法に「ランレングス符号化(RLE)」があります。例えば「AAAAABBBCC」というデータがあった場合、「Aが5個、Bが3個、Cが2個」という意味の「A5B3C2」に置き換えることで文字数を減らします。他には、出現頻度が高いデータほど短い符号(ビット)を割り当てる「ハフマン符号化」などがあります。テキスト文書、プログラムのソースコード、データベースファイルなど、1文字や1ビットのズレも許されないデータの保存に用いられます。

一方の「非可逆圧縮(Lossy Compression)」は、人間が認識しにくい領域のデータを恒久的に間引く手法です。人間の耳は特定の高周波数帯の音や、大きな音の直後にある小さな音を聞き取りにくいという特性(聴覚心理学的なアプローチ)を持っています。また、人間の目は色の急激な変化(高周波成分)には比較的鈍感です。これらの特性を利用し、重要度の低いデータを数学的な処理(離散コサイン変換など)によって切り捨てることで、劇的な圧縮率を実現します。主に画像(JPEG)、動画(MPEG)、音声(MP3やAAC)などのマルチメディアデータに活用されます。

試験でのポイント

IT試験においては、「可逆圧縮」と「非可逆圧縮」の最大の特徴と使い分けを正確に分類できるかどうかが得点に直結します。

以下の整理は試験対策として不可欠です。
・可逆圧縮:圧縮後、解凍(復元)したときに元のデータと「完全に一致する」。ZIPやLHA、画像形式のPNGやGIFが該当する。プログラムやテキストの圧縮には必ずこちらを使用する(非可逆で圧縮するとプログラムが起動しなくなったり、文字が欠落したりするため)。
・非可逆圧縮:圧縮率が非常に高い反面、一度圧縮すると「元の完全な状態には戻せない」。JPEGやMPEG、MP3などが該当する。写真や音楽、動画など、多少の劣化が許容されるメディアデータに使用する。

問題で「一度圧縮して元に戻したデータが、元のデータとビット単位で一致する方式はどれか」と問われたら「可逆圧縮」を選択します。また、それぞれの方式に対応する具体的なファイル形式(拡張子)の対応関係を紐づけて覚えておくことも重要です。

関連する用語

圧縮技術に関連する用語として、可逆圧縮を採用した画像形式の「PNG」や「GIF」、非可逆圧縮を採用した静止画形式の「JPEG」、動画圧縮規格の「MPEG」があります。また、圧縮したデータを元に戻す処理である「解凍(伸張・復元)」や、複数のファイルを1つにまとめて圧縮する形式である「ZIP」なども、日常的かつ試験で頻出のキーワードです。

読んだ内容を10問練習と実技で確認

記事で理解した用語を、StudyQuestの演習とクラウド実技ラボで定着させます。

10問練習 実技ラボ