[翻訳] MoA(Mixture-of-Agents、エージェント混合手法)、LLMの性能を向上させる新しい手法
(discuss.pytorch.kr)PyTorchKR
MoE(Mixture-of-Experts)やMoD(Mixture-of-Depths)に続き、LLMの性能を向上させる新しい手法が提案されたので紹介します。エージェント混合(MoA, Mixture-of-Agents)という名のこの手法は、複数のLLMの強みを集めて集合的な専門知識を活用し、性能を大きく向上できる手法とのことです。いっしょに見ていきましょう。 :smiley:
専門家混合(MoE, Mixture-of-Experts)手法の簡単な紹介
専門家混合と呼ばれるMoE(Mixture-of-Experts)手法は、学習時点で複数の専門家モデルを含むように学習することで、モデルのサイズは大きい一方、実行(推論, Inference)時点ではユーザーの質問(Query)に適切に答えられる一部の専門家だけを活性化する方式でモデルの性能を向上させる手法です。 #mixture-of-experts
深さ混合(MoD, Mixture-of-Depths)手法の簡単な紹介
最近では、深さ混合手法と呼べるMoD(Mixture-of-Depths)手法についても研究・公開が行われており、これは活性化されるレイヤーを減らすことで深さ(depth)を削減する手法です。 #mixture-of-depths
MoA(Mixture-of-Agents、エージェント混合手法)、LLMの性能を向上させる新しい手法
エージェント混合(MoA, Mixture-of-Agents)手法の論文紹介
最近、さまざまな大規模言語モデル(LLM)がリリース・公開されており、それぞれのLLMは1つまたは複数の分野で印象的な性能を示しています。しかし、こうしたLLMはモデルのサイズ、学習データ、計算インフラなどに比例した性能を示すため、これらのモデルをさらに拡張することは非常に高コストになります。
この論文(Mixture-of-Agents Enhances Large Language Model Capabilities)は、複数のLLMの強みを活用して推論および言語生成能力を向上できるエージェント混合(Mixture-of-Agent)フレームワークを提案しています。このエージェント混合手法は、モデルが他のモデルの回答を活用したとき、たとえその回答の品質が低くても(活用しない場合より)より高品質な回答を生成するという、LLM間の協調性(Collaborativeness)に基づいています。
このMoA手法により、複数のLLMが持つ固有の強みを生かし、それらの専門知識を組み合わせて最終的により良い性能を出せるようにします。その結果、AlapacaEval 2.0、MT-Benchmark、FLASKなど複数のベンチマークで優れた性能を示し、特にGPT-4o(GPT-4 Omni)を上回る性能を見せました。
何よりも、MoA手法の大きな利点は、既存のLLM自体を変更せず、LLMの入力プロンプトと一部の設定(temperatureをはじめとするsampling options)だけを変更して使えることです。つまり、別途のファインチューニング(fine-tuning)のような工程は不要で、使用するエージェントLLMの規模や構造に関係なく最新のLLMをすぐ適用できる柔軟性と拡張性を提供します。
エージェント混合(MoA, Mixture-of-Agents)手法の紹介
Mixture-of-Agents(MoA)方法論は、複数のLLMの集合的な専門知識を階層構造を通じて活用することを目指します。各階層は複数のLLMエージェントで構成され、前の階層の出力を基に応答を生成して、最終出力を段階的に改善します。
MoA手法の中核となるアイデアは、大規模言語モデル(LLM)が他のモデルの回答を参考にすると、より高品質な応答を生成できるという点にあります。つまり、複数のLLMの回答を互いに参照できるようにして協調性(collaborativeness)を持たせることで、最終回答の性能を高めるのです。こうすることで、中間成果物の品質が低くても最終回答の品質を大きく向上させることができます。
エージェント混合手法の主な特徴は次のように整理できます:
-
階層構造: MoAフレームワークは、複数のLLMエージェントで構成された多層構造を使います。各エージェントは前の階層の応答を改善し、最終出力を段階的に高めます。
-
モデル多様性: フレームワークは各階層で多様なLLMを使うことを重視します。多様なモデルを組み合わせることで、より豊かで細やかな応答を生成できます。
-
反復的改善: 反復的なプロセスにより、生成されたテキストを継続的に改善でき、複数モデルの協調的な合成を通じて最良の結果を導き出します。
大規模言語モデルの協調性(Collaborativeness)
大規模言語モデル(LLM, Large Language Models)の協調性(collaborativeness)とは、さまざまなLLMが互いの出力を参照すると、より良い応答を生成できる能力を意味します。多くの研究によれば、ある言語モデルが別のモデルの出力を補助情報として活用すると、応答の品質が向上します。これは、各モデルが異なる強みを持っているため可能になります。
たとえば、あるモデルは複雑な命令によく従いますが、別のモデルはコード生成でより優れた性能を示すことがあります。このような多様性により、協調的な環境では各モデルが他モデルの弱点を補完できます。この協調性を実験的に立証するため、複数のベンチマークテストが使用されており、特にAlpacaEval 2.0ベンチマークでは、複数のモデルが互いの出力を参照すると性能が大きく向上することが確認されました。
これにより、LLMが独立に生成した回答を与えられたとき、全体的な性能が顕著に向上することが観察されます。このような結果は、LLMが本質的に協調的であるという現象を示しています。さらに、品質の低い出力であっても、他モデルの出力から情報を得ることでより良い応答を生成できることを示唆しています。
この論文では、エージェント混合手法(MoA)で使われるLLMの役割を 提案者(Proposer) と 集約者(Aggregator) の2つに分けて説明しています:
-
提案者(Proposer)LLM: 他のモデルが利用できる有用な参照応答を生成するのに優れたLLMです。優れた提案者は、それ自体では必ずしも高得点の応答を生成するとは限りませんが、より多くの文脈と多様な観点を提供し、最終的には 集約者(Aggregator) と一緒に使われたとき、より良い最終応答に貢献できます。
-
集約者(Aggregator)LLM: 他のモデルの応答を1つの高品質な出力に合成することに長けたモデルです。効果的な集約者は、集約者LLMが単独で生成できる回答より低品質な入力が 提案者(Proposer) から入ってきた場合でも、最終回答の品質を維持または向上できなければなりません。
エージェント混合手法の構造(Architecture of MoA, Mixture-of-Agents)
MoAフレームワークは上の図のように複数の階層(Layer, $l$)で構成され、各階層(Layer-$i$)には複数($n$)のLLMが含まれます。図では、$i$ 番目の階層における各LLMは $A_{i,1}$, $A_{i,2}$, ...$A_{i,n}$ と表されています。この構造では、各階層のエージェントは前の階層のすべての出力を補助情報として使って応答を生成します。このとき注意すべき点は、各LLMが同じ階層(layer)でも異なる階層(layer)でも再利用できることです。
最初に、第1階層のLLMが与えられたプロンプトに対する応答を独立して生成します。その後、この応答は次の階層のエージェントに渡され、より洗練された応答を生成します。このプロセスは、最終的により精密で総合的な応答が生成されるまで繰り返されます。この過程は複数回繰り返され、最終的により強力で包括的な応答を得られます。これにより、個別モデルの限界を克服し、より多様な情報と観点を統合した高品質な応答を生成でき、特に複雑な問題解決で非常に有用です。
このエージェント混合手法の構造におけるもう1つの重要な要素はモデル選択です。各階層に含めるモデルを、性能と多様性に基づいて慎重に選ぶことが重要です。性能指標とモデルの多様性を考慮して最適なエージェント構成を決定します。
使用するエージェント(LLM)の選択基準
エージェント混合手法では、特定のタスクをどれだけうまく実行できるかを示す性能指標に加え、どれだけ多様な回答を生成できるかを示す多様性も用いてモデルを選択しています:
-
性能指標(Performance Metrics): 各モデルが特定のタスクでどれほどうまく機能するかを示し、これにより高品質な出力を生成できるモデルを選びます。多様性とは、モデルが異なる方法で問題にアプローチし解決できる能力を意味します。たとえば、あるモデルは自然言語処理で優れた性能を示しても、別のモデルはコード生成や数学問題の解決でより高い性能を示すことがあります。こうした多様な能力を持つモデルを混合することで、マルチエージェント構造はより総合的で強力な応答を生成できます。
-
多様性に関する考慮(Diversity Considerations): モデルの多様性は、単一モデルが持つバイアスを減らし、より広い範囲の問題を解決できるようにします。たとえば、同じモデルを複数階層で繰り返し使うと、そのモデルの限界により応答品質が低下することがあります。したがって、多様なモデルを使うことが重要です。性能指標と多様性を考慮して各階層に適したモデルを選ぶことで、最終応答の品質を最大化できます。
単一提案者(Single-Proposer)構造と複数提案者(Multi-Proposer)構造
高いレベルの抽象的な観点(High-level perspective)から見ると、エージェント混合手法(MoA)は専門家混合手法(MoE)をモデルレベルへ引き上げたものと見ることができます。このMoA手法は、LLMの内部活性化や重みを修正せず、完全にプロンプトインターフェースを通じてのみ動作します。つまり、MoEのように単一モデル内に特化したサブネットワークを置くのではなく、複数階層にわたって複数(または1つ)のLLMを使用します。
-
単一提案者(Single-Proposer)構造: エージェント混合手法(MoA)は基本的に複数のエージェント(LLM)を使うことを前提としていますが、同一のLLMを複数回使うこともできます。この場合、同じモデルに入力を与える際にtemperature設定をはじめとするさまざまなサンプリング設定を変更し、複数の異なる出力を生成させます。この単一提案者構造では、各階層(layer)で1つまたは少数のモデルだけが活性化されますが、これらのモデルが生成する多様な応答は、集約者(Aggregator)が最終応答を生成するうえで重要な役割を果たします。
-
複数提案者(Multi-Proposer)構造: 各階層で多様なモデルを使って、それぞれ異なる出力を生成します。これはモデル間の相互作用と協調性を最大化し、より包括的で高品質な応答を生成できるようにします。複数提案者構造は、モデルの多様性を最大限に活用して問題解決の幅を広げ、単一モデルが持つ限界を克服できます。この設定により、マルチエージェント構造はより強力で総合的なソリューションを提供できます。
ここで提案者(Proposers)と集約者(Aggregators)は、相互補完的な役割を果たします。提案者は多様なアプローチを通じて初期応答を生成し、集約者はこれらの応答を統合して最終応答の品質を保証します。このような協力的な構造により、マルチエージェントシステムは単一モデルよりもさらに強力で総合的な応答を提供できます。
MoA手法の性能とコスト効率
MoA手法の性能
上の表でMoAとMoA-Liteは、6つの提案者(proposer)を持ち、それぞれ3層(Layer)と2層(Layer)で構成されたモデルです。MoA w/ GPT-4oは、MoAの最終集約者(aggregator)としてGPT-4oを使用したモデルです。上のベンチマークでは、各3回実行した後、標準偏差と平均スコアを併せて公開しています。
MoA手法を使ったモデルは、AlpacaEval 2.0で65.1%のスコアを記録し、GPT-4oの57.5%を上回りました。また、MT-BenchmarkでもGPT-4oより良い性能を示しました。
上の図のように、MoA手法は単一のLLMを使った場合より性能に優れています。これは、集約者(aggregator)が単に提案者(proposer)LLMが生成した応答の1つを選ぶのではなく、提案された回答を総合的に参照して応答を生成するためと考えられます。
上の図の右側では、BLEUのような類似度スコアを使って集約者(aggregator)の応答と提案者(proposer)の応答を比較しています。各サンプルで、提案者の応答 $n$ 個を基にGPT-4ベースの評価者が決定した $n$ 個の選好スコアと $n$ 個の類似度スコアとの順位相関係数を計算したものです。つまり、勝率とBLEUスコアの間に正の相関があることを確認できます。
そのほか、各階層で適切な提案者数を探るため、提案者の数(上の左表の $n$)を変えながら最終品質への影響を分析しました。$n$ の増加に伴って最終品質が向上しており、これは多様なモデルが多様な回答を出力するため、集約者が利用できる情報が増えるからだと分析できます。(ここで単一提案者(Single-Proposer)構造は、単一のLLMをtemperature 0.7に固定して使用した結果です。)
また、提案者と集約者の役割のうち、どちらか一方に特に優れたモデルがあるかを確認する実験も行われました。(上の右表)GPT-4o、Qwen、LLaMA-3モデルは提案者・集約者のどちらに使っても良好な性能を示し、WizardLMをはじめとする一部モデルは、集約者より提案者として良い性能を示すことが確認されました。
MoA手法のトークンおよびコスト効率
予算およびトークン分析を含め、MoAが他の最先端モデルと比べて高い性能を低コストで提供できることが示されています。これは、このアプローチが効果的であるだけでなく費用対効果にも優れていることを意味し、過度なコストなしにLLM機能を拡張する実用的なソリューションを提供します。
上の図の左側(a)では、AplacaEval 2.0ベンチマークの各インスタンスに対する平均推論コストとLC勝率を示しています。各APIプロバイダーのコストを基に計算しており、これはMoA手法が高い性能を達成しつつ過度なコストを発生させない、費用対効果の高い方法であることを示しています。特に、MoA-LiteはGPT-4 Turboより約4%優れていながら、コスト効率は2倍以上である点が注目に値します。
上の図の右側(b)では、LC勝率とテラフロップ数の関係を示しています。ここではテラフロップ数を、レイテンシ(latency)を表しうる値の代わりとして使っています。ここでもコスト効率分析と同様にパレートフロンティア(Pareto frontier)が観察されます。つまり、計算資源を効率的に使いながらLC勝率を最大化していることを示しています。
そのほか協調性と多様性についての考察
この論文で行われたさまざまな実験の結果、LLMは他のモデルの出力を参照するとより良い応答を生成することが確認されました。この協調性は、MoA手法によって性能が向上する中核要素です。また、各階層で多様なLLMを使うことが、単一モデルに依存するよりも一貫して良い結果をもたらすことも実証されました。つまり、モデルの多様性によって生まれる回答の多様性が、全体的な性能向上に効果的であることが確認できます。
結論
ここまで見てきたように、エージェント混合手法(MoA, Mixture-of-Agents)は、複数のLLMの集合的な強みを活用するうえで重要な前進を示しています。階層的かつ協調的なアプローチを通じて、MoAはさまざまなベンチマークで卓越した性能を発揮し、モデル多様性と反復的な洗練の価値を証明しています。このアプローチを活用することで、より強力で効率的なLLMシステムに向けた新たな試みが可能になると期待されます。
MoA手法の論文
https://arxiv.org/abs/2406.04692
MoA手法のリポジトリ
https://github.com/togethercomputer/moa
OpenPipeがMoA手法を活用し、25分の1の価格でGPT-4の性能を上回るモデルを提供
https://discuss.pytorch.kr/t/openpipe-moa-25-gpt-4/4668
<br /><br />
この記事はGPTモデルで整理した内容をもとにしたものであり、原文の内容や意図とは異なる形でまとめられている可能性があります。関心のある内容であれば、原文もあわせて参照してください。お読みいただく中で不自然または誤った内容を見つけた場合は、コメントでお知らせいただければ幸いです。 🤗
⚠️広告⚠️: :pytorch:PyTorch 韓国ユーザーコミュニティ🇰🇷がまとめたこの記事は役に立ちましたか? 会員登録すると主要な記事をメール💌でお届けします!(基本はWeeklyですが、Dailyへの変更も可能です。)
まだコメントはありません。