圧縮は予測である:LLMと圧縮アルゴリズムが同じ問題を解いている理由
Compression Is Prediction

圧縮と大規模言語モデル(LLM)は、本質的に同じ問題を解決しようとしている。この記事では、ランレングス符号化や算術符号化などの圧縮の基本を解説し、モデルがシンボルの確率を推定することでデータを効率的に符号化する仕組みを示す。さらに、エントロピーが圧縮率と予測精度の関係を決定づけることを説明し、LLMがテキストの次のトークンを予測する能力が、圧縮における確率モデルの役割と深く結びついていることを明らかにする。
圧縮子とLLMは、その核となる部分で、まったく同じ問題を解こうとしている。
HNでの議論
302- farfatched
これは、ケンブリッジ大学で教えられていた「情報理論、推論、学習アルゴリズム」コースの背後にあるテーゼです。
> 情報理論と機械学習をなぜ統一するのか? それは、それらが同じコインの両面だからです。1960年代には、サイバネティクスという単一の分野に、情報理論家、コンピュータ科学者、神経科学者が集い、共通の問題を研究していました。情報理論と機械学習は今でも一緒にあるべきです。脳は究極の圧縮・通信システムです。そして、データ圧縮と誤り訂正符号の両方における最先端のアルゴリズムは、機械学習と同じツールを使用しています。
書籍(クリエイティブ・コモンズ): https://www.inference.org.uk/mackay/itila/book.html
講義: https://m.youtube.com/playlist?list=PLruBu5BI5n4aFpG32iMbdWo...
- sheeeeesh
Grant Sanderson は同じテーマについて優れた動画を公開しています [0]。これは進行中のシリーズの一部です。
[0] 圧縮は知性である パート1 - https://youtu.be/l6DKRf-fAAM?si=yyLWq8x4sSRkWd98
- jjk166
この記事は、確率と言うべきところで割合を使い、予測と言うべきところで評価を使っています。数学的な等価性は、言い換えれば、はるかに驚きも少なく、示唆も少なくなります。
算術符号を使った最初の例を考えると、文字列に文字A、B、Cだけが現れるという最初の前提だけで、エントロピーは56ビットのASCIIから14ビット(各文字についてAか非Aか、Bか非Bか)に減少します。さらに、Aでない場合にのみBか非Bかを区別する必要があると考えるなら、Aを単一のゼロビットで表現し、非Aのみを2ビット(最初のビットは常に1になる)で表現できます。これで、文字列の割合を知らなくても10ビットになります。もちろん、もしAが1つだけなどという場合は、これは悪い規則でしょう。最悪の場合、13ビットが必要になりますが、どの文字が最も多く現れるかを、その程度を知らずに知っているだけで、長さ7の文字列で3つの可能な文字がある場合、最悪のケースは11ビットです。最後のビットは、2番目の条件を適切に選べば暗黙にできます。つまり、Bか非Bかの代わりにCか非Cかを選べば、最後のビットはゼロになり、単に落とすことができます。これにより、10ビットと単一の1ビットの両方がCを符号化できます。これにより、例の文字列をわずか9ビットで、その長さの任意の文字列を10ビットで符号化でき、再び割合に関係なくです。算術符号化の結果に対するこの改善は、[…]
- znnajdla
直感的には、この考えは理にかなっています。何かを圧縮できるのは、その内容を「重要なもの」に還元したときだけです。そして「重要なもの」を理解することは、データのパターンを理解することです。データのパターンを理解することは、まさに知性です。
ここには重要な帰結があり、私はそれを人生とビジネスの教訓としています。それは、人生やビジネスにおいて、プロセスやワークフローを最適化することは、たとえ明白な経済的利益がなくても、価値があるということです。なぜなら、それを最適化することこそが、それを真に理解する唯一の方法だからです。私は、パフォーマンス(利益だけでなく)のために最適化しないビジネスやソフトウェアには非常に警戒します。それは、自分たちが何をしているのかを理解していないことを示しているからです。遅いソフトウェアは、理解が不十分なソフトウェアです。速いソフトウェアは、バグがなく安全である可能性も高いです。なぜなら、誰かがそれを理解しているからです。
- zahlman
ページのソースには、実際のテキストがすべて<p>タグ内に含まれているように見えますが、構造は完全に非論理的です。JavaScriptを無効にすると、テキストが表示されるべき場所に影付きのバーが多数あり、最初からそこにあったにもかかわらず、まだ読み込まれていない何かのプレースホルダーのように見えます。<p>タグはDOMにさえ表示されないようです。(詳しく確認していませんが、インラインスクリプトに埋め込まれているかもしれません。)
これは積極的にユーザーに敵対的です。このサイトは、HTMLの最も基本的な機能、つまり最小限のマークアップでプレーンテキストを提示することを妨害しようとしています。この不必要な複雑さは、圧縮に関する記事の文脈では特に皮肉的です。
- ssivark
いいえ、もう少しニュアンスがあり、その区別は重要です。
圧縮は、データ分布が将来のすべての問題を正確に代表している場合にのみ、予測と機能的に同等です。一般化を望むなら、話は劇的に変わります。なぜなら、テスト分布は、同じサポートを持っていても、任意に異なる可能性があるからです。例:トレーニングデータでまれなエッジケースを観察し、(非可逆)圧縮はそれを単に無視できるかもしれません。しかし、空間のその特定の部分で一般化を望むなら(敵対者がテストしているか、その特定の隅に構築することを選択する設計の自由のため)、データ圧縮だけでなく、その隅でピークに達するテスト分布に対する良好な予測パフォーマンスが欲しいのです。
トレーニングデータ分布が、今後気にするであろう分布と正確に同じであると仮定することは、「圧縮=予測」という主張において暗黙のうちに多くの重い仕事をしており、このステートメントがマニフェストのように無反省に繰り返されることに私は腹が立っています。
トレーニングデータ分布には何ら自然なものはありません。特に、データ生成プロセスが探索的であり、下流の使用が搾取的である場合はなおさらです。
- woliveirajr
部分一致による予測による圧縮があります [0]
コルモゴロフ複雑性 [1]、正規化情報距離 [2]、正規化圧縮距離 [3] があり、これらを関連付けます。
最後に、ビッグバン前の情報圧縮と反物質の遅延放出があります [4]
これらはすべて、時間を潰すための大きな{ウサギ/ブラック}ホールです。もしお時間があれば。
[0] https://en.wikipedia.org/wiki/Prediction_by_partial_matching
[1] https://en.wikipedia.org/wiki/Kolmogorov_complexity
[2] https://homepages.cwi.nl/~paulv/papers/chapter08.pdf
[3] https://en.wikipedia.org/wiki/Normalized_compression_distanc...
- qarl2
考えてみてください:
惑星の動きを記録したい場合、素朴には位置の大きな表があります。
それを圧縮するには、疎な位置を滑らかに補間するかもしれません。
それを圧縮するには、重力の法則をエンコードし、初期状態からシミュレートします。
圧縮は文字通り理解です。
- throwaway_7274
この視点は、「LLMは新しいアイデアを持てない、単なる次のトークン予測器だ」という種類の議論に対する直感の有用な源です。トレーニングを、広大なパラメータ化された圧縮アルゴリズムの族に対する最適化として考えるように視点を変えたらどうでしょう? すると、「新しい」「アイデア」がそのプロセスから出現し得るということが、はるかにもっともらしく見えてきます!
- Lerc
予測は圧縮ですが、逆が真かどうかは確かではありません。
正確な予測子があれば、予測子が間違えたデータだけをエンコードできることは明らかです。
しかし、圧縮子は、データ全体を見ることで予測に反するパターンをエンコードできます。到着した順にすべてをシーケンスで見る必要はありません。
エントロピー符号化の前に変換を適用することは、多くの場合、単に「圧縮しやすい形式に再配置する」だけではありません。変換は、未来を覗き見る仕事をしている可能性があります。それによりエンコードははるかに簡単になりますが、それを予測と呼ぶのははるかに困難です。