Google は NLP モデルのデバッグを許可しており、必要なのは「ドラフト ペーパー」だけです。

Google は NLP モデルのデバッグを許可しており、必要なのは「ドラフト ペーパー」だけです。

[[438690]]

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載しています。転載の際は出典元にご連絡ください。

今日の大規模言語モデルはどれも非常に強力です。

しかし、その計算能力はあまり優れていません。

たとえば、GPT-3 では 3 桁を超える数字を加算できません。

たとえば、ほとんどの人はコードを書くことができますが、コードを理解するのは難しく、ループのあるプログラムに遭遇するとすぐに敗北してしまいます。

[[438691]]

しかし、MIT と Google の研究者は次のことを発見しました。

モデルの基盤となるアーキテクチャを変更する必要はありません。プログラマーがデバッグ時に行うように「ブレークポイント」を学習するようにトレーニングするだけで、コードを読む能力が急速に向上します。

同じ考え方を大きな数の加算や多項式の計算に適用すると、さらに簡単になります。

それで、言語モデルの数学的能力はついに追いついてきたのでしょうか? !

言語モデルに「ブレークポイント」方式を使用して加算を実行し、プログラムを読み取るように教える

上記の「ブレークポイント」は、実際には、モデルが多くの計算ステップを含むプログラム内の各ステップをテキストにエンコードし、 「メモ」または「スクラッチペーパー」と呼ばれる一時的なレジスタに記録できるようにすることを意味します。

「愚かな」方法のように聞こえますが、モデルの計算プロセスが明確かつ整理され、パフォーマンスは以前の直接計算方法よりもはるかに優れています。

具体的な操作も非常に簡単です。

たとえば、単純な加算計算では、「29+57」を計算する方法は次のようになります。

ここで、C はキャリーを表し、# はコメントを表します。

まず 9+7 を計算し、繰り上がり 1 をとり、次に 2+5+繰り上がり 1 を計算して、最終的に 86 を得ます。

上記のように、このトレーニング例は「入力」と「ターゲット」で構成されています。

両方ともトレーニング中にモデルに入力され、テスト中にモデルは「入力」に基づいて正しい「ターゲット」を予測できます。

「ターゲット」は一時バッファに送信されるコンテンツであり、そのコンテキストに注意して参照できます。実際の操作では、「ドラフト」コンテンツを確認して修正することもできます。

言語モデルの計算能力を大幅に向上

研究者らは、この実験のために、パラメータサイズが200万から1370億の範囲の、デコーダー構造のみを備えたTransformer言語モデルを選択しました。

原則として、エンコーダー/デコーダー モデルやリカレント ネットワークなど、あらゆるシーケンス モデルでこのアプローチを使用できます。

まず、研究者たちは、この「ブレークポイント」方式で 1 ​​~ 8 桁の整数を加算するように言語モデルをトレーニングしました。

トレーニングは 10 万個の例で構成され、バッチ サイズ 32 で 5000 ステップの微調整が実行されます。

次に、10,000 個のデータを使用してトレーニング分布内の加算をテストし、1,000 個のデータを使用してトレーニング分布外、つまり 9 桁と 10 桁の数字の加算をテストします。

結果を直接操作の言語モデルと比較すると、次のことがわかりました。

臨界モデル サイズを超えても、「ブレーク ポイント」方式を使用するモデルは追加操作を実行できますが、直接操作を使用するベースライン モデルではこれを行うことができません。

分布外タスクでは、直接計算のベースライン モデルは完全に失敗しました。「練習していないと実行できません」が、ブレークポイント メソッドを使用するモデルでは、スケールが大きくなるにつれて 9 ~ 10 桁の加算を維持できます。

はい、大きな数の加算が完了しました。

次に、多項式に移りましょう。

彼らは、10,000 個の多項式のトレーニング データセットと 2,000 個のテスト セットを生成しました。

項目数は通常 3 を超えず、係数の範囲は -10 から +10 の間、結果は -1000 から +10000 の間になります。

多項式のトレーニングの例は次のとおりです。

結果は、微調整後でも少数サンプルのトレーニング後でも、「ブレークポイント」方式のパフォーマンスが直接予測よりも優れていることを示しています。

最後のステップは、 Python コードを読むことです。

コードトレーニング例では、実行中のコード行とその時点での各変数の値がJSON形式で記録されます。

以前の言語モデルはコードの読み取りパフォーマンスが悪かった。 「ブレークポイント」方式により、通常の状態を変更できるでしょうか?

まず、200 個のプログラム (すべて手動で記述されており、単純な while ループや if ステートメントも含まれています) をテストした結果、「ブレークポイント方式」の方が全体的な実行精度が高いことがわかりました。

微調整により、直接実行されたモデルと比較して、モデルのパフォーマンスが 26.5% から 41.5% 向上することもあります。

実際の例:

「ブレークポイント」メソッドは 3 つの while ループを実行し、最終的に正しい変数値を返します。

次に、1,000 個のプログラムを含む MBPP データセットをトレーニングとテストに使用しました。

これらのプログラムには、整数、文字列、浮動小数点数などの複数のデータ型の計算と、ループ、API 呼び出し、再帰などのプロセス構造が含まれます。

そして、テスト用にトレーニング データの外側に「単一行」アセンブリと CodeNet アセンブリを追加します。

このモデルは拡張性も優れていることがわかりました。

もちろん、このアプローチにも制限があります。

たとえば、複雑な計算では非常に長い一時メモリが必要になる場合があり、Transformer 生成ウィンドウのサイズをさらに改善する必要がある可能性があります。幸いなことに、これは NLP の分野でも活発に研究されている分野です。

将来的には、強化学習を使用して、教師なし方式で言語モデルに「ブレークポイント」を教えようとするかもしれません。

つまり、言語モデルの計算能力とコード読み取り能力はますます強力になります。

論文の宛先:

https://arxiv.org/abs/2112.00114

<<:  Nvidiaは写真編集ソフトウェアGANを

>>:  C# の敏感な単語フィルタリング アルゴリズムの実装

ブログ    

推薦する

...

暗唱することは理解を意味するわけではない。ビッグモデルの背後にある知識の蓄積と抽出の詳細な分析

モデルのサイズが大きくなるにつれて、大規模なモデルが大量の知識を習得できる方法を模索し始めます。一つ...

...

人工知能: ビジネスの未来はすでに始まっている

ほとんどの場合、テクノロジーがビジネスに与える影響は徐々に増加しますが、時折、ビジネスの世界観全体を...

マスク氏はAIデーでテスラに関する難しい技術的質問に答える予定

北京時間8月19日朝のニュースによると、2019年4月にテスラが「自動運転の日」イベントを開催したと...

AIを使って人間の子どもを「飼い慣らす」: ハードコアな子育ての楽しさを発見した父親

技術オタクの父親たちは、Netflix のエピソードを数本静かに観るために何をするのでしょうか? [...

...

マイクロソフトとIDCの最新レポート:AIへの1ドル投資で3.5ドルの利益が生まれる

Microsoft と IDC は共同で、企業における AI の応用と商業的価値を詳細に調査した調査...

AIを活用して、ナスダックは金融業界向けのSaaSプロバイダーに変革したいと考えている

ナスダックがAIGCに対して強気であることは疑いの余地がない。 Nasdaq の CIO 兼 CTO...

...

完全武装したこの「アイアンマン」は、走ったり、人命を救ったり、さらには飛行可能な初のヒューマノイドロボットになるかもしれません。

ビッグデータダイジェスト制作著者: カレブトンガ火山の噴火により、洪水や地震などの自然災害に見舞われ...

AI人工知能は弱い:あなたを瞬時に複製できる仮想人間が登場

今、テクノロジー界で最もホットな話題はAI(人工知能)です。将来、世界はこれらの人工知能に支配される...

アルパカファミリーモデルが集合的に進化! Tian Yuandong のチームが作成した、GPT-4 と同等の 32k コンテキスト

オープンソースのアルパカ モデル LLaMA コンテキストは、1 つの簡単な変更だけで GPT-4 ...

マイクロソフト、物議を醸す顔認識機能を廃止へ

マイクロソフトは、動画や写真から対象者の感情を識別できると主張するツールを含む、人工知能による顔分析...