LLM ウィザード、コードの事前トレーニングは魔法の杖です! UIUC中国チームがコードデータの3つの利点を明らかに

LLM ウィザード、コードの事前トレーニングは魔法の杖です! UIUC中国チームがコードデータの3つの利点を明らかに

大規模モデルの時代における言語モデル (LLM) は、サイズが大きくなるだけでなく、トレーニング データにも自然言語と形式言語 (コード) の両方が含まれます。

コードは、人間とコンピューターの間の媒体として、高レベルの目標を実行可能な中間ステップに変換することができ、標準構文、論理的一貫性、抽象化、モジュール性などの特性を備えています。

最近、イリノイ大学アーバナ・シャンペーン校の研究チームが、LLM トレーニング データにコードを統合することのさまざまな利点を概説したレビュー論文を発表しました。

論文リンク: https://arxiv.org/abs/2401.00812v1

具体的には、LLM のコード生成機能の向上に加えて、次の 3 つの利点があります。

1. LLM の推論機能を解放し、より複雑な自然言語タスクに適用できるようにします。

2. LLM を誘導して構造化された正確な中間ステップを生成し、関数呼び出しを通じて外部の実行終了に接続できるようにします。

3. コードのコンパイルおよび実行環境を使用すると、モデルをさらに改善するためのより多様なフィードバック信号を提供できます。

さらに研究者らは、LLM が指示を理解し、目標を分解し、行動を計画して実行し、フィードバックから抽出する能力が、インテリジェント エージェント (IA) として機能する際に下流のタスクで重要な役割を果たす方法を追跡しました。

最後に、この論文では、「コードによる LLM の強化」の分野における主要な課題と将来の研究方向も提案しています。

コードの事前トレーニングによりLLMのパフォーマンスが向上

OpenAI の GPT Codex を例にとると、LLM のコード事前トレーニング後、LLM のタスク範囲を拡大できます。このモデルは、自然言語処理に加えて、数学理論のコード生成、一般的なプログラミングタスクの実行、データ検索なども実行できます。

コード生成タスクには、1) コード シーケンスを効率的に実行する必要があるため、一貫したロジックを持つ必要がある、2) 各中間ステップを段階的に検証できる、という 2 つの特性があります。

事前トレーニングでコードのこれら 2 つの特性を活用して埋め込むと、従来の自然言語の下流タスクにおける LLM Chain of Thought (CoT) テクノロジのパフォーマンスが向上し、コード トレーニングによって LLM の複雑な推論を実行する能力が向上することが示されます。

Code LLM は、構造化された形式のコードから暗黙的に学習することで、マークアップ、HTML、図の理解に関連する常識的な構造推論タスクでも優れたパフォーマンスを発揮します。

サポート機能終了

最近の研究結果によると、LLM を他の機能端末に接続すると (つまり、LLM を外部ツールや実行モジュールで拡張すると)、LLM はより正確かつ確実にタスクを実行できるようになります。

これらの機能的目的により、LLM は外部の知識を獲得し、マルチモーダル データを活用し、環境と効果的にやり取りできるようになります。

関連する研究から、研究者は、LLM がプログラミング言語を生成したり、定義済みの関数を利用して他の機能端末との接続を確立したりする、つまり「コード中心」のパラダイムという一般的な傾向を観察しました。

LLM 推論メカニズムにおける厳密にハードコードされたツール呼び出しの固定された実践とは対照的に、コード中心のパラダイムにより、LLM はトークンを動的に生成し、適応可能なパラメータを使用して実行モジュールを呼び出すことができます。これにより、LLM が他の機能端末と対話するためのシンプルで明確な方法が提供され、アプリケーションの柔軟性とスケーラビリティが向上します。

重要なのは、このパラダイムにより、LLM がさまざまなモダリティやドメインにわたる多数の機能端末と対話できるようになることです。アクセス可能な機能端末の数と種類を増やすことで、LLM はより複雑なタスクを処理できるようになります。

この論文では、LLM に関連するテキストおよびマルチモーダル ツール、およびロボット工学や自動運転などの物理世界の機能的側面に焦点を当て、さまざまなモダリティとドメインにわたる問題を解決する LLM の汎用性を示します。

自動フィードバックを提供する実行環境

LLM は、特に非静的な現実世界のアプリケーションにおいて、フィードバック信号を組み込むモデルの能力により、トレーニング パラメータを超えるパフォーマンスを発揮します。

ただし、ノイズの多いキューは下流のタスクでの LLM のパフォーマンスを妨げる可能性があるため、フィードバック信号は慎重に選択する必要があります。

さらに、人的労力はコストがかかるため、忠実さを保ちながら自動的にフィードバックを収集することが重要です。

LLM をコード実行環境に組み込むことで、上記の条件の自動フィードバックを実現できます。

コード実行はほぼ決定論的であるため、LLM がコード実行の結果から取得するフィードバックはターゲット タスクに忠実なままです。また、コード インタープリターは LLM が内部フィードバックを照会するための自動パスも提供し、手動で注釈を付けることなく、LLM によって生成されたエラーのあるコードのデバッグと最適化を可能にします。

さらに、コード環境により、LLM はバイナリ正確性フィードバック、結果の自然言語による説明、報酬値のランキングなど、さまざまな外部フィードバック形式を組み込むことができるため、パフォーマンスを向上させるための高度にカスタマイズ可能なアプローチが可能になります。

現在の課題

コードの事前トレーニングとLLM推論による因果関係の強化

コードデータの特定の特性が LLM の推論能力に寄与する可能性があることは直感的にわかりますが、推論スキルの向上に対する影響の正確な範囲は不明です。

次の研究では、トレーニング データで強化されたこれらのコード特性が、実際にトレーニングされた LLM の推論能力を強化できるかどうかを調査することが重要になります。

実際、コードの特定の特性に関する事前トレーニングによって LLM の推論能力が直接的に向上するのであれば、この現象を理解することが、現在のモデルの複雑な推論能力をさらに向上させる鍵となるでしょう。

コードを超えた推論機能

コードの事前トレーニングを通じて推論機能が強化されたにもかかわらず、基礎となるモデルには、真の汎用 AI に期待される人間のような推論機能がまだ欠けています。

コードに加えて、他の多数のテキスト データ ソースも LLM 推論機能を強化する可能性があります。コードの固有の特性 (あいまいさの欠如、実行可能性、論理的な連続構造など) は、これらのデータセットを収集または作成するための指針となります。

しかし、言語モデリングの目的で大規模なコーパスで言語モデルをトレーニングするというパラダイムに固執し続けると、形式言語よりも抽象的で、高度に構造化され、記号言語と密接に関連し、デジタルネットワーク環境に豊富に存在する、順次読み取り可能な言語を想像することは困難です。

研究者たちは、代替データ モダリティ、多様なトレーニング目標、新しいアーキテクチャを探索することで、モデルの推論機能をさらに強化する機会が増えると考えています。

コード中心のパラダイムを適用する際の課題

LLM では、コードを使用してさまざまな関数端末に接続する場合の主な課題は、適切な関数端末を選択し、適切な場合に適切なパラメータを渡すなど、さまざまな関数を呼び出す正しい方法を学習することです。

たとえば、単純なタスク (Web ページ ナビゲーション) の場合、マウスの移動、クリック、ページのスクロールなどのアクション プリミティブの限られたセットと、いくつかの例 (few-shot) が与えられたときに、強力な基本 LLM では、LLM がこれらのプリミティブの使用を正確に習得することが求められることがよくあります。

化学、生物学、天文学などのデータ集約型ドメインにおけるより複雑なタスクでは、さまざまな機能を持つ多くの複雑な関数を含むドメイン固有の Python ライブラリの呼び出しが伴いますが、これらの関数を正しく呼び出すための LLM の学習能力を強化することは、LLM がきめ細かいドメインで専門家レベルのタスクを実行できるようにする将来的な方向性です。

複数回のやり取りとフィードバックから学ぶ

LLM は通常、ユーザーや環境と複数回対話し、継続的に自己修正して複雑なタスクの完了を改善する必要があります。

コード実行により信頼性が高くカスタマイズ可能なフィードバックが提供されますが、このフィードバックを最大限に活用する完璧な方法はまだ確立されていません。

現在の選択ベースの方法は有用ではあるものの、パフォーマンスの向上を保証するものではなく、非効率的です。再帰ベースの方法は LLM のコンテキスト学習機能に大きく依存しているため、適用範囲が制限される可能性があります。また、微調整方法は、継続的に改善しますが、収集と微調整に多くのリソースを必要とするため、実際に使用するのは困難です。

研究者たちは、強化学習はフィードバックを活用して改善するためのより効果的な方法であり、慎重に設計された報酬関数を通じてフィードバックに適応する動的な方法を提供し、現在の技術の限界に対処できる可能性があると考えています。

しかし、報酬関数をどのように設計するか、また強化学習と LLM を最適に統合して複雑なタスクを達成する方法を理解するには、まだ多くの研究が必要です。

<<:  Google が名誉挽回を果たし、新しいバードが GPT-4 を打ち負かし、LLM ランキングで 2 位にランクインしました。ジェフ・ディーンは「我々は戻ってきた」と叫ぶ

>>: 

ブログ    

推薦する

...

Weibo ディープラーニング プラットフォームのアーキテクチャと実践

人工ニューラル ネットワーク アルゴリズムの成熟と GPU コンピューティング能力の向上により、ディ...

オフサイトのコンピューティング能力の使用率が 55% 向上し、オープンソースになりました。 「東洋のデータと西洋のコンピューティング」のAIインフラへの対応

AIの波の中で、企業や国を問わず、コンピューティング能力に対する需要は日々高まっています。最近立ち上...

...

...

...

ロボットを活用する3つの革新的な方法

ロボットは、高齢の両親を助けたり、子供を教育したり、料理をしたりすることができます。ロボット産業は創...

グラフニューラルネットワークに基づくOPPOの検索推奨アルゴリズムと実践

1. グラフニューラルネットワーク入門グラフ ニューラル ネットワークについて説明する前に、まずグラ...

...

...

機械学習におけるパラメトリック手法とノンパラメトリック手法

導入前回の記事では、統計学習における予測と推論の違いを紹介しました。これら 2 つの方法の主な違いは...

鍵となるのは人工知能コンピューティングセンターを構築し、それを活用することだ

デジタル経済の発展に伴い、全国の各省市がコンピューティングインフラの構築を競って推進し、人工知能コン...

RPA 導入によって企業が得る 10 のメリット

[[358363]] RPA(ロボティック・プロセス・オートメーション)は、企業の業務効率と生産性を...