プロンプトのフォーマットの影響調査論文
https://scrapbox.io/files/65a3c27f367e350023b73aab.png
論文情報
タイトル:Quantifying Language Models' Sensitivity to Spurious Features in Prompt Design or: How I learned to start worrying about prompt formatting
発行日:2023年10月
著者:Melanie Sclar, Yejin Choi, Yulia Tsvetkov, Alane Suhr
所属:University of Washington
論文を読んで感じたこと
内容がとても難しい
LLMsのプロンプト設計における細かなフォーマットの違いが、モデルの挙動に与える影響について研究している。
書く順番や書き方で精度が変わるというのは感覚的にみんな分かっていたが、ここまで差が出るとはびっくり。
色んなパターン試すのが重要。
論文の主なポイント
プロンプトフォーマットの影響
同じプロンプトの内容でもフォーマットが違うだけで正確性に76%も差が出ることが判明
https://scrapbox.io/files/65a4cad2cd1e6200235d012b.png
https://scrapbox.io/files/65b84263f811b100286708ec.png
フォーマットの一部を変えるだけで、精度が大きく変わってしまう
解決策として、FormatSpreadを使う
ユーザが提供したフォーマットと同等のもっともらしいフォーマットをサンプリングすることで動作する
実際にどうする?
厳密に実験を行うなら、GitHub のformatspreadを使用して、最適なテンプレートを同定する
概要
大規模言語モデル(LLM)が言語技術の基本要素として採用されるにつれ、その性能を正確に評価することが極めて重要になっている。プロンプト設計の選択はモデルの動作に強く影響するため、この設計プロセスは、最新の事前学習済み生成言語モデルを効果的に使用する上で非常に重要である。
本研究では、プロンプトの書式設定という、意味を保持する設計選択の典型的なクラスに対するLLMの感度に注目する。LLaMA-2-13Bを用いて評価した場合、最大で76%の精度差がある。この感度は、モデルサイズを大きくしたり、Few-Shotの例の数を増やしたり、命令のチューニングを行ったりしても変わりません。我々の分析は、プロンプトベースの手法でLLMを評価する場合、現在標準的に行われている単一フォーマットでの性能報告ではなく、もっともらしいプロンプトフォーマットでの性能範囲を報告することが有益であることを示唆している。また、プロンプトフォーマットの性能はモデル間で弱い相関しかないことを示し、任意に選択された固定プロンプトフォーマットでモデルを比較することの方法論的妥当性を疑問視している。系統的な分析を容易にするために、我々はFormatSpreadを提案する。FormatSpreadは、与えられたタスクに対して、サンプリングされたもっともらしいプロンプトフォーマットの集合を高速に評価し、モデルの重みにアクセスすることなく、期待されるパフォーマンスの間隔を報告するアルゴリズムである。さらに、特定の原子的摂動の影響や、特定のフォーマットの内部表現を調べるなど、この感度の性質を特徴付ける一連の分析を提示する。 1 はじめに
最近のLLMの能力は急速に向上しており、入力プロンプトの特徴に対する敏感さを利用して、プロンプトエンジニアリングによってパフォーマンスを最適化することが行われています。しかし、プロンプトの意味と意図を保ちつつも、一見問題のないフォーマットの選択に対する敏感さの特徴を調べた研究はほとんど行われていません。本研究では、広く使用されているオープンソースのLLMが、プロンプトの解釈に影響を与えるべきではない特徴クラス、つまりフォーマットの選択に敏感であることを分析します。事前に訓練されたLLMは、これらの選択に対して予測不可能な方法で敏感であり、同等のフォーマット間で最大76ポイントの精度の変動がLLaMA-2-13Bで見られ、50以上のタスクや複数のモデルにわたって平均約10の精度ポイントの変動があります。また、この変動は、Few-Shotの例を追加したり、モデルのサイズを増やしたり、指示チューニングを行ったりしても解消されません。 事前に訓練された言語モデルを効果的に使用するためには、プロンプトテンプレートの設計が重要です。この設計プロセスには、言葉遣いの選択、ICL(コンテキスト内学習: In Context Learning)のためのFew-Shotの例の選択など、フォーマットのような表面的には些細な特徴に関する決定が含まれます。このプロセス、そしてしばしばその結果としてのテンプレートも、これらの選択におけるパフォーマンスの変動が、他の要因に比べて重要ではないという仮定のもと、研究論文で報告されたり議論されたりすることはほとんどありません。 しかし、エビデンスは低いが、フォーマットの選択が実際にはモデルの振る舞いに大きな影響を与えることがあります(Aghajanyan, 2023)。ある場合には、研究者はパフォーマンスが大きく異なるにもかかわらず、スケーリングの傾向が維持されていることを示すために、限られた数の手作りのフォーマットを報告しています(Schick et al., 2021)。フォーマットが全体的なモデル性能に影響を与えないという仮定は、既存のアプローチに対する改善がトレーニングデータの量やソース、パラメータの数、またはモデルアーキテクチャに帰属される場合、問題となる可能性があります。また、プロンプトのフォーマットの変更も考慮せずにフォーマット間のバリエーションを無視することは、ユーザー体験にも悪影響を与える可能性があります。例えば、ユーザーが、LLMがうまく機能しないフォーマットを不注意に選択した場合です。
https://scrapbox.io/files/65b833ed9a75b40024505ea0.png
私たちが提案するツールであるFORMATSPREADは、ユーザーが指定した計算予算内で意味的に同等のプロンプトフォーマットの広範なセットにわたるこれらのバリエーションの体系的な分析を可能にします。我々は、コンテキスト内学習中に数発の例のフォーマットを選択することが、モデルのパフォーマンスについて大きく異なる結論に導くことがあるという偽のバイアスを導入することを発見しました。広く使用されているオープンソースのモデルにわたる私たちが発見したフォーマットの選択に対する感度は、将来の研究が妥当なフォーマットの十分なサンプルにわたるパフォーマンスのスプレッドを報告することから恩恵を受けるでしょう。これは、現在の標準である使用されたフォーマットとそのパフォーマンスを単に報告するのではなく。さらに、我々は、フォーマットの選択の影響がモデル間でわずかに相関するだけであることを示すので、この報告は異なるモデルのパフォーマンスを比較する際に重要であると主張します。フォーマットの選択を固定することで、重要な交絡要因が導入される可能性があります。
プロンプトのフォーマットの空間を完全に探索することは不可能であり、考慮されるフォーマットの数に比例して計算コストが増加します。FORMATSPREADは、ユーザーが指定した計算予算の下でプロンプトフォーマットの空間を効率的に探索し、ベイズ最適化を使用しています。FORMATSPREADはモデルの重みにアクセスする必要がなく、APIゲートされたLLMでの使用が可能です。我々は、GPT-3.5を使用して、320のフォーマットと53のタスクにおいて、最大56の精度ポイント、中央値で6.4の精度ポイントのスプレッドを見つけ、平均してタスクごとに10USD以下のコストでした。評価を容易にするだけでなく、私たちはまた、モデルのフォーマットに対する感度をさらに特徴づけるための一連の分析を提案します。その他の結果の中でも、連続的なプロンプトの埋め込みの分離可能性が、タスクパフォーマンスで観察されたスプレッドと相関していることを示します。 2 概要
我々は、非敵対的なユーザーがターゲットタスクのプロンプトを設計する際に合理的に選択される可能性があるプロンプトのフォーマットの空間にわたるLLMのパフォーマンスを評価します。フォーマットの空間は文法によって定義されています(§3.1)。私たちの文法の定義は、フォーマット間の意味の同等性の定義を自然に導き出します。私たちは、元の選択に同等のプロンプトのフォーマットの空間全体でのターゲットタスクのパフォーマンス範囲という観点で、モデルの感度を定量化します(§4.2)。私たちは、この空間全体での検索をバンディット問題として捉え、FORMATSPREAD(§3)を提案します。これには文法(§3.1)と、事前定義された指標に基づいて意味的に同等のフォーマットのセット全体での最小および最大パフォーマンスを推定する手順が含まれています(§3.2)。FORMATSPREADは、ベイズ最適化を使用して、低い追加計算コストで期待されるパフォーマンス範囲を特定します(§4.5)。これは、モデルの重みにアクセスする必要がないため、APIゲートされたLLMでの使用を可能にします。さらに、我々はこの観察された感度に対する詳細な分析を行い、個々の特徴選択が最終パフォーマンスに与える貢献を定量化する(§4.3)、および任意のプロンプトのモデルの内部的な連続表現に基づいてフォーマットを識別し、モデルのパフォーマンスとの相関を測定する(§4.4)ことを含みます。
3 FORMATSPREADを使用した感度の測定
3.1 妥当なプロンプトフォーマットの文法
私たちは、妥当なプロンプトフォーマットの空間とフォーマット間の意味的同等性を定義する文法を構築しました。この文法は、同等のフォーマットのセットを定義する際により高い精度を保証するため、データから自動的に導出されるのではなく、手動で構築されました。私たちの文法は、100以上のSuper-NaturalInstructionsタスク(Wang et al., 2022)に関連するフォーマットを生成できるかどうかを検証することにより、直接テストされました。
私たちの文法は、プロンプトフォーマットを作成するために組み合わされるフィールドで構成されています。例えば、フォーマット「Passage: <text> || Answer: <text>」は、基本フィールド「Passage: <text>」と「Answer: <text>」、それぞれa1とa2として表されます。
各基本フィールドは、記述子(例:「Passage」)、セパレータ(例:「: 」)、および各データポイントで置き換えるテキストプレースホルダーで構成されます。私たちは基本フィールドを B1(d, s, f) := f(d)s<text> としてバッカス・ナウア記法で定義し、ここでdは記述子文字列、s∈S1はセパレータ、f ∈Fcasingは意味を保持しながらdを変更する関数です。
したがって、私たちの例では、a1 = B1(Passage, ': ', id)およびa2 = B1(Answer, ': ', id)で、idは同一関数です。私たちは、複数のフィールドを結合することをB(n)2(X1, ..., Xn, c) := X1cX2c ... cXnと定義します。ここでc∈ Cはスペースです。私たちの例のプロンプトフォーマットはB(2)2(a1, a2, ' || ')として書くことができます。
この文法はまた、異なるリスト項目を表す複数の基本フィールドを結合する列挙をサポートしています。例えば、列挙「Option (A): <text>, Option (B): <text>, Option (C): <text>」はB(3)2(a1, a2, a3, ' || ')として書くことができます。ここでai = B1(ei, ': ', id)です。私たちの例では、e1は「Option (A)」を表し、さらに連結 ei := ds2fitem(i) で書くことができます。ここでdは「Option」、s2は' '(単一スペース)、fitem(1)は「(A)」です。各fitemは、アイテムiを数字のフォーマット(例: 文字やローマ数字、Fitem2として示される)およびアイテムラッパー(例: (A) や 【A】、Fitem1として示される)を使用して変換します。
要約すると、私たちは有効なプロンプトフォーマットを、以下の文法によって受け入れられるものとして定義します:
https://scrapbox.io/files/65b8351d937c020024c6761e.png
私たちの文法は、有効なフォーマットをB0, B'0, B1, B2, B3の有限組成として定義します。セットS1, S2, C, Fcasing, Fitem(それぞれ2種類のセパレータ、スペース、ケーシング機能、アイテム化機能)は、ユーザーによって事前に定義されます。この作業全体を通じて、私たちは人間が書いたプロンプトフォーマットで一般的に観察される値ですべてのセットを具体化します。意味的同等性を保証するために、記述子のケーシングのみを変更する(Fcasingを介して)ことを意図的に行います。また、記述子を言い換える関数のセットも定義することができます。例えば、同義語の置き換えを通じてです。付録A.2には、定数セットに使用する値の完全なリストと、文法から生成されたプロンプトテンプレートの視覚化が含まれています。
プロンプトフォーマットの同等性
2つのプロンプトフォーマットp1、p2が同等である場合、それらは同じルール適用Biを表し、記述子(もしあれば)が同じであり、サブエレメント(もしあれば)が同等です。付録A.1には同等性の正式な定義が含まれています。文法の厳密な定義により、同等のフォーマットのセットが同等の意味を共有すると仮定することができます。感度を測定する際(§3.2)、私たちはタスクの元のフォーマットに同等のフォーマットの空間のみを探索します。
文脈的な制約
自然さをさらに確保するために、スペースとセパレータの組み合わせに制約を定義します。例えば、B2(X1, ..., Xn, c)の場合、cが改行を含まない場合、各Xiのセパレータとそのサブコンポーネントのセパレータは改行を含まないようにする必要があります。これは、Input:\n <text> Output:\n <text>のような不自然なフォーマットを避けるためです。また、異なるBiのアプリケーションで定数(セパレータ、スペースなど)を等しいとする条件を追加することも可能です。フォーマットの摂動に対する感度を測定する場合、もとのフォーマットで2つのセパレータまたはスペースが等しい場合、それらは同等と見なされるために共同で変更されなければなりません。付録A.3にはすべての文脈的制約が含まれています。
最終的なプロンプトの構築
文法によって受け入れられる有効なフォーマットpが与えられた場合、最終的なプロンプトは、指示文字列inst、タスクを例示するn個の数発のデータポイントD1, ..., Dn、および解決すべきデータポイントDn+1とスペースcで連結して構築されます。
すべての数発の例Diはpを使用してフォーマットされます。したがって、最終的なプロンプトテンプレートは以下のようになります:
inst c p(D1) c p(D2) c ... c p(Dn) c p(Dn+1)。Dn+1の出力はモデルによって生成されるため、テンプレートの最後のフィールドには回答の代わりに空の文字列が追加されます。プロンプトの構築は、pで符号化された特定の選択に合わせてinstを変更します。具体的には、pが有効な選択肢をx1 ... xnとして列挙している場合、instはこれらの選択をx1 ... xnとして参照するようにします。
3.2 感度の測定
我々は、プロンプトのフォーマットの選択が生成された出力の定量化可能な指標にどのように影響するかを測定します。妥当なフォーマットのセット {p1, ..., pn}、データセットD、スカラーメトリックmが与えられた場合、パフォーマンスの間隔を 最小 m(pi, D), 最大 m(pi, D) としましょう。私たちはパフォーマンスの広がり、または単に広がりを最大 m(pi, D) − 最小 m(pi, D) と定義します。より高い広がりは、妥当で意味的に同等なフォーマットの空間内での変動に対する感度を示します。私たちの方法は使用されるスカラーメトリックmについて不可知ですが、テキストの長さ、形式、または有害性を含む多くの指標を考慮することができます。ただし、この作業では、推定されるタスクの精度accに焦点を当てて分析します。自動評価が容易であるため、ここでは分類タスクについて評価します。
私たちの目標は、特定のモデルとタスクに対する広がりを計算することです。包括的なアプローチは、各妥当なフォーマットpiを評価データセットD全体で完全に評価することです。これにより、モデルのパフォーマンスの報告コストがnと比例して増加し、nの大きな値に対して計算上実行不可能になります。以前の勾配フリーのプロンプトエンジニアリング作業(Zhou et al., 2023; Pryzant et al., 2023)に従い、私たちは問題を多腕バンディットとしてモデル化します。タスクに対するnフォーマット(アーム)p1, ..., pnのランダムサンプルが与えられた場合、アームpiの隠された値は、評価データセットD全体で評価された時の実際のパフォーマンスm(pi, D)であり、アームを引く報酬は推定値m(pi, D˜)です。ここで、D ⊂ D˜、|D| ˜ = B(ミニバッチサイズ)で、D˜の要素はまだpiで評価されていません。
E個のデータポイント評価の合計予算があると仮定します。最初にE/2の予算で最高性能のフォーマットを探し、次にE/2の予算で最低性能のフォーマットを探します。最初の探索で行われた評価は、多くのフォーマットに対してより情報豊かな事前情報を提供するため、第二の探索ですぐに利用可能です。私たちは、後悔最小化バンディットアルゴリズムとしてよく知られている2つのアプローチを考慮します:トンプソンサンプリング(FORMATSPREADで使用される)とアッパーコンフィデンスバウンド(UCB)。
トンプソンサンプリング
この単純で高性能なベイジアン推論のヒューリスティックは、最適である可能性が高い各アームをその確率に従ってランダムに引きます(Chapelle & Li, 2011)。各m(pi, D)はランダム変数としてモデル化され、私たちのターゲットメトリックでは各データポイントの評価がベルヌーイ試行であるため、m(pi, D)をベータ分布としてモデル化するのが自然です。各ラウンドで、トンプソンサンプリングは各m(pi, D˜)から抽出し、最良のアームˆiを選択します(アルゴリズム1)。次に、D˜内で観測された成功数rと、それに対応するB − rの失敗に基づいてˆiを更新します。
トンプソンサンプリングでは、実行時間を短縮するためにドメイン知識に基づいて情報豊かな事前情報(αi, βi)を設定することが可能です。付録A.4には、私たちが使用する正確な事前情報の詳細が記載されています。私たちの知る限り、プロンプト最適化のためのベイジアンサンプリング手法を検討するのはこれが初めてです。
アッパーコンフィデンスバウンド(UCB)サンプリング
UCB(Lai et al., 1985)は、各アームのパフォーマンスに対する上限信頼境界をチェルノフの境界から導き出します。トンプソンサンプリングとの主な違いは、θ(t)iの定義方法にあります。UCBの頻度論的アプローチでは、θ(t)iに推定された精度に上限信頼境界を加えた値が割り当てられます:θ(t)i ←Si/Ni + c√(log(t)/Ni)。私たちは、プロンプト最適化に最も効果的であることがわかっているc = 2を使用しています(Pryzant et al., 2023に従って)。
ナイーブサンプリング
各プロンプトフォーマットはE/nポイントで評価されます(適切な丸めを行います)。
4 FORMATSPREADによるプロンプトフォーマットのバリアンスの特徴づけ
4.1 実験セットアップ
データ
私たちは、Super-NaturalInstructions(Wang et al., 2022)からの53のタスクのサブセットを使用します。これには、多様な人間が書いたフォーマットと指示が含まれ、19の選択肢問題と34の分類タスクがあります。これらには基本フィールドが{2, 3, 4}含まれます。付録B.1には、正確なタスク選択手順が詳述されています。最終的なプロンプトテンプレートを構築するために、私たちは各タスクの指示とn個のフォーマットされた数発の例を\n\nを使用して連結します。数発の例の選択と順序付けはモデル出力の特徴に影響を与えるプロンプト設計の要素ですが(Lu et al., 2022)、私たちの研究はプロンプトフォーマットに焦点を当てています。この交絡因子を排除するために、各タスクと与えられた数発のショットnに対して、例の正確な選択と順序付けを固定します。各タスクの数発の例は、各データセット内でランダムに選択され、評価には使用されません。タスクデータサンプルは、設定全体で固定された任意の順序で評価されます。タスク間の公平な評価のため、データセットは1,000のサイズと仮定されます。
モデル
LLaMA-2-{7B,13B,70B}(Touvron et al., 2023)、Falcon-7BおよびFalcon-7BInstruct(Almazrouei et al., 2023)、GPT-3.5-Turbo(Schulman et al., 2022)など、すべて自己回帰型LMを評価します。
タスク評価指標
私たちは、精度を計算するための2つの一般的な測定法を使用します:正確なプレフィックスマッチングと確率ランキング。正確なプレフィックスマッチングでは、出力のプレフィックスが正規化後の期待される回答と一致するかを確認します(ケーシング、スペーシング、改行)。ランキング精度は、モデルの出力分布に従って、期待される回答が有効なオプション(選択肢問題および分類タスクで)の中で最も高いランクである割合を計算します。特に明記されていない限り、結果はランキング精度を使用して報告されます。付録B.2には、正確なプレフィックスマッチングの追加分析が示されており、4.2節で示されているものよりもさらに高い広がりがあり、フォーマットの選択がタスクの退化(つまり、有効なオプションに対する回答がない)にどのように影響するかを含みます。
4.2 プロンプトフォーマットは大きなパフォーマンスの広がりを持ち、それは数発の例やモデルサイズの増加、指示チューニングによっても排除されません
各評価タスクについて、私たちは10の妥当なプロンプトフォーマットをランダムにサンプリングし、FORMATSPREADを使用して各モデリングとn-shot選択に対するパフォーマンスの広がりを計算します(Figure 3)。
https://scrapbox.io/files/65b8401073c2fd00234bd91b.png
私たちは、モデルと数発の例の選択による中央値が7.5の精度ポイントにわたる大きなパフォーマンスの広がりをタスク間で見つけました。20%のタスクは、全てのLLaMA-2設定に対して少なくとも15の精度ポイント、全てのFalcon設定に対して少なくとも9ポイントの広がりを一貫して示します。いくつかのタスクでは、70以上の精度ポイントにわたるパフォーマンスの広がりが観察されます。この分析はランダムにサンプリングされた10のフォーマットのみを使用しているため、各タスクの真の広がりの下限を表しています。さらに、モデルサイズの増加(Figure 2aおよびLLama-2-70Bの図11)、指示チューニング(Figure 2b)、または数発の例の数(Figure 2c; Figure 2aおよび2bは1-shotおよび5-shotを共同でプロット)に関係なく、顕著なパフォーマンスの広がりが存在します。付録B.2は、非分類タスクの選択について同様の結果を示しています。
https://scrapbox.io/files/65b8400a62537700249f7122.png
モデル間の比較トレンドは、異なるフォーマットを選択することでしばしば逆転します。モデルMがプロンプトpを使用してM'よりも少なくともd精度高いと仮定すると、異なるフォーマットp'の下でM'がMよりも少なくともd高い精度を達成する頻度を計算します。図4は、これらのトレンドがしばしば逆転することを示しています:LLaMA-2-13Bおよび-70Bは少なくともd = 0.02で確率0.141でトレンドを逆転し、LLaMA-2-7BとFalcon-7Bは少なくともd = 0.02で確率0.140で逆転します。特筆すべきことに、しばしば両方の実験(最初はpを使用し、次にp'を使用)は統計的に有意でした(p値<0.05)1000サンプル2において:上記の2つのモデル比較についてそれぞれ76%および47%です。私たちは、モデルMに対して高いパフォーマンスをもたらすフォーマットがM'に対して高いパフォーマンスをもたらさない可能性があることを発見しました。これは、フォーマットが本質的に良いか悪いかではないことを意味しています(付録B.2)。
https://scrapbox.io/files/65b8409e0e582b002478f7b5.png
4.3 個々の特徴はパフォーマンスにどのように貢献するのか?
私たちは、特定の定数(つまりS1, S2, C, Fcasing, Fitem)の選択が異なるフォーマットにおけるタスクパフォーマンスにどのように独立して影響するかを分析します。図5は、Super-NaturalInstructionsの1つのタスクについて、記述子とテキストプレースホルダー間のセパレータであるS1の選択に条件付けされた500のサンプリングされたプロンプトの精度分布を示しています。2つの特徴選択の個々の影響を比較する場合、私たちは選択された特徴に条件付けされたプロンプトの精度分布間の弱いおよび強い類似性の両方を測定します。私たちは、第1四分位数(Q1)と第3四分位数(Q3)間の値が交差しない場合、2つの定数の選択が弱く異なる精度分布をもたらすと言います。これはボックスプロットのボックスが重ならないのと同じです。私たちは、範囲2.5Q1 - 1.5Q3, 2.5Q3 + 1.5Q1が重ならない場合、2つの定数の選択が強く異なる精度分布をもたらすと言います(データポイントで終わるように調整されます)。これは2つのボックスプロットのヒゲが重ならないのと同じです。Figure 5では、「\n\t」と「: 」(4番目と6番目)は弱く異なるだけです。
https://scrapbox.io/files/65b84133e523f9002322d891.png
私たちは31のタスクについて1-shot Llama2-7Bの500のランダムフォーマットで精度を計算し、各250サンプルを使用します。表1は、S2, Fitem1, Fcasingの選択が独立してパフォーマンスの違いを予測しないことを示しています(弱くまたは強く):
https://scrapbox.io/files/65b8414a58edcf0024b418d7.png
これらの特徴は大きなパフォーマンスのバリアンスを持つことができるため、FORMATSPREADで探索されるべきですが、精度の変化を独立して予測するためには使用できません。他の定数セットは異なる程度の違いを持っており、S1(セパレータ)とFitem2(列挙の中の数字フォーマットの変更)が最も個々の影響を持っています。強い非類似性を持つすべてのタスクは付録B.4に示されています。
4.2 プロンプトの小さな変動が大きなパフォーマンスの違いをもたらすことがよくあります
表2は、フォーマットの単一の定数を変更すること(例えば、task322でのケーシング)が大きな精度の違いをもたらすタスクの選択を示しています。
https://scrapbox.io/files/65b84263f811b100286708ec.png
Figure 6は、使用される採点基準に関係なく、これらの原子的変化の重要な比率が大きな精度の変化と関連していることを示しています。例えば、正確なプレフィックスマッチングを採点基準として使用する場合、原子的変化の24%が少なくとも5ポイントの精度変化を伴っています(確率ランキングを使用する場合は11%)
https://scrapbox.io/files/65b8440cfbe1f800236ce1d4.png
プロンプトフォーマットの精度の空間は非常に非単調であり、その空間を対象としたローカルサーチアルゴリズムの効果が低下します。プロンプトフォーマットのトリプル(p1、p2、p3)を考え、pi+1がpiに原子的変化を加えることによって得られるとします。プロンプトフォーマットの空間がスムーズであれば、トリプルの精度がiについて厳密に単調であるべきだと私たちは主張します。13の選択肢問題と11の非選択肢問題の24タスクを選び、それぞれのタスクについて300個の(p1、p2、p3)トリプルをサンプリングし、各piの精度を250サンプルで計算します(正確なプレフィックスマッチングを使用)。多肢選択タスクでは32.4%、非多肢選択タスクでは33.6%のトリプルが単調でした。トリプル内でランダムにシャッフルすると33.3%の確率で単調性が生じるため、この結果は、ローカルスムーズなサーチスペースを必要とするシミュレーテッドアニーリングなどのローカルサーチメカニズムが効果的でない可能性を示唆しています。
4.4 プロンプトフォーマットはプロンプトの埋め込みに対する識別可能な変換です
プロンプトフォーマットの選択は、その結果としてのパフォーマンスへの影響が予測しにくい場合でも、入力の決定的な変換を表しています。私たちは、プロンプトの埋め込みを、最初のトークンを生成する直前に、入力プロンプト全体を処理するときに得られる最後の隠れ層として表します。私たちは、フォーマットの選択がこの埋め込みに識別可能な変換をもたらすことを示し、これはフォーマットが出力確率分布の変換と見なすことができることを示唆しています。
各タスクおよび{1, 5}ショットの設定の両方について、LLaMA-2-7Bから10個のランダムにサンプリングされた有効なフォーマットに対応するプロンプトの埋め込みを1000の評価例から収集します。私たちは、プロンプトの埋め込みの上位n主成分からプロンプトフォーマットへのマッピングを行うXGBoost(Chen & Guestrin, 2016)分類器を訓練します。私たちは、元のプロンプトの埋め込みが4,0964のサイズであるにもかかわらず、上位100の主成分を使用するだけで、分析された全31タスクにおいて≥0.98の精度でフォーマットの識別を行う分類器が得られることを発見しました。図7は、主成分の固定数が与えられたフォーマット分類の精度を示しています。私たちは、上位2つの成分だけが与えられた分類器の精度が、それらが表すプロンプトのパフォーマンスの広がりと中程度に相関していることを発見しました(0.424、p = 8.04 · 10−6;5ショット設定で0.555;正確なプレフィックスマッチングを使用)。
4.5 プロンプトフォーマットスペースの高速探索:FORMATSPREAD
セクション4.2では、妥当なフォーマットの空間からたった10のフォーマットをサンプリングするだけでも、多くのタスクで大きなパフォーマンスの広がりが観察されることを示しました。しかし、これはフォーマットの数を増やした場合にタスクが示す広がりの下限に過ぎません。たとえば、約17%のタスクは、10から20のサンプルフォーマットに増やしたときに少なくとも5ポイントの精度ポイントで広がりが増加すると予想されます。Figure 8は、500のフォーマットを250サンプルずつ評価し、期待される利益を計算することによって、フォーマットの数を増やすことで広がりがどのように増加するかを定量化しています。
https://scrapbox.io/files/65b8445ad1733600247e8283.png
図9は、予算E(セクション3.2)に対して、トンプソンサンプリング、UCB、ナイーブサンプリングの効率を比較し、パフォーマンスの広がりを推定します。正確なレポートを確保するために、私たちは各方法で選択された最高および最低のパフォーマンスのフォーマットの真の広がりをすべてのデータを使用して計算し、表示します。51,200の評価予算で、トンプソンサンプリングは真の広がりから1精度ポイント以内の広がりを得ますが、ナイーブサンプリングは4ポイント以内、UCBは11ポイント以内の広がりを見つけます。
https://scrapbox.io/files/65b8446a0e582b0024793b63.png
最後に、推論が高価ないくつかのモデルに対してFORMATSPREADを使用して感度を測定します。40,000の評価予算と320のプロンプトフォーマットで、1ショットLLaMA-2-70B(4ビット量子化(Dettmers et al., 2022)を使用して実行)は、53のタスクで0.171(平均=0.221、標準偏差=0.200、確率ランキングを使用)の中央値の広がりをもたらしました。タスクの25%は0.292以上の広がりを持ち、最大広がりは0.876でした。また、GPT-3.5は53のタスクで0.064(平均=0.110、標準偏差=0.115、正確なプレフィックスマッチングを使用、フルロジットにアクセスできないため)の中央値の広がりをもたらし、タスクの25%は0.148以上の広がりを持ち、最大広がりは0.562でした。これは、大規模モデルでもフォーマットに対する感度が依然として存在することを示しています。5ショットLLaMA-2-70Bは依然として高い広がりを示し、タスクの25%が0.310の広がりを持ち、最大は0.841でした。図23に広がりの視覚化を示し、表6に最良および最悪のフォーマットのリストを示します。
https://scrapbox.io/files/65b84495e36c760025e3bc26.png
https://scrapbox.io/files/65b844b851809b00251dd3a3.png
5 関連研究
モデルパラメータを変更せずに与えられたタスクに最適なプロンプトを自動的に見つけるという課題は、LLMの常に改善されているがやや予測不可能なパフォーマンスを考慮して、最近注目を集めています。以前の研究は、最適なプロンプトを発見することに重点を置いており、勾配ベースの方法は効果的ですが、しばしば流暢でない、または不自然なプロンプトにつながることがあります(Shin et al., 2020)。これはランジュバン動力学ベースの方法(Shi et al., 2022)で軽減できます。別のアプローチは、プロンプトとタスクの連続的な表現を学習し、最適化し、モデルへの入力として挿入することです(Qin & Eisner, 2021; Lester et al., 2021; Ding et al., 2022; Ilharco et al., 2023)。これらの方法もLLMのパラメータへのアクセスを必要とするため、APIの背後にあるモデルには適用できません。対照的に、FORMATSPREADはモデル内部へのアクセスを仮定しません。以前の勾配フリーの作業は、人間が書いたプロンプトの編集ベースの列挙(Prasad et al., 2023)、強化学習(Deng et al., 2022)、LLM自体の使用(Zhou et al., 2023; Gao et al., 2021)に焦点を当てています。これらの作業は、プロンプトまたは指示の意味が変更されても、競争力のあるタスクパフォーマンスを達成することを目指しています。私たちの知る限り、私たちは意味的同等性の典型的な例であるプロンプトフォーマットのバリアンスに特に焦点を当てた最初の研究です。
ジェイルブレイクは、不適切または機密な応答を誘発するために意図的にプロンプトを操作する行動、または意図的に公開されていないプロンプトの部分を明らかにする行動を指します。目的は私たちの研究とは異なりますが、ジェイルブレーキングの研究(Wei et al., 2023; Zou et al., 2023)は、最低パフォーマンスのプロンプトを見つけるという基本的な技術的問題を共有しています。私たちの方法は異なりますが、Wei et al.(2023)は、敵対的プロンプトデザインをガイドするために人間が生成した攻撃を評価し、Zou et al.(2023)は複数のモデルにまたがって勾配ベースの検索方法を使用します。 一部の既存の研究は、モデルパフォーマンスに対する特定のプロンプトデザイン選択の影響を探求しています。例えば、プロンプトの言語(Gonen et al., 2022)や数発の例の順序(Lu et al., 2022)です。他の研究は、連続的なプロンプト表現のテキスト解釈に焦点を当てています(Khashabi et al., 2022)。自己回帰型LLMを超えて、既存の研究はマスク言語モデルのパフォーマンスバリアンスに焦点を当てています(Elazar et al., 2021; Jiang et al., 2020)。私たちの研究は、他の分野の努力に続き、研究評価における偶発的な特徴の影響を探求しています。例えば、ディープ強化学習(Islam et al., 2017; Henderson et al., 2018)や統計的機械翻訳(Clark et al., 2011)などです。
6 議論
私たちはFORMATSPREADというアルゴリズムを導入し、プロンプトフォーマットの選択にわたるパフォーマンスの広がりを推定します。私たちはFORMATSPREADを使用して、数発の学習設定で広く使用されているオープンソースのLLMの分類タスクにおける広がりを評価します。私たちは、モデルの選択に関わらず広がりが大きいことを発見しました。これは、モデルサイズの増加、数発の例の数の増加、または指示チューニングを使用しても変わりません。FORMATSPREADは、ユーザー指定の計算予算の下で妥当なプロンプトフォーマットの空間を効率的に検索するように設計されています。たとえば、2500のテスト例と320の妥当なフォーマットを持つタスクの検索空間全体の5%のみを探索する計算予算がある場合、私たちは真の広がりから2精度ポイント以内の広がりを推定することができます。
また、プロンプトフォーマットの空間を特徴づけ、それが大部分が非単調であり、少数の原子的特徴が単独でパフォーマンスの予測因子になることはほとんどないことを発見しました。ただし、フォーマットの埋め込みの分離可能性は観察されたパフォーマンスの広がりと高い相関関係があります。これらの発見は、ローカルサーチ方法が有利でないことを前提とした検索手順の設計に役立ちました。
私たちの発見は、任意のプロンプトフォーマット選択によるパフォーマンスの広がりが、ベンチマークタスクでのモデルの比較を含む、モデルのパフォーマンスについての結論に影響を与える可能性があることを示唆しています。したがって、LLMをプロンプトベースの方法で評価する作業は、妥当なフォーマット全体にわたるパフォーマンスの範囲を報告することで恩恵を受けるでしょう。ただし、多くのユースケースでは単一フォーマットの評価が十分である可能性があることを強調したいです。たとえば、LLMをベースにシステムを構築する研究者や実践者にとっては、そのような大きなシステムで十分に機能する単一のプロンプトフォーマットを選択することは有効な方法論的選択です。ただし、自分たちのシステムを既存のモデルと比較する際には、FORMATSPREADを計算することを推奨します。これにより、フェアなベースライン表現が保証されます。さらに、FORMATSPREADはモデルやシステムの下限パフォーマンスを特定するために使用できます。たとえば、Figure 1のようなステレオタイプ分類など、社会的に影響力のあるタスクを使用する場合、非敵対的なユーザーが遭遇する可能性のある精度の範囲を報告することが重要です。また、理論的心などの一般的な能力をモデルが持っていると主張する場合、偶発的な特徴に対するロバスト性を考慮することが重要です。また、モデルのバイアスを探求する際に報告することも有益です。今後の研究で、トレーニング中または既にトレーニングされたモデルで、多様なフォーマットの選択に対してモデルをロバストにするための正則化手順を開発することを期待します。
7 制限事項
私たちの文法で定義されたように、すべての同等なフォーマットは人間の読者にとって意味的に同等です。しかし、それらの中には他よりも人間が使用する可能性が高いものがあります。スペースやセパレータは自然に発生するフォーマットから着想を得ていますが、<sep>のようなスペーシングや::のようなセパレータなど、いくつかの値はより珍しいです。文脈的な制約により、例えばスペースやセパレータの望ましくない組み合わせを禁止することができます。しかし、フォーマットには複数の有効な解析があり、一部は他よりも不自然な文字の組み合わせになりやすいです。例えば、データサンプルが「Passage: Lorem ipsum dolor sit amet. Answer: Yes」とする場合、ピリオド.を文章の一部と見なすかフォーマットの一部と見なすかによって、B(2)2(B1(Passage, ': ', id), B1(Answer, ': ', id), ' ')またはB(2)2(B1(Passage, ': ', id), B1(Answer, ': ', id), '. ')と解析することができます。この研究では、タスク全体で前者の解析を選択して完全な文章を保証しています。これにより、同等のフォーマットがいくつかの一般的でないが、意味的には同等の文字の組み合わせを持つ場合があります。例えば、B(2)2(B1(Passage, ': ', id), B1(Answer, ': ', id), '; ')です。この最後のフォーマットは上記の例で以下の文字列形式を持ちます:「Passage: Lorem ipsum dolor sit amet.; Answer: Yes」。これらのケースとそれ以外の場合でも、私たちは高いパフォーマンスの広がりを観察します。文脈的関係は、エンドユーザーが望む場合、これらのケースを制限することもできます。
さらに、私たちは入力指示と入力フィールドの長さが比較的短いタスクに評価を集中しています(タスク選択の詳細についてはB.1を参照)。今後の研究では、入力の長さが最終的なパフォーマンスにどのように影響するかを調査することができます。