【情報I】圧縮ってなにを削ってるの?現役エンジニアが可逆・非可逆を解説
こんにちは!オンライン家庭教師のこばやしです。普段はフリーランスのITエンジニアとして働きながら、中高生に「情報I」「理系数学」「英語」を教えています。
情報Iで学ぶ「データの圧縮」。ファイルを圧縮すると容量が減りますが、「なぜ減るのか」「可逆・非可逆って何が違うのか」がピンとこない、という方も多いのではないでしょうか。
ピンとこない原因は、圧縮を「魔法」のように捉えているからです。でも実際にやっていることは、「ムダを見つけて、短く書き直す」だけ。とてもシンプルな発想なんです。
■ 圧縮 = ムダを見つけて短く表現する
たとえば「AAAAA」という5文字。これを「Aが5個」=「A5」と書けば、たった2文字で済みます。これが圧縮の基本的な発想です。
データの中には、こうした「繰り返し」や「ムダ」がたくさん潜んでいます。それを見つけて、より短い表現に置き換える。魔法でも何でもなく、賢い「書き直し」をしているだけなのです。
■ 可逆圧縮 = 完全に元へ戻せる
圧縮には、大きく2種類あります。一つ目が「可逆圧縮」です。
可逆圧縮は、圧縮したデータを、1ビットも失わずに完全に元へ戻せるのが特徴です。「A5」を「AAAAA」に戻せるように、情報を一切捨てません。文書やプログラムのように、少しでも中身が変わってはいけないデータに使われます。身近なところでは、ファイルをまとめるZIPや、画像のPNGが可逆圧縮です。
■ 非可逆圧縮 = 一部を捨てて小さくする
もう一つが「非可逆圧縮」です。これは、思い切って一部の情報を捨てることで、より小さくする方法です。
写真のJPEG、音楽のMP3、動画のMP4などがこちらです。「人間の目や耳では気づきにくい情報」をうまく削ることで、見た目や聞こえ方をほぼ保ったまま、大幅に軽くできます。ただし、一度捨てた情報は元には戻りません。ここが可逆との決定的な違いです。
■ 現場では、用途で使い分ける
私たちエンジニアは、この2つを目的に応じて使い分けます。中身が1文字も変わってはいけない契約書のようなデータなら可逆圧縮。多少の画質より、とにかく軽くしたい写真なら非可逆圧縮、という具合です。
「元に戻せることを優先するか、サイズを優先するか」。この判断は、扱うデータの性質によって変わります。だからこそ、両者の違いを理解しておくことが大切なのです。
■ 「本質を残して、ムダを削る」発想
大事な情報を残しながら、いらないものを削って小さくする。この考え方は、圧縮に限らず、文章の要約や、情報の整理にもそのまま通じます。何が本質で、何が削れるムダなのかを見極める力は、勉強にも役立ちます。
私の授業では、簡単な文字列を実際に「短く書き換えて」みせて、圧縮の原理を手を動かしながら理解してもらいます。
・「圧縮の仕組みが分からない」という方
・「可逆・非可逆の違いが曖昧」という方
・「なぜ画質が落ちるのか知りたい」という方
そんな方は、ぜひ一度体験授業にいらしてください。現役エンジニアと一緒に、圧縮の「からくり」を体験しましょう!
【プロフィール】
こばやし|納得感を大切にするフリーランスエンジニア
北海道大卒。約10年間にわたり金融決済システムなどの基幹開発に携わった後、フリーランスのエンジニア・IT講師として独立。企業の新人IT研修のメイン講師も務めるプロが、「仕組みから理解する」論理的な指導を行います。
この先生のおすすめコース
- 共通テストで「情報I」が必要な国公立大・難関私大志望の方
- 「プログラミング」や「データの分析」が苦手で、暗記に逃げている方
- 将来IT系に進みたい、または現役エンジニアから実学を学びたい方
このブログに関連するオンライン家庭教師はこちら
情報/プログラミングのおすすめの指導コース
- プログラミングに少しでも興味がある方
- プログラミングををしてみたいけど何から勉強すればいいかわからない方
- 独学でプログラミングを勉強したけど挫折してしまった方
- 国公立大学への進学を考える高1生以下の方
- 新科目の追加に不安な方
- 情報系を専攻する大学・学部に進学したい方
- 『情報I』の勉強で、どこから手をつけていいか判らない人
- 共通テスト過去問をみても解けない人
- 国公立大志望(情報が必須)の人
- 情報Ⅰに苦手意識がある
- 効率重視で点数を伸ばしたい
- 苦手を的確に指摘・言語化し、短期間で伸ばしてくれる先生
- 情報を勉強したことがない生徒さん
- ITやAIについて知りたい生徒さん
- 理系科目を女性の先生から教わりたい生徒さん