Tree of Thoughts (ToT) — 思考ツリー

From Systems analysis wiki
Jump to navigation Jump to search

Tree of Thoughts (ToT)思考ツリー)は、大規模言語モデル(LLM)の推論を管理するための革新的なフレームワークであり、多数の推論パスを体系的に探索することで、意図的な問題解決を実行できるようにします。この概念は、2023年にプリンストン大学とGoogle DeepMindの研究者によって発表されました[1]

ToTは、一般的な手法である「思考の連鎖」(Chain of Thought, CoT)の拡張および一般化です。推論が単一の線形的なステップの連続であるCoTとは異なり、ToTは思考プロセスをツリー構造で構成します。各ノードは中間状態(「思考」)であり、枝は推論が展開する可能性のあるパスを表します。これにより、モデルは複数の選択肢を並行して探索し、その見込みを評価し、行き詰まりが検出された場合には前のステップに戻り(バックトラッキング)、意図的な選択を行うことができます[1][2]

動作原理

ToTフレームワークは、問題解決のプロセスを状態木探索として構成します。その動作は、4つの主要なコンポーネントの周期的な相互作用に基づいています[1]

  1. 思考への問題分解: 元の問題は、「思考」と呼ばれるより小さなサブタスク・ステップに分解されます。CoTでは「思考」が単に次のトークンであるのに対し、ToTでは「思考」は解決に近づくための意味的に重要な単位(例えば、数学問題における方程式やテキストのアウトラインにおける段落)となります。
  1. 思考の生成: 各ステップで、モデルは現在の状態(ツリーのノード)に対して、次の可能性のある「思考」(枝)を複数生成します。これには2つの戦略が用いられます:
  • サンプリング (sample): モデルは独立して複数の継続候補を生成します。これは、幅広いアイデアが役立つ創造的なタスクに適しています。
  • 提案 (propose): モデルは逐次的に候補を生成します。これは、解空間が限られているタスクでより効率的です。
  1. 状態の評価: 生成された「思考」は、その見込みを判断するためにLLM自身によって評価されます。評価は数値的(例:0から1のスケール)またはカテゴリカル(「確信」、「可能性がある」、「不可能」)であり得ます。これは、有望な枝へと探索を導くヒューリスティック関数として機能します。
  1. 探索アルゴリズム: 思考の木を体系的に探索するために、古典的な探索アルゴリズムが使用されます:
  • 幅優先探索 (BFS): 次のレベルに進む前に、同じレベルのすべてのノードを探索します。最短経路の発見を保証しますが、より多くのメモリを必要とします。
  • 深さ優先探索 (DFS): 一つの枝を最後まで探索してから、戻って別の枝を試します。メモリ効率が良く、探索空間が深くても広すぎないタスクに適しています。

このフレームワークは、問題解決における人間の思考を模倣し、(LLMによる)直感的なアイデア生成と、意図的で体系的な計画および選択肢の探索を組み合わせています[2]

他の推論手法との比較

ToTとChain of Thought (CoT)の比較

ToTはCoTの直接的な一般化です。CoTが分岐幅1の木として表現できるとすれば、ToTは任意の幅の木を探索することができます。これにより、次のような主要な利点が生まれます[3]

  • 代替案の探索: ToTは複数の解決経路を検討できますが、CoTは単一の線形的な経路に限定されます。
  • バックトラックの可能性: ToTでは、推論の枝が行き詰まった場合にモデルが「後戻り」できますが、これはCoTでは不可能です。
  • グローバルな計画: ToTは、複数の将来のステップの評価に基づいて戦略的な選択を行うことを可能にします。

ToTとSelf-Consistencyの比較

Self-Consistencyは、多数の独立した「思考の連鎖」を生成し、投票によって最も頻度の高い回答を選択します。この手法はCoTの信頼性を向上させますが、CoTと同様に、解決策の分岐構造を探索することはできません。一方、ToTは、独立した試行だけでなく、それらの相互関係が重要となる複雑な計画タスクにおいて、より大きな改善を示すことができます[1]

実験結果

ToTの提唱者らは、自明ではない計画や探索を必要とする3つのタスクでその有効性を実証しました。

  • ゲーム24: 4つの与えられた数字と基本的な算術演算子を使って24を作る数学パズルです。GPT-4による標準的なプロンプティングでは成功率が7.3%、Chain of Thoughtでは4%でした。幅優先探索(b=5)を用いたToTは74%の成功率を達成し、これはCoTの18.5倍の改善です[1][4]
  • 創造的な執筆: 4つの段落からなる一貫したテキストを生成し、各段落の最後の文が指定されているタスクにおいて、ToTで生成されたテキストは10点満点中平均7.56の結束性スコアを獲得しましたが、CoTは6.15でした。100回の比較のうち、人間は41回でToTが生成したテキストを好み、CoTが好まれたのは21回でした[5]
  • ミニクロスワード(5x5): ToTは単語の60%を正しく埋めましたが、CoTはわずか1%でした[6]

制限事項と今後の方向性

目覚ましい結果にもかかわらず、ToTフレームワークにはいくつかの制限事項があります:

  • 計算の複雑さ: ToTは多数の「思考」を生成・評価する必要があるため、標準的な手法よりも大幅に多くの計算リソース(5〜100倍多くのトークン)を必要とします[1]
  • 実装の複雑さ: ToTを導入するには、思考生成器、状態評価器、探索アルゴリズムといった全てのコンポーネントを作成・調整するために、多大なエンジニアリング努力が必要です。
  • 評価品質への依存: フレームワーク全体の有効性は、中間状態を適切に評価するLLMの能力に大きく依存しますが、これは常に保証されるわけではありません。

今後の研究は、効率の向上、最適化の自動化、そして強化学習などの他の手法との統合に焦点を当てており、より賢く自律的なエージェントの創出を目指しています。

外部リンク

参考文献

  • Yao, S. et al. (2023). Tree of Thoughts: Deliberate Problem Solving with Large Language Models. arXiv:2305.10601.
  • Wei, J. et al. (2022). Chain-of-Thought Prompting Elicits Reasoning in Large Language Models. arXiv:2201.11903.
  • Wang, X. et al. (2022). Self-Consistency Improves Chain of Thought Reasoning in Language Models. arXiv:2203.11171.
  • Kojima, T. et al. (2022). Large Language Models are Zero-Shot Reasoners. arXiv:2205.11916.
  • Zhang, Z. et al. (2022). Automatic Chain of Thought Prompting in Large Language Models. arXiv:2210.03493.
  • Lyu, Q. et al. (2023). Faithful Chain-of-Thought Reasoning. arXiv:2301.13379.
  • Ling, Z. et al. (2023). Deductive Verification of Chain of Thought Reasoning. arXiv:2306.03872.
  • Yao, S. et al. (2022). ReAct: Synergizing Reasoning and Acting in Language Models. arXiv:2210.03629.
  • Besta, M. et al. (2023). Graph of Thoughts: Solving Elaborate Problems with Large Language Models. arXiv:2308.09687.
  • Lightman, H. et al. (2023). Let’s Verify Step by Step. arXiv:2305.20050.
  • Lanham, T. et al. (2023). Measuring Faithfulness in Chain-of-Thought Reasoning. arXiv:2307.13702.
  • Yang, B. et al. (2025). Hallucination Detection in Large Language Models with Metamorphic Relations. arXiv:2502.15844.

脚注

  1. 1.0 1.1 1.2 1.3 1.4 1.5 Yao, S., Yu, D., Zhao, J., et al. (2023). «Tree of Thoughts: Deliberate Problem Solving with Large Language Models». arXiv. [1]
  2. 2.0 2.1 «What is Tree of Thoughts Prompting?». IBM. [2]
  3. «Tree of Thoughts vs Chain of Thought». Substack.
  4. «...18.5 times improvement...». arXiv.
  5. «...41 out of 100 comparisons...». OpenReview.
  6. «...CoT: 1% success rate...». arXiv.