スタンフォード大学のYuqing Wang氏とメタプラットフォームズのYun Zhao氏が発表した「Metacognitive Prompting Improves Understanding in Large Language Models(メタ認知プロンプティングによる大規模言語モデルの理解能力向上)」という論文では大規模言語モデル(LLM)の理解能力を向上させるための新しい手法が解説されています。論文は2023年8月に提出され、2024年3月20日に最新の改訂バージョンが提出されています。今回は、この論文を元に、メタ認知プロンプティングについて紹介します。→過去の「柳谷智宣のChatGPTプロンプトクリエイティブラボ」の回はこちらを参照。
人のように内省させるメタ認知プロンプティング
メタ認知プロンプティングは人間の内省的推論プロセスを参考にして、自己評価するプロンプトを構築することで、ChatGPTが新たな洞察を引き出せるようにしています。
研究では、GPT-3.5やGPT-4、Llama2、PaLM2などの主要なLLMでさまざまなGLUE、SuperGLUE、BLUE、LexGLUEといったベンチマークを行いました。
その結果、一般的な言語理解タスクでも、専門分野に特化した言語理解タスクでも、メタ認知プロンプティングは人間の内省的推論プロセスを参考にして自己評価するプロンプトの方が一貫して優れた性能を出したそうです。まずは、論文内で例示されたプロンプトを紹介します。
-
プロンプトと出力
「What are the most beautiful beaches in the world?」と「What is the most beautiful beach?」の2つの質問がお互いの言い換えであるかどうかを判断せよ、というものです。
メタ認知プロンプティングはテキスト解釈、予備的判断、批判的評価、最終決定の確認、信頼度評価という5つのステップを踏みます。
まずは、プロンプトを明確に理解します。1文目が複数形で、2文目が単数形であることを理解し、ステップ2の予備的判断で意味的には似ていると判断。ステップ3の批判的評価で、1文目は多様性を求め、2文目は単一の選択を求めていると判断しました。
ステップ4の決定の確認で、共通の関心はあるものの、本質が異なるので、異なるタイプの情報を求めているとジャッジしました。ステップ5の信頼度の評価では、90点としました。質問の意図と期待されるタイプは明確に異なりますが、「美しさの主観的な評価が結論に影響を与える余地があることを認識している」とのことでした。
さて、最初原文を見たときに異なる判断が正解とされていて、違和感を覚えました。試しに、日本語訳を入力してみましょう。
-
プロンプト
-
出力
決定の確認:
質問1と質問2は、言い換えであると判断します。これは、両方の質問が同じ情報を求めており、同じ答えが適切であるという理由に基づきます。質問2に「世界で」という言葉が含まれていないにもかかわらず、その省略は一般的な会話における文脈と自然な言語使用において、質問の意味を変えるものではありません。
質問1と2は同じ内容であると断言できました。信頼度の評価も95%です。日本語で読めば当然の内容です。これは、英語では複数形と単数形を使い分けていることが原因で、どちらも正解です。言語の違いでもきちんと推論するChatGPTの実力には恐れ入りますね。
Webページの内容が特定のキーワードに関連しているか判断してもらう
メタ認知プロンプティングでいろいろな判断をしてみましょう。例えば、内閣府のSociety 5.0に関する説明ページで、環境問題に言及しているのかどうかを判断してみます。「環境問題」というキーワードで検索してヒットしないからといって、環境問題に触れていないとは限らないからです。
GPT-4を選択し、ウェブページのURLを貼り付け、環境問題について語っているかメタ認知プロンプティングで判断してもらいましょう。勝手に要約せず、ステップバイステップで処理するようにプロンプトを構築しましょう。
-
プロンプト
-
出力
~略
ステップ4 最終決定の確認
このウェブページは環境問題に直接言及しているわけではありませんが、持続可能な未来社会の構築というテーマを通じて、間接的に環境問題と関連している可能性があります。しかし、その主な焦点は技術革新と社会構造の変革にあるため、環境問題に特化した内容ではないというのが最終判断です。
ステップ5 信頼度評価
この分析の信頼度を80%と評価します。
このウェブページには「環境問題」といった単語は一切出てきませんが、持続可能な社会というキーワードから関連している可能性を残し、80%の評価で環境問題に特化した内容ではないという最終判断を下しました。シンプルに質問するよりもずっと深堀りした判断をしてくれるうえ、その判断基準まで教えてくれるので助かります。
ビジネスシーンでの対応の可否を理由付きで判断してもらう
ビジネスシーンで何らかの判断を行うときに、可否を判断してもらうこともできます。状況をAとして渡し、自分の考えをBとして入力し、メタ認知プロンプティングを使います。
ここでは、明日の締め切りに原稿が間に合わないライターの対応について聞いてみましょう。
-
出力
~略
ステップ4:最終的な結論
Bの対応は適切ではありません。適切な対応は、緊急の状況を関係者に早急に報告し、可能な解決策や延期の合意を求めることです。このようにすることで、予期せぬ負の影響を避け、相互の信頼を保つことができます。
ステップ5:自信度の評価
自信度は90%です。
想像通り、適切でないと判断されました。状況を早急に報告するようにアドバイスを受けました。その通りですね。すぐに連絡する、という対応を入力すると、もちろん適切だと判断されました。
問い合わせ内容の感情分析をより深く行うことができる
顧客からの問い合わせがあった時に、その内容が肯定的なのか否定的なのかをジャッジできれば、担当者の割り振りや対応の優先度付けが簡単に行えるようになります。もちろん、ChatGPTで処理できるのですが、課題もありました。
明らかな肯定や否定の内容であれば問題なくジャッジできるのですが、両方の内容が含まれていると、正確に判断できないことがあります。例えば、以下のような感情分析を行ってみましょう。
「肯定と否定」の混在、はその通りです。とは言え、筆者としては、もっと肯定よりの内容だと感じます。そこで、メタ認知プロンプティングを使い、もう少し深く考えてもらいましょう。
-
プロンプト
ステップ2で「肯定の中にわずかな否定」または「肯定よりの中立」と判断しているのですが、ステップ3で「問い合わせの感情を決める際には、顧客が提供する情報の全体的なトーンと特定の表現を慎重に考慮することが重要」として、最終的な結論は「肯定よりの中立」となりました。素晴らしいですね。ChatGPTの出力を自分でチェックすることで、より人間らしい回答に近づいています。
以上が、メタ認知プロンプティングを使ってChatGPTの出力品質を向上させる方法となります。劇的にアウトプットが変化するわけではありませんが、総じて良好な結果が得られました。より人間らしい判断が必要な場合に活用してみましょう。