ラージ言語モデル (LLM) の機能を最大限に発揮するには、効果的なプロンプト設計が不可欠であり、そのためプロンプト エンジニアリングという新興分野も登場しています。
さまざまな即時設計ソリューションの中でも、Chain of Thinking (CoT) は、その強力な推論能力で多くの研究者やユーザーの注目を集めており、その改良された CoT-SC をベースに、さらに進化した Thinking Tree (ToT) も誕生しました。多くの注目を集めました。
最近、チューリッヒ工科大学、クレダール、ワルシャワ工科大学の研究チームは、さらなるアイデアであるマップ オブ マインド (GoT) を提案しました。チェーンからツリー、グラフに至るまで思考し、LLM の推論プロセスを構築する能力は継続的に向上しており、研究者も実験を通じてこれを証明しています。また、GoT フレームワークの独自の実装もリリースしました。
研究論文: https://arxiv.org/pdf/2308.09687v2.pdf
正式な実装: https://github.com/spcl /graph-of-thoughts
論文の概要
大規模言語モデルは、人工知能の世界において支配的なテクノロジーになりつつあります。近年急速に開発されたモデルは、主に GPT、PaLM、LLaMA などのデコーダ専用の Transformer バリアントに基づいています。
さまざまな LLM タスクを解決する場合、迅速なエンジニアリング設計はリソースを効率的に利用できる方法です。簡単に言えば、タスクの説明は LLM に送信される入力に含まれます。タスクが適切な形式で記述できる場合、LLM はテキストを生成するための自己回帰トークンベースのメカニズムを利用してタスクを解決できます。このようなプロンプトには、回答付きのサンプル タスクが含まれている場合 (少数ショット プロンプト設計、コンテキスト学習 (ICL) とも呼ばれます)、またはサンプル タスクがまったく含まれていない場合 (ゼロショット プロンプト設計)、近年の研究と応用によって示されています。つまり、このメカニズムは、数学、常識、または記号的推論を含むさまざまなタイプのタスクを解決するために使用できます。
思考連鎖 (CoT) は、プロンプトを設計するために使用される手法です。タスクの入力、プロンプト 出力と出力に加えて、推論の中間ステップ (中間思考) も含まれます 研究によると、CoT は LLM の能力を大幅に向上させ、モデルを更新せずにいくつかの困難な問題を解決できるようになります。
一部の研究者は、CoT を改善し、CoT を使用して自己一貫性を達成する方法 (CoT-SC) を提案しています。この解決策は、複数の CoT を生成し、最良の結果を選択することです。
最近, 一部の研究者はさらに、ツリーを通じて LLM 推論プロセスをモデル化する思考ツリー (ToT) を提案しています。これにより、モデルが異なる思考パスを使用できるようになり、悪い結果に基づいて推論プロセスをバックトラックするなどの新しい機能を提供できます。 ToT法は思考プロセスに厳密なツリー構造を課すため、プロンプトの推論能力が大きく制限されてしまいます 詳しくは、当サイトの記事「思考、思考、止まらず思考、Thinking Tree ToT」を参照してください。軍事訓練「LLM」 .
チューリッヒ工科大学、クレダール大学、ワルシャワ工科大学のこの研究チームは、LLM の考え方を任意のグラフ構造に構築できれば、迅速な機能を提供できると考えています。彼らは、このアイデアは、人間の推論方法、脳の構造、アルゴリズムの実行方法など、さまざまな現象からインスピレーションを得たと述べています。 ToT のように多くの異なる道を試す代わりに、たった 1 つの思考の連鎖に従うことで、より複雑な思考のネットワークが形成されます。たとえば、人は最初に 1 つの思考の連鎖を探索し、次に遡って別の思考の連鎖を探索すると、次のことに気づくかもしれません。前のチェーンからのアイデアを現在のチェーンと組み合わせて、相互に学習し、新しい解決策に到達することができます。同様に、脳は複雑なネットワークを形成し、循環パターンなどのグラフのようなパターンを示します。ネットワークは実行中にも明らかになり、多くの場合、有向非巡回グラフとして表現できます。プロンプトをデザインすることはできますが、この変換は CoT や ToT を通じて自然に表現することはできません。
彼らは次のことを観察しました。LLM の推論プロセスがグラフとしてモデル化されている場合、これらや他の多くの思考の変換を自然に達成することができます。この観察に基づいて、彼らは、ネットワーク形式の推論を通じて LLM の機能を強化できる方法である GoT/Graph of Thoughts を提案しました。
GoT では、LLM 思考は頂点としてモデル化され、頂点間の依存関係はエッジとしてモデル化されます。 GoT を使用すると、複数の入力エッジを持つ頂点を構築することで、任意のアイデアを集約できます。全体として、GoT で使用されるグラフ抽象化手法は、CoT と ToT をより複雑な思考モデルにシームレスに一般化でき、このプロセスではモデルを更新する必要がありません。
ただし、実際に GoT を実装するには、解決する必要のある設計上の課題がいくつかあります。たとえば、さまざまなタスクに最適なグラフ構造は何でしょうか?精度を最大化し、コストを最小限に抑えるための、収束的思考への最良のアプローチは何ですか?
これらの質問やその他の質問に答えるために、これらの研究者は GoT を実装するためのモジュール式アーキテクチャを設計しました。このデザインには 2 つの大きなハイライトがあります。
まず、各思考をきめ細かく制御できるようになります。これにより、ユーザーは LLM との会話や、進行中の推論から最も有望な 2 つの考えを組み合わせて新しい考えを取得するなど、高度な思考変換の使用を完全に制御できるようになります。
2 つ目は、このアーキテクチャがスケーラビリティを念頭に置いて設計されていることです。新しい思考の変換、推論モード (マインド マップなど)、LLM モデル向けにシームレスに拡張できます。これにより、ユーザーは GoT を使用して、GPT-3.5、GPT-4、Llama-2 などのさまざまなモデルを試しながら、新しい設計アイデアを迅速にプロトタイプ化し、プロンプトを出すことができます。
研究者らはまた、GoT のいくつかのユースケース (並べ替え、要約のキーワードカウント、セット操作、ドキュメントの結合) を実証し、グラフベースのパラダイムを使用してそれらを実装する方法についても詳しく説明しました。彼らは GoT を実験的に評価し、他の最先端の方法に比べて GoT が優れていることを実証しています。
研究者らは、全体として、GoT は自然に小さなサブタスクに分解でき、これらのサブタスクを個別に解決して最終的なソリューションに統合できるタスクに特に適していると述べています。この点で、GoT は他のソリューションよりも優れたパフォーマンスを発揮し、たとえば、並べ替えタスクでは、GoT は CoT および ToT よりそれぞれ約 70% および 62% 優れており、コストは ToT より 31% 以上低くなります。
表 1 は、GoT と他のプロンプト設計ソリューションの定性的な比較を示しています。 GoT は、プロンプト内でグラフベースの思考変換 (集計など) を実装できる唯一のソリューションであり、これまでのすべてのソリューションを網羅しています。
彼らは別の貢献も行っています。それは、プロンプト設計戦略を評価するために使用できる、新しい評価指標である思考量を提案することです。この指標を使用する目的は、プロンプト設計オプション間の違いをよりよく理解することである、と研究者らは述べています。
特定の思考 v について、v の容量は LLM 思考の数を指し、これに基づいてユーザーは有向エッジを使用して v を取得できます。直感的には、これらはすべて、v に貢献すると予想される LLM のアイデアです。
著者は、調査を通じて、集約などの思考変革テクノロジを統合することで、GoT が他のソリューションよりも思考能力を大幅に向上できることを示しました。
GoT フレームワーク
以下は、GoT フレームワークの詳細な紹介です。概略図を図 1 に示します。図 1 には、他のプロンプト設計戦略の概略図も示されています。
数学的形式では、GoT はタプル (G、T、E、R) としてモデル化できます。ここで、G は LLM 推論プロセス (つまり、すべての LLM 思考とそれらの関係)、T は可能な思考変換、E は思考スコアを取得するために使用される評価関数、R は最も関連性の高い思考を選択するために使用されるランキング関数です。
推論プロセス
ここで、推論プロセスは有向グラフ G = (V, E) としてモデル化されます。ここで、V は頂点のセット、E ⊆ V × V はエッジのセットです。 G は有向であるため、エッジは順序付けられた頂点ペア E ⊆ V × V のサブセットになります。頂点には、初期問題、中間問題、最終問題のいずれであっても、現在の問題に対する解決策が含まれています。この考え方の正確な形式はユースケースによって異なります。テキストの一部 (書き込みタスクの場合) または一連の値 (並べ替えタスクの場合) である場合があります。有向エッジ (t_1, t_2) は、t_1 を「直接入力」として使用することによって、つまり t_1 を使用して t_2 を生成するように LLM に明示的に指示することによって、思考 t_2 が構築される方法を表します。
一部の使用例では、グラフ ノードが異なるカテゴリに属します。たとえば、書き込みタスクでは、一部の頂点がテキスト セグメントの書き込み計画をモデル化し、他のノードが実際のテキスト セグメントをモデル化します。この場合、GoT は異種グラフ G = (V, E, c) を採用して LLM 推論をモデル化します。ここで、 c は頂点 V をそれぞれのクラス C にマップします (上記の場合、 C = {plan, par} )。このようにして、任意の頂点 v で推論のさまざまな側面をモデル化できます。
つまり、G は LLM 推論プロセスに関連付けられています。このプロセスを容易にするために、ユーザーは G で Thought Shift を使用できます。この種の変換の例: これまでの最高スコアの考えを新しい考えに融合します。別の例は、思考を強化するためにループすることです。これらの変換は、CoT、CoT-SC、または ToT で使用可能な変換のセットを厳密に拡張することに注意してください。
思考の変革
グラフベースのモデルを推論に使用することで、GoT は新たな思考の変革を実現できます。研究者らはこれをグラフ対応変換と呼んでいます。たとえば、執筆タスクでは、複数の入力記事を結合して、一貫した要約を作成できます。並べ替える場合、複数の並べ替えられた数値部分配列を最終的な並べ替えられた配列に結合できます。図 2 は、集約と生成の例を示しています。
数学的に言えば、このような各変換は T (G, p_θ) としてモデル化できます。ここで、G = (V, E) は現在の推論状態図の反映です。 p_θ は使用される LLM です。 T は通常、新しい頂点とその入力エッジを追加することによって G を変更します。次に、G′ = T (G, p_θ) = (V′, E′) となります。ここで、V′ = (V ∪ {V^ }) \ {V^−} および E′ = (E ∪ {E^ } ) \{E^−}。 V^ と E^ は G に注入された新しい頂点とエッジであり、それぞれ新しい思考とその依存関係をモデル化します。
GoT の表現力を最大限に高めるために、ユーザーは削除する対応する頂点とエッジ (それぞれ V^- と E^-) を指定して思考を削除することもできます。ここで、セット V^ 、 E^ 、 V^- 、および E^- の変換が一貫していることを確認するのはユーザーの責任です (たとえば、ユーザーは存在しない頂点を削除しようとしません)。これにより、プロンプト ソリューションのシームレスな統合が可能になり、ユーザーは推論の改善されていない部分を削除してコンテキスト内のスペースを節約できます。
T の具体的な形式とそれが G にどのように影響するかは、具体的な変換によって異なります。以下では、まずメイン グラフによって可能になる思考の変革を詳細に紹介し、次に GoT に以前のソリューションの変革がどのように含まれるかを説明します。特に明記しない限り、V^− = E^− = ∅。
集約変換: ユーザーは GoT を使用してあらゆる考えを新しい考えに集約し、互いの強みから学ぶことができます。新しい頂点を作成するだけの基本的な形式を次に示します。 V^ = {v^ } および E^ = {(v_1, v^ ), ...,(v_k, v^ )}、ここで v_1, .. ., v_k は、統合される k 個の思考です。より一般的には、これにより、単なる個々の思考ではなく、推論パスの集約、つまりより長い思考の連鎖が可能になります。グラフ モデルを使用すると、集計変換を簡単に実装できます。複数のチェーンの最後の思考をモデル化する頂点 v_1、...、v_k から出力エッジを追加し、これらのチェーンを結合する単一の思考 v^ をポイントします。
変換の洗練: もう 1 つの思考変換は、内容を変更することで現在の思考 v を洗練することです: V^ = {} および E^ = {(v, v)}。図のこのループは、元の思考と同じつながりを持つ反復バージョンの思考を表しています。
変換の生成: 最後に、ユーザーは既存の単一の思考に基づいて 1 つ以上の新しい思考を生成することもできます。このカテゴリには、ToT や CoT-SC などの以前のスキームと同様の推論ステップが含まれます。数学的に言えば、「答えは十分ですか?」スコアは一般関数 E (v, G, p_θ) としてモデル化されます。ここで、v は評価される思考です。 E をできるだけ一般的なものにするために、一部の評価シナリオではスコアが他の思考に関連する可能性があるため、推論のプロセス全体 (G) も E で使用されます。
システム アーキテクチャと拡張機能
GoT は一連の対話型モジュールで構成されています。図 3 (青色の部分) を参照してください。これらのモジュールは、プロンプター (LLM 用のメッセージを準備する)、パーサー (パーサー、LLM 応答内の情報を抽出する)、スコアリング モジュール (LLM 応答を検証し、スコアを付ける)、コントローラー (コントローラー、推論プロセス全体を調整し、推論を進める方法を決定する) です。コントローラーには、他に 2 つの重要なコンポーネント、操作グラフ (GoO) とグラフ推論状態 (GRS) が含まれています。 GoO は、特定のタスクのグラフ分解を指定する静的構造です。つまり、LLM 思考に適用される変換とその順序と依存関係を指定します。 GRS は、進行中の LLM 推論プロセスの状態 (思考とその状態の履歴) を維持する動的構造です。ユースケースの例
研究者は、並べ替え、集合演算、キーワードカウント、ドキュメントなどの GoT のいくつかのユースケースについて説明します。 merge ; 以下の図 4 は、GoT のソートの使用例におけるグラフ分解の例です。ここではユースケースの詳細は紹介しません。詳細については元の論文を参照してください。
レイテンシーと容量のトレードオフ
レイテンシー (特定の最終的な考えに到達するまでにかかる時間)ホップ数と容量のトレードオフも非常に重要であり、このトレードオフに関しては GoT が以前のプロンプト設計よりも優れていることが研究者らによって示されています。この論文では、新しい指標である思考能力を定義します。これは、特定の思考 t に影響を与えることができる以前の LLM 思考の数です。数学的には、思考の容量 t は、思考マップ内の t と t の間にパスがある思考の数です。研究者らは、1 つの思考を出力するコストを O (1) と仮定し、各プロンプト解決策の総コストを Θ(n) として固定しました。
各種スキームの構造は次のとおりです。 CoT-SC は、単一の開始思考に由来する k 個の独立したチェーンで構成されます。 ToT は完全な k 進木です。 GoT では、完全な k 分ツリーがそのリーフ ノードに追加され、「ミラー」k 分ツリーが追加されます。サイズは同じですが、エッジが反転されています。
詳細な分析については、表 2 を参照してください。 CoT の容量は最大 N まで大きくなりますが、レイテンシ コストも N と高くなります。 CoT-SC はレイテンシーを k 分の 1 (分岐係数に相当) 削減しますが、同時にその容量も k 分の 1 に減少します。 ToT のレイテンシは log_k N ですが、容量も小さいです。 GoT は、低遅延 log_k N と大容量 N を実現できる唯一のソリューションです。 GoT がこれを行うことができるのは、思考の集約を活用し、グラフ分解における他の中間的な思考から最終的な思考に到達できるためです。
評価
研究者らは、実験を通じて他のソリューションに対する GoT の利点を実証しました。 ToT のパフォーマンスはすでに他のソリューションより優れているため、重要な比較は GoT と ToT です。もちろん、彼らは依然として IO、CoT、CoT-SC を使った実験を行っていました。
図 5 (並べ替え)、図 6 (交差の設定)、図 7 (キーワードのカウント)、および図 8 (文書の結合) は実験結果を示しています。
# 全体的に、実験的評価後、すべてのベンチマークで、 GoT は ToT よりも出力品質が高く、推論コストも低くなります。以上が思考連鎖CoTは思考マップGoTに進化し、思考ツリーを超える即時エンジニアリング技術が誕生しました。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。