>> 思う、だから私はいる>>>先月、山海ウーの女性向けコード キャンプで、私は講師として「AGI への道: 圧縮はインテリジェンス」の問題を共有しました。そのとき、誰もが AIGC と大型モデルに非常に興味を持っていたのに、多くの友人がそれを理解していなかったことがわかりました。なので、この言葉による説明を書きました。 AIGCに興味のある方の参考になれば幸いです。より深い理解が必要な場合は、この記事を読んだ後、スタンフォードでの Jack Rae (OpenAI チームの中心メンバー) の基調講演を参照してください: Compression for AGI (これは、この記事の主な参考資料でもあります)。### 1 機械学習から始めましょう機械学習は、コンピューターの背景がない人にとっては馴染みのないものかもしれません。しかし、私たちの生活のあらゆる側面は機械学習によってカバーされています。たとえば、Zhihu、Douyin、Xiaohongshu などのソフトウェアを開くと、システムが興味を持ちそうなコンテンツを自動的に推奨してくれます。あるブランドのスカートを購入することについて友達と話していたときに、淘宝網を開いて検索すると、推奨がブランドになり、電子メール システムがスパムを自動的にブロックし、交通カメラがドライバーの写真を撮り、違反がないかどうかを推測します。これらはすべて機械学習の恩恵を受けています。では、機械学習とは一体何なのでしょうか?最も初期の機械学習理論は、1783 年に発表された同名の定理でベイズによって提案されました。ベイズの定理は、新しいまだ見たことのないデータに対して可能な限り最善の予測を行うために、トレーニング データから学習します。端的に言えば「類推」ということです。これは、明示的にプログラムされずにコンピューターに自ら学習させる学問であり (Arthur、1959)、人工知能の下位分野です。 188 の 12 乗や a から b までの最短距離の計算など、明示的なプログラミングを通じて実行できることもあります。しかし、明示的なプログラミングでは解決できない問題もいくつかあります。たとえば、私たちはコンピュータが優れた囲碁プレイヤーになることを望んでいます。コンピュータが自分自身とチェスをできるようにプログラムすることができます。10,000 回プレイした後、コンピュータは最終ゲームで駒の勝率が上昇することを観察できます。特定の位置に配置された場所は他の場所よりも大きいため、プログラムはそこを選択します。コンピューターの強力な計算能力により、短期間で無数のチェスの対局を完了することができるため、コンピューターはますます勝ち方を知り、最終的には人間を超えるチェスプレイヤーになります。機械に自ら学習させて最適な解決策を見つけるのが機械学習のプロセスですが、機械は正確に何を学習したのでしょうか?これはブラックボックスであり、入力からのみ出力結果を取得できます。機械学習のアルゴリズムは学習方法に応じて「教師あり学習」「教師なし学習」「半教師あり学習」「強化学習」の4種類に分類されます。最も一般的に使用されるのは教師あり学習ですが、ChatGPT はそのコア アルゴリズムとして強化学習を選択しました。### 2 強化学習 VS 教師あり学習教師あり学習が主流のアルゴリズムであるにもかかわらず、なぜ OpenAI は強化学習を選択したのでしょうか?ここではまず、この 2 つの概念について説明します。教師あり学習とは、ユーザーが提供した例から学習して、入力と出力の間のマッピングを学習するアルゴリズムを指します。たとえば、一部のメールが自動的にブロックされ、ゴミ箱に入れられることがよくありますが、システムはどのようにしてメールがスパムであるかどうかを判断するのでしょうか?これは教師あり学習を使用します。まず、エンジニアは大量のラベル付きデータをアルゴリズムにフィードする必要があります。この例では、電子メールを入力として使用でき、対応する出力結果は 2 種類あり、スパムメールと非スパムメールです。電子メール (はい/いいえ、つまりラベル)。 100,000 個のデータを入力すると、アルゴリズムはこれら 100,000 個のデータに基づいてスパムの特徴を学習します。このとき、新規メールを入力すると、事前に学習したモデルに従って新規メールがスパムの特徴に該当するかどうかを判断し、傍受するかどうかを決定します。強化学習は報酬フィードバック メカニズムに似ています。強化学習では、モデルに入力を提供しますが、正解は提供しません。モデル自体が答えを生成する必要があります。次に、実際の人に生成された回答を読んでもらい、その回答にスコアを付けてもらいます (たとえば、1 ~ 100 は 80 ポイント)。モデルの目標は、どのように答えて高得点を獲得するかです。もう 1 つのメカニズムは、モデルが複数の回答を生成し、スコアリング メカニズムがどの回答が最良であるかをモデルに伝えることです。モデルの目標は、スコアの低い回答を生成することではなく、スコアの高い回答を生成する方法を学習することです。どちらの場合も、モデルは回答を生成し、フィードバックを受け取ることによって学習します。対照的に、教師あり学習では正のフィードバックのみが許可されます (モデルに一連の質問とその正解が与えられます)。一方、強化学習では負のフィードバックが許可されます (モデルは間違った答えを生成し、「この答えは良くありません、次回は」というフィードバックを得ることができます)こんなことはやめてください」)。実際の人々が学習プロセスで発見したように、ネガティブなフィードバックはポジティブなフィードバックと同じくらい重要です。これが、OpenAI が RLHF トレーニング (つまり、人間のフィードバックに基づく強化学習トレーニング) を選択した理由であると考えられます。よく考えてみてください、これは人間の学習方法と非常によく似ていますか? 私たちが学習するときも、大量の知識を獲得し、次に試験を受けて学習状況をテストし、最後に獲得した知識を新しいシナリオに適用します (転移学習、これは GPT の基礎の 1 つでもあります)。したがって、今回の AIGC も限りなく AGI (General Artificial Intelligence) に近いと考えられます。### 3 AGIへの道AGIとは簡単に言うと、人間と同等、あるいは人間を超えた知能を持つ人工知能のことです。 ChatGPT にはすでにその風味があると思いますか?しかし、人工知能の知能をどのように判断するのでしょうか?1980年、ジョン・サールは有名な思考実験「チャイニーズ・ルーム」を提案した。実験プロセスは次のように表現できます。>> 中国語の知識がなく、英語しか話せない人を、小さな窓が一つだけある密室に閉じ込めます。部屋には中国語と英語の翻訳が記載されたマニュアルがあります。部屋には原稿用紙と鉛筆が十分にあります。同時に、中国語で書かれた紙が小窓から室内に送り込まれた。部屋にいる人々は彼の本を使ってこれらのテキストを翻訳し、中国語で返信することができます。彼は中国語をまったく話せませんが、このプロセスを通じて、部屋にいる人々は部屋の外にいる誰にでも彼が流暢に中国語を話すことができると思わせることができます。>>>このような膨大なマニュアルは、明らかに非常に低いレベルの知性を表しています。なぜなら、マニュアルに載っていない語彙に遭遇すると、人はそれに対処することができないからです。大量のデータからいくつかの構文やルールを抽出できれば、マニュアルはより合理化されるかもしれませんが、システムはより高いレベルのインテリジェンス(汎化能力の向上)を備えることになります。マニュアルが分厚いほど知性は弱く、マニュアルが薄いほど知性は強くなります。企業が人を採用するとき、能力が高い人ほど説明の必要が少なくなり、能力が低い人ほど説明の必要があるのと同じです。上記の例は、圧縮が知性である理由をよく説明しています。AI の知性を向上させたい場合は、抽出ルールを一般化することで、必要な有効な情報を抽出できます。このようにして、NLP 研究者がよく言うことを理解できます。 **GPT のトレーニング プロセスはデータの可逆圧縮です。 **### 4 圧縮は知性です2 月 28 日、OpenAI のコア開発者である Jack Rae 氏は、スタンフォード MLSys セミナーでのインタビューで、「AGI の圧縮」というトピックについて共有しました。核となる視点は次のとおりです。**AGI 基本モデルの目標は、効果的な効果を最大化することです。情報 最大可逆圧縮。 **また、この目標が合理的である理由と、OpenAI がこの目標に基づいてどのように ChatGPT を作成したかについての論理分析も提供します。一般化とは、既知から未知へ移行するプロセスです。図に示すように、私たちが関心を寄せている中心的な問題は、未知のデータのパターンを学習し、既存のデータ (黄色) から予測 (灰色) を行う方法です。モデルが灰色の部分をより正確に予測できるほど、その汎化能力は強力になります。コンピューター ソフトウェアが英語を中国語に翻訳する必要があると想像してください。辞書を調べて考えられるすべてのフレーズを中国語に翻訳する場合、辞書に載っていないフレーズはどちらも翻訳できないため、そのソフトウェアは翻訳タスクについて最もよく理解していないと考えられます。翻訳することができます。しかし、辞書がより小さなルールセット (文法や基本語彙など) にまで絞り込まれていれば、よりよく理解できるようになるため、ルールセットがどの程度圧縮されているかに基づいてスコアを付けることができます。実際、最小限の記述長に圧縮できれば、翻訳タスクにとって最もよく理解できるものであると言えます。特定のデータセット D については、生成モデル f を使用して圧縮できます。ここで、図の |D| はデータセット D の可逆圧縮を表し、可逆圧縮のサイズは生成モデルの負の対数として表すことができます。 D で評価され、推定された関数の最小記述長を追加します。では、大規模なモデルはどのようにして可逆圧縮を実現するのでしょうか?まず GPT の性質を理解する必要があります。 GPT は実際には Transformer に基づいた大きな辞書であり、その本質は Next Token Prediction (以下の理由) です。簡単に言うと、指定されたテキスト シーケンスの後に最後に考えられる単語またはフレーズを予測することです。たとえば、私が「昨日はよく眠れました」と言うと、話し終わる前に、私が高い確率で「昨日はよく眠れましたか?」と言い続けます。わかりました」 このプロセスは次のような推論です。このようにして学習されるのは、単語間の表面的な統計的関係だけではないことは明らかだと言えるでしょうか。知性はどのようにして生まれたのでしょうか?遠く離れたケンタウリ銀河から地球にデータを送信する必要があるとしますが、帯域幅は非常に貴重です。データを送信するには最小限の帯域幅を使用し、相手側が損失なくデータを回復できるようにする必要があります。この方法を使用できます。まず、実行するたびに同じニューラル ネットワーク モデルを生成する言語モデルのトレーニング コードを準備します。次に、N 個のデータに対してトレーニング プログラムを実行し、時刻 t で、すべてのトークンの確率分布 Pt の下で Xt の確率を取り出し、算術符号化を使用してそれを 2 進数の 10 進数に変換し、Zt として記録します。類推により、Z1、Z2、Z3、...、Zn からなるリストが得られます。これら N 個のデータを相手側でロスレスで復元したい場合は、Z1 ~ Zn のリストと言語モデルのトレーニング コードの 2 つのコンテンツを転送するだけで済みます。受信側でデコードするときに、受信したトレーニング コードを使用してネットワークを初期化します。タイムスタンプ t で、モデルは Pt を使用して Zt を算術デコードし、Xt を取得します。時刻 t におけるトークンの確率分布 Pt は、送信側と受信側で完全に一致していることに注意してください。全体のプロセスは可逆データ圧縮プロセスであり、言語モデルのトレーニング コードに基づいて、N 個のデータを Z1 ~ Zn の一連の数値に圧縮し、各圧縮データのサイズは -logp(x) になります。プロセス全体を通じて、ニューラル ネットワーク全体 (数千億または数千億のパラメーター) を送信する必要がないことに注意することが重要です。したがって、言語モデルを使用してデータセット D を圧縮するために使用されるビットの総数は、次の式で表すことができます。トランスフォーマーベースのモデルの記述長は、約 100kb ~ 1MB (必要なすべてのコード サイズ) です。モデルのパラメータは、モデルの記述長の一部ではありません。chatgpt は事実に関する質問で間違いが多いとよく感じますが、たとえば、Liu Cixin の出身都市を尋ねると、モデルは依然として間違った答えを返します。これは、トレーニング プロセス中に、モデルがいくつかのトレーニング データをゆっくりと記憶するためです。モデルのパラメーターは、トレーニング データの非可逆データ圧縮とほぼみなすことができます。これは、Ted Jiang が「ChatGPT はすべてのテキストです」で述べたことでもあります。インターネット。「ぼやけた画像」を意味します。 LLM は元のデータセットの可逆圧縮であり、非常に特殊で数学的に厳密に証明できます。テッド・チャンが言及した非可逆圧縮は、非常に抽象的な文学的な例えです。この写真をまだ覚えていますか? 私たちが重視しているのは、黄色の円の内側の内容ではなく、外側の灰色の部分です。これは、より少ない内容を使用してより多くの知識を得る方法、つまり一般化能力を重視しているためです。一般化はヒープパラメータと比較するとインテリジェンスです。
AGI への道: ChatGPT の背後にあるロジック、圧縮はインテリジェンスです
先月、山海ウーの女性向けコード キャンプで、私は講師として「AGI への道: 圧縮はインテリジェンス」の問題を共有しました。そのとき、誰もが AIGC と大型モデルに非常に興味を持っていたのに、多くの友人がそれを理解していなかったことがわかりました。なので、この言葉による説明を書きました。 AIGCに興味のある方の参考になれば幸いです。より深い理解が必要な場合は、この記事を読んだ後、スタンフォードでの Jack Rae (OpenAI チームの中心メンバー) の基調講演を参照してください: Compression for AGI (これは、この記事の主な参考資料でもあります)。
1 機械学習から始めましょう
機械学習は、コンピューターの背景がない人にとっては馴染みのないものかもしれません。しかし、私たちの生活のあらゆる側面は機械学習によってカバーされています。たとえば、Zhihu、Douyin、Xiaohongshu などのソフトウェアを開くと、システムが興味を持ちそうなコンテンツを自動的に推奨してくれます。あるブランドのスカートを購入することについて友達と話していたときに、淘宝網を開いて検索すると、推奨がブランドになり、電子メール システムがスパムを自動的にブロックし、交通カメラがドライバーの写真を撮り、違反がないかどうかを推測します。これらはすべて機械学習の恩恵を受けています。
では、機械学習とは一体何なのでしょうか?最も初期の機械学習理論は、1783 年に発表された同名の定理でベイズによって提案されました。ベイズの定理は、新しいまだ見たことのないデータに対して可能な限り最善の予測を行うために、トレーニング データから学習します。端的に言えば「類推」ということです。
これは、明示的にプログラムされずにコンピューターに自ら学習させる学問であり (Arthur、1959)、人工知能の下位分野です。 188 の 12 乗や a から b までの最短距離の計算など、明示的なプログラミングを通じて実行できることもあります。しかし、明示的なプログラミングでは解決できない問題もいくつかあります。
たとえば、私たちはコンピュータが優れた囲碁プレイヤーになることを望んでいます。コンピュータが自分自身とチェスをできるようにプログラムすることができます。10,000 回プレイした後、コンピュータは最終ゲームで駒の勝率が上昇することを観察できます。特定の位置に配置された場所は他の場所よりも大きいため、プログラムはそこを選択します。コンピューターの強力な計算能力により、短期間で無数のチェスの対局を完了することができるため、コンピューターはますます勝ち方を知り、最終的には人間を超えるチェスプレイヤーになります。機械に自ら学習させて最適な解決策を見つけるのが機械学習のプロセスですが、機械は正確に何を学習したのでしょうか?これはブラックボックスであり、入力からのみ出力結果を取得できます。
機械学習のアルゴリズムは学習方法に応じて「教師あり学習」「教師なし学習」「半教師あり学習」「強化学習」の4種類に分類されます。最も一般的に使用されるのは教師あり学習ですが、ChatGPT はそのコア アルゴリズムとして強化学習を選択しました。
2 強化学習 VS 教師あり学習
教師あり学習が主流のアルゴリズムであるにもかかわらず、なぜ OpenAI は強化学習を選択したのでしょうか?ここではまず、この 2 つの概念について説明します。
教師あり学習とは、ユーザーが提供した例から学習して、入力と出力の間のマッピングを学習するアルゴリズムを指します。たとえば、一部のメールが自動的にブロックされ、ゴミ箱に入れられることがよくありますが、システムはどのようにしてメールがスパムであるかどうかを判断するのでしょうか?これは教師あり学習を使用します。まず、エンジニアは大量のラベル付きデータをアルゴリズムにフィードする必要があります。この例では、電子メールを入力として使用でき、対応する出力結果は 2 種類あり、スパムメールと非スパムメールです。電子メール (はい/いいえ、つまりラベル)。 100,000 個のデータを入力すると、アルゴリズムはこれら 100,000 個のデータに基づいてスパムの特徴を学習します。このとき、新規メールを入力すると、事前に学習したモデルに従って新規メールがスパムの特徴に該当するかどうかを判断し、傍受するかどうかを決定します。
強化学習は報酬フィードバック メカニズムに似ています。強化学習では、モデルに入力を提供しますが、正解は提供しません。モデル自体が答えを生成する必要があります。次に、実際の人に生成された回答を読んでもらい、その回答にスコアを付けてもらいます (たとえば、1 ~ 100 は 80 ポイント)。モデルの目標は、どのように答えて高得点を獲得するかです。もう 1 つのメカニズムは、モデルが複数の回答を生成し、スコアリング メカニズムがどの回答が最良であるかをモデルに伝えることです。モデルの目標は、スコアの低い回答を生成することではなく、スコアの高い回答を生成する方法を学習することです。どちらの場合も、モデルは回答を生成し、フィードバックを受け取ることによって学習します。
対照的に、教師あり学習では正のフィードバックのみが許可されます (モデルに一連の質問とその正解が与えられます)。一方、強化学習では負のフィードバックが許可されます (モデルは間違った答えを生成し、「この答えは良くありません、次回は」というフィードバックを得ることができます)こんなことはやめてください」)。実際の人々が学習プロセスで発見したように、ネガティブなフィードバックはポジティブなフィードバックと同じくらい重要です。これが、OpenAI が RLHF トレーニング (つまり、人間のフィードバックに基づく強化学習トレーニング) を選択した理由であると考えられます。
よく考えてみてください、これは人間の学習方法と非常によく似ていますか? 私たちが学習するときも、大量の知識を獲得し、次に試験を受けて学習状況をテストし、最後に獲得した知識を新しいシナリオに適用します (転移学習、これは GPT の基礎の 1 つでもあります)。したがって、今回の AIGC も限りなく AGI (General Artificial Intelligence) に近いと考えられます。
3 AGIへの道
AGIとは簡単に言うと、人間と同等、あるいは人間を超えた知能を持つ人工知能のことです。 ChatGPT にはすでにその風味があると思いますか?しかし、人工知能の知能をどのように判断するのでしょうか?
1980年、ジョン・サールは有名な思考実験「チャイニーズ・ルーム」を提案した。実験プロセスは次のように表現できます。
このような膨大なマニュアルは、明らかに非常に低いレベルの知性を表しています。なぜなら、マニュアルに載っていない語彙に遭遇すると、人はそれに対処することができないからです。大量のデータからいくつかの構文やルールを抽出できれば、マニュアルはより合理化されるかもしれませんが、システムはより高いレベルのインテリジェンス(汎化能力の向上)を備えることになります。
マニュアルが分厚いほど知性は弱く、マニュアルが薄いほど知性は強くなります。企業が人を採用するとき、能力が高い人ほど説明の必要が少なくなり、能力が低い人ほど説明の必要があるのと同じです。
上記の例は、圧縮が知性である理由をよく説明しています。AI の知性を向上させたい場合は、抽出ルールを一般化することで、必要な有効な情報を抽出できます。このようにして、NLP 研究者がよく言うことを理解できます。 **GPT のトレーニング プロセスはデータの可逆圧縮です。 **
4 圧縮は知性です
2 月 28 日、OpenAI のコア開発者である Jack Rae 氏は、スタンフォード MLSys セミナーでのインタビューで、「AGI の圧縮」というトピックについて共有しました。核となる視点は次のとおりです。**AGI 基本モデルの目標は、効果的な効果を最大化することです。情報 最大可逆圧縮。 **また、この目標が合理的である理由と、OpenAI がこの目標に基づいてどのように ChatGPT を作成したかについての論理分析も提供します。
一般化とは、既知から未知へ移行するプロセスです。図に示すように、私たちが関心を寄せている中心的な問題は、未知のデータのパターンを学習し、既存のデータ (黄色) から予測 (灰色) を行う方法です。モデルが灰色の部分をより正確に予測できるほど、その汎化能力は強力になります。
コンピューター ソフトウェアが英語を中国語に翻訳する必要があると想像してください。辞書を調べて考えられるすべてのフレーズを中国語に翻訳する場合、辞書に載っていないフレーズはどちらも翻訳できないため、そのソフトウェアは翻訳タスクについて最もよく理解していないと考えられます。翻訳することができます。しかし、辞書がより小さなルールセット (文法や基本語彙など) にまで絞り込まれていれば、よりよく理解できるようになるため、ルールセットがどの程度圧縮されているかに基づいてスコアを付けることができます。実際、最小限の記述長に圧縮できれば、翻訳タスクにとって最もよく理解できるものであると言えます。
特定のデータセット D については、生成モデル f を使用して圧縮できます。ここで、図の |D| はデータセット D の可逆圧縮を表し、可逆圧縮のサイズは生成モデルの負の対数として表すことができます。 D で評価され、推定された関数の最小記述長を追加します。
では、大規模なモデルはどのようにして可逆圧縮を実現するのでしょうか?まず GPT の性質を理解する必要があります。 GPT は実際には Transformer に基づいた大きな辞書であり、その本質は Next Token Prediction (以下の理由) です。簡単に言うと、指定されたテキスト シーケンスの後に最後に考えられる単語またはフレーズを予測することです。たとえば、私が「昨日はよく眠れました」と言うと、話し終わる前に、私が高い確率で「昨日はよく眠れましたか?」と言い続けます。わかりました」 このプロセスは次のような推論です。
このようにして学習されるのは、単語間の表面的な統計的関係だけではないことは明らかだと言えるでしょうか。知性はどのようにして生まれたのでしょうか?
遠く離れたケンタウリ銀河から地球にデータを送信する必要があるとしますが、帯域幅は非常に貴重です。データを送信するには最小限の帯域幅を使用し、相手側が損失なくデータを回復できるようにする必要があります。この方法を使用できます。
まず、実行するたびに同じニューラル ネットワーク モデルを生成する言語モデルのトレーニング コードを準備します。
次に、N 個のデータに対してトレーニング プログラムを実行し、時刻 t で、すべてのトークンの確率分布 Pt の下で Xt の確率を取り出し、算術符号化を使用してそれを 2 進数の 10 進数に変換し、Zt として記録します。類推により、Z1、Z2、Z3、…、Zn からなるリストが得られます。
これら N 個のデータを相手側でロスレスで復元したい場合は、Z1 ~ Zn のリストと言語モデルのトレーニング コードの 2 つのコンテンツを転送するだけで済みます。
受信側でデコードするときに、受信したトレーニング コードを使用してネットワークを初期化します。タイムスタンプ t で、モデルは Pt を使用して Zt を算術デコードし、Xt を取得します。時刻 t におけるトークンの確率分布 Pt は、送信側と受信側で完全に一致していることに注意してください。
全体のプロセスは可逆データ圧縮プロセスであり、言語モデルのトレーニング コードに基づいて、N 個のデータを Z1 ~ Zn の一連の数値に圧縮し、各圧縮データのサイズは -logp(x) になります。プロセス全体を通じて、ニューラル ネットワーク全体 (数千億または数千億のパラメーター) を送信する必要がないことに注意することが重要です。
したがって、言語モデルを使用してデータセット D を圧縮するために使用されるビットの総数は、次の式で表すことができます。
トランスフォーマーベースのモデルの記述長は、約 100kb ~ 1MB (必要なすべてのコード サイズ) です。モデルのパラメータは、モデルの記述長の一部ではありません。
chatgpt は事実に関する質問で間違いが多いとよく感じますが、たとえば、Liu Cixin の出身都市を尋ねると、モデルは依然として間違った答えを返します。これは、トレーニング プロセス中に、モデルがいくつかのトレーニング データをゆっくりと記憶するためです。モデルのパラメーターは、トレーニング データの非可逆データ圧縮とほぼみなすことができます。これは、Ted Jiang が「ChatGPT はすべてのテキストです」で述べたことでもあります。インターネット。「ぼやけた画像」を意味します。 LLM は元のデータセットの可逆圧縮であり、非常に特殊で数学的に厳密に証明できます。テッド・チャンが言及した非可逆圧縮は、非常に抽象的な文学的な例えです。
この写真をまだ覚えていますか? 私たちが重視しているのは、黄色の円の内側の内容ではなく、外側の灰色の部分です。これは、より少ない内容を使用してより多くの知識を得る方法、つまり一般化能力を重視しているためです。一般化はヒープパラメータと比較するとインテリジェンスです。