マイクロソフトの新技術:合成データがLLMの数学能力を大幅に向上

マイクロソフトがAgentInstruct技術を発表し、合成データを活用してAIモデルのパフォーマンスを向上させています。

「合成データ」がインテリジェントエージェントと出会うとき

過去1年間、私たちはインテリジェントエージェントの台頭を目撃しました。インテリジェントエージェントは高品質なデータを生成し、反省と反復を通じて、その能力は基盤となる大規模言語モデルを上回るようになりました。

このプロセスで、エージェントは解決策を振り返り、自己批評し、解決策を改善することができます。さらに、検索API、計算機、コードインタープリターなどのツールを活用して、大規模モデルの能力を拡張することもできます。

さらに、マルチエージェントはより多くの利点をもたらします。例えば、シナリオをシミュレーションし、同時に新しいプロンプトと応答を生成できます。また、データ生成ワークフローを自動化し、特定のタスクにおける人間の介入の必要性を減少または排除することができます。

論文では、著者が「生成的教育」の概念を提案しています。これは、合成データを使用して事後トレーニングを行うこと、特に強力なモデルを使用してデータを作成し、別のモデルに新しいスキルや行動を教えることを指します。

AgentInstructは生成的教育のためのエージェントソリューションです。

要するに、AgentInstructは以下を作成できます:

  • 高品質データ:GPT-4のような強力なモデルを使用し、検索やコードインタープリターなどのツールと組み合わせます。
  • 多様なデータ:AgentInstructはプロンプトと応答を同時に生成します。強力なLLM、ツール、反省プロセスを備えたマルチエージェントと、100以上のサブカテゴリを含む分類法を使用して、多様で高品質なプロンプトと応答を作成します。
  • 大量のデータ:AgentInstructは自律的に実行でき、検証とデータフィルタリングのプロセスを適用できます。シードプロンプトを必要とせず、代わりに生の文書をシードとして使用します。

生成的教育:AgentInstruct

どのように大量のデータを作成するのか?生成されたデータの多様性をどのように保証するのか?複雑または微妙なデータをどのように生成するのか?

これらの課題に対処するため、研究者は構造化されたアプローチを概説しました:

具体的に、AgentInstructは3つの異なる自動生成プロセスを定義しています:

コンテンツ変換プロセス:生のシードを中間表現に変換し、特定の目標に向けた指示の作成プロセスを簡素化します。

シード指示生成プロセス:複数のエージェントで構成され、コンテンツ変換プロセスで変換されたシードを入力として、多様な指示のセットを生成します。

指示改善プロセス:シード指示プロセスからの指示を入力として、その複雑さと品質を反復的に向上させます。

次に、研究者はこれらのプロセスを17の異なるスキルに対して実装し、各スキルには複数のサブカテゴリがあります。これらのスキルには、読解、質問応答、コーディング、検索拡張生成、創造的ライティング、ツール/API使用、ウェブ制御が含まれます。

実験結果

冒頭で述べたように、研究者は2580万の指示ペアを使用してMistral-7b-v0.1モデルを微調整し、Orca-3を得ました。

AgentInstructデータを使用してOrca-3を訓練した結果、パフォーマンスはどうだったのでしょうか?

AgentInstructの目標は、異なる難易度レベルのデータを含む大規模で多様なデータセットを合成することです。このデータセットでは、Orca-2.5、Mistral-Instruct-7b、ChatGPTなどのベースラインモデルのスコアは10点を大きく下回り、GPT-4(ベンチマークとして10点に設定)と比較して劣っていることを示しています。

平均して、各トレーニングラウンド後のOrca-3を含め、AgentInstructデータの導入により、Orca 2.5ベースラインと比較して33.94%、Mistral-Instruct-7Bと比較して14.92%のパフォーマンス向上が見られました。

複数のベンチマークSOTAを更新

例えば、AGIEvalで40%向上、MMLUで19%向上、GSM8Kで54%向上、BBHで38%向上、AlpacaEvalで45%向上しました。