見出し画像

【論文瞬読】大規模言語モデルが自己発見する推論構造: SELF-DISCOVERの紹介

こんにちは!株式会社AI Nestです。
本日もLLMを活用して、大規模言語モデル(LLM)が複雑な推論問題に取り組むための新しいフレームワーク、SELF-DISCOVERについて「瞬読」してきたのでそちらをご紹介します。

タイトル:SELF-DISCOVER: Large Language Models Self-Compose Reasoning Structures
URL:https://arxiv.org/abs/2402.03620
機関:University of Southern California, Google DeepMind
著者:Pei Zhou, Jay Pujara, Xiang Ren, Xinyun Chen, Heng-Tze Cheng, Quoc V. Le, Ed H. Chi, Denny Zhou, Swaroop Mishra, Huaixiu Steven Zheng

どんなもの?

SELF-DISCOVERは、LLMが自己発見というメタ推論プロセスを通じて、タスクに固有の推論構造を生成するフレームワークです。推論構造は、批判的思考やステップバイステップ思考などの原子的な推論モジュールの説明から構成されます。LLMは、推論構造に従ってデコードすることで、タスクを解決することができます。

SELF-DISCOVERは、難易度の高い推論ベンチマークのテストにて、23/25のタスクでDirect Answeringを、21/25のタスクでCoTを上回る

批判されている理論は何?

この論文は、既存のプロンプティング方法が、タスクの推論プロセスに対して暗黙の仮定を置いていると批判しています。例えば、チェーンオブソート(CoT)は、人間がステップバイステップで問題を解く方法に倣っていますが、この方法はすべてのタスクに適しているとは限りません。この論文は、各タスクには固有の推論構造が存在し、それを自動的に発見することが、LLMの推論能力を向上させると主張しています。

どういう文脈・理路をたどっている?

この論文は、人間が問題解決のために内部的に推論プログラムを作成する方法に触れています。SELF-DISCOVERは、2つのステージに分けられます。ステージ1では、タスクレベルで推論構造を発見します。ステージ2では、インスタンスレベルで推論構造を利用してタスクを解決します。

ステージ1では、3つのアクションを行います。

  • SELECTでは、タスクに有用な推論モジュールを選択します。これは、LLMがタスクを解決するために必要な推論スキルを特定するプロセスです。

  • ADAPTでは、選択した推論モジュールの説明をタスクに合わせて言い換えます。これは、LLMがタスクの特性に基づいて推論スキルを調整するプロセスです。

  • IMPLEMENTでは、言い換えた推論モジュールの説明を実行可能な推論構造に変換します。これは、LLMが具体的なタスク解決戦略を形成するプロセスです。

SELF-DISCOVERの3つの動作の説明図

ステージ2では、発見した推論構造をすべてのタスクインスタンスに付加し、LLMに推論構造に従って回答を生成させます。これは、LLMが具体的なタスクを解決するプロセスです。

対象となるスコープにおいて網羅性と整合性はある?

この論文は、25種類の複雑な推論タスクを対象としています。これらのタスクは、Big Bench-Hard(BBH)、Thinking for Doing(T4D)、MATHなどのベンチマークから選択されています。これらのタスクは、アルゴリズム的・多段階算術推論、自然言語理解、世界知識の利用、多言語知識と推論など、多様な推論問題をカバーしています。

CoT、Plan-and-Solve、SELF-DISCOVERから生成された推論プロセスの比較

議論はある?

この論文は、LLMの推論能力を向上させるための有望なフレームワークを提案していますが、いくつかの議論の余地があります。例えば、原子的な推論モジュールの説明は、人間が作成したものであり、LLMが自動的に生成することができるかどうかは不明です。また、発見した推論構造が、すべてのタスクに適用可能であるとは限りません。

実装はある?

langchain/cookbook/self-discover.ipynb at master · langchain-ai/langchain (github.com)

まとめ

SELF-DISCOVERという新しいフレームワークについて紹介しました。SELF-DISCOVERは、LLMが自己発見というメタ推論プロセスを通じて、タスクに固有の推論構造を生成することで、複雑な推論問題に取り組むことができるというものです。このフレームワークは、難易度の高い推論ベンチマークのテストにて、優れた性能を示しました。

また、LLMの推論能力は、人間の問題解決能力に近づくことができるのでしょうか。また、LLMが自動的に推論構造を発見することができるとしたら、どのようなメカニズムが必要になるのか気になりました。