Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Pre-train, Prompt, and Predict: A Systematic Su...

daiki
August 23, 2023

Pre-train, Prompt, and Predict: A Systematic Survey of Prompting Methods in Natural Language Processing

Liu, Pengfei, et al. “Pre-train, prompt, and predict: A systematic survey of prompting methods in natural language processing.” ACM Computing Surveys 55.9 (2023): 1-35. https://dl.acm.org/doi/10.1145/3560815

daiki

August 23, 2023
Tweet

More Decks by daiki

Other Decks in Research

Transcript

  1. Pre-train, Prompt, and Predict: A Systematic Survey of Prompting Methods

    in Natural Language Processing Liu, Pengfei, et al. “Pre-train, prompt, and predict: A systematic survey of prompting methods in natural language processing.” ACM Computing Surveys 55.9 (2023): 1-35. https://dl.acm.org/doi/10.1145/3560815
  2. 目次 1. 自然言語処理における2つの大きな変化 2. プロンプトとは 3. Prompt Template Engineering 4.

    Prompt Answer Engineering 5. Multi-Prompt Learning 6. プロンプト手法の学習 7. アプリケーション 8. プロンプト関連 9. チャレンジ 10.まとめ 2
  3. 2.プロンプトとは プロンプト学習のステップ 1. 入力テキスト𝑥をプロンプト𝑥′ = 𝑓𝑝𝑟𝑜𝑚𝑝𝑡 (𝑥)に変換 ◼入力𝑥のスロット[X]→中間回答𝑧用のスロット[Z] 2. LMのスコアを最大にする

    Ƹ 𝑧を探索 ◼事前学習済みLM 𝑃(⋅; 𝜃)を用いて回答候補𝑧の集合を探索 3. 最高スコアの回答 Ƹ 𝑧から最高スコアの出力ො 𝑦へマッピング 9 回答集合 zで埋めたときのLM確率 I love this movie. [X] Overall, it was a [Z] movie. [X] Overall, it was a [Z] movie. Z={excellent, good, OK, bad, horrible} best Overall, it was a good movie. 入力𝑥 Step 1 Step 2 Step 3 出力𝑦 Ƹ 𝑧 = good
  4. 2.プロンプトとは プロンプトを設計する上で考えるべきこと 事前学習済みLMの選択 ◼𝑃(𝑥; 𝜃)を計算するために使用 Prompt Template Engineering ◼適切なテンプレートを選択することはモデルがどのタスクを実行する かにも大きな影響を与えるため重要

    Prompt Answer Engineering ◼タスクによってZをマッピング関数と一緒にしたいときと別の設計にし たいときがある パラダイムの拡張 ◼精度や適用性に影響 プロンプトベースの学習戦略 ◼プロンプト,LM,両方を同時に学習する方法など様々 10
  5. 3. Prompt Template Engineering Prompt Template Engineeringとは プロンプト関数𝑓𝑝𝑟𝑜𝑚𝑝𝑡 (𝑥)を作成するプロセス ◼人間やアルゴリズムがモデルで事項することが期待される最適なテン

    プレートを探索 2種類のプロンプトの形状 ◼Close prompts: 文字列の空白を埋める ➢マルクLMを使って解くタスク ◼Prefix prompts: 文字列の接尾辞を続ける ➢生成に関するタスク,自動回帰LMを用いて解くタスク 13 Close Prompts I love this movie, it is a [Z] movie. Prefix Prompts I love this movie. What's the sentiment of the review? [Z] Ex.
  6. 3. Prompt Template Engineering Manual and Automated Template Engineering Manual

    Template Learning ◼人間の内省に基づいて直感的なテンプレートを手動で作成 Automated Template Learning ◼テンプレート設計プロセスを自動化 ◼2種類に分けられる ➢Discrete Prompts:プロンプトが実際のテキスト文字列 ➢Continuous Prompts:プロンプトが直接LMの埋め込み空間に記述 14
  7. 3. Prompt Template Engineering Discrete Prompts Discrete Prompts ◼離散空間に記述されたテンプレートを自動的に検索する ◼D1:

    Prompt Mining([Jiang, 20]) ➢入力xと出力yのセットから自動的にテンプレートを見つける ◼D2: Prompt Paraphrasing ([Haviv, 21]) ➢既存のプロンプトを他の候補プロンプトのセットに言い換えてターゲットタスク で最も高い学習精度を達成するプロンプトを選択 ◼D3: Gradient-based Search([Wallace, 19]) ➢勾配ベースの探索でトークンを反復的に探索 ◼D4: Prompt Generation([Gao, 21]) ➢生成モデルを用いてプロンプトを生成 ◼D5: Prompt Scoring([Davison, 19]) ➢候補となるテンプレートからプロンプトのスコアを出して選択 15
  8. 3. Prompt Template Engineering Continuous Prompts Continuous Prompts ◼埋め込み空間で直接プロンプトを作成 ➢テンプレート単語の埋め込みが単語の埋め込みであるという制約を緩和

    ➢テンプレートが事前学習済みLMによってパラメータ化されるという制約を除去 ◼C1: Prefix Tuning ([Li, 21]) ➢LM のパラメータを固定したまま、タスクに特化した連続ベクトルを入力に付加 ◼C2: Tuning Initialized with Discrete Prompts ([Zhong, 21]) ➢すでに作成された離散プロンプトを用いて連続プロンプトの探索を初期化 ◼C3: Hard-Soft Prompt Hybrid Tuning ([Liu, 21]) ➢連続的なプロンプトを学習可能な変数を埋め込み入力に挿入することで学習 16
  9. 4. Prompt Answer Engineering 回答形式の決定 回答形式は粒度を特徴づける ◼Token: 事前学習済みLMの語彙に含まれるトークンまたはその部分集合 ◼Span: 短い複数トークンのスパン

    ◼Sentence: 文または文章 どの形式を選択するかはタスクに依存 ◼TokenやSpan: 関係抽出, 名前付きエンティティ認識, 分類タスク ◼Sentence: 言語生成タスク, 多肢選択問題回答 19
  10. 4. Prompt Answer Engineering 回答空間の設計手法選択 適切な回答空間𝑍を設計する方法と出力空間へのマッピング方法 手動設計 ◼潜在的な回答空間𝑍と𝑌へのマッピングを人間が手動で設計 ➢無制約空間: 同一性マッピングを使用して回答𝑧を最終出力𝑦に直接マッピング

    ➢制約空間: 入力テキストの他の側面に関連する単語のリストを手動で設計 ◼問題点 ➢回答とベースとなるクラスYのマッピングが必要 ➢LMが理想的な予測性能を達成するために最適でない可能性 20
  11. 4. Prompt Answer Engineering 回答空間の設計手法選択 離散空間の自動設計 ◼Answer Paraphrasing([Jiang, 21]) ➢最初の回答空間Zから言い換えを使用して回答空間を拡張

    ◼Prune-then-Search([Schick, 21]) ➢複数のもっともらしい答えZからなる最初の刈り込まれた回答空間を生成 ➢アルゴリズムが刈り込まれた空間上を検索して最終的な回答のセットを選択 ◼Label Decomposition([Chen, 22]) ➢関係抽出を行う際、各関係ラベルを自動的に構成語に分解 連続空間の自動設計 ◼各クラスラベルに仮想トークンを割り当て各クラスのトークン埋め込み をプロンプトトークン埋め込みとともに最適化 ([Hambardzumyan, 21]) ◼勾配降下で最適化したトークンを使用する研究はほとんどない 21
  12. 5. Multi-Prompt Learning Prompt Ensembling 推論時に複数のプロンプトを使用して予測を行うプロセス ◼利点 ➢ 異なるプロンプトが持つ相補的な利点を活用可能 ➢

    プロンプトエンジニアリングのコストを軽減 ➢ 下流のタスクの性能を安定させる ◼Uniform averaging([Jiang, ]) ➢ 異なるプロンプトからの確率の平均 ◼Weighted averaging([Jiang, ]) ➢ プロンプトによって他のプロンプトよりも性能が高いものがあることを考慮 ◼Majority voting([Jiang, ]) ➢ 分類タスクで異なるプロンプトからの結果を組み合わせるために使用 ◼Knowledge distillation([Schick, 21]) ➢ 手動で作成されたテンプレートと回答のペアごとに別々のモデルを訓練 ➢ アンサンブルモデルでラベルのないデータセットにアノテーションを付ける ➢ 最終的なモデルはアノテーションを付けたデータセットで学習 ◼Prompt ensembling for text generation ➢ 回答文の次の単語のアンサンブル確率に基づいて出力を生成 24
  13. 5. Multi-Prompt Learning Prompt Augmentation 実際のプロンプトに対して追加のプロンプトを与える ◼Sample Selection ➢追加するプロンプトの種類によって性能が変化 ➢埋め込み空間で入力に近い例をサンプリング

    ◼Sample Ordering ➢追加するプロンプトの順番によって性能が変化 ➢学習サンプルの最適な順を探索することで性能を向上 25 China’s capital is [Z]. Great Britain’s capital is London. Japan’s capital is Tokyo. China’s capital is [Z]. augment
  14. 5. Multi-Prompt Learning Prompt Composition and Decomposition Prompt Composition ◼サブタスクに分解可能なタスクに対してサブタスクごとにプロンプトを

    使用することで複合プロンプトを得る Prompt Decomposition ◼1つのサンプルに対して複数の予測を実行するタスクで全体を1つのプロ ンプトで表せないときにサブプロンプトに分割する 26
  15. 6. プロンプト手法の学習 パラメータの更新方法 5通り プロンプトレスfine-tuning ◼事前学習済みLMのパラメータを下流の学習サンプルで更新 ◼利点 ➢全パラメータをチューニンフすることでより大きな訓練データセットに適合される ◼欠点 ➢:小さいデータセットでオーバーフィットしたり,安定した学習ができない

    チューニングなしプロンプト ◼プロンプトに基づいて事前学習済みLMのパラメータを変更せず回答を生成 ◼利点 ➢パラメータ更新がないため致命的な忘却がなく,ゼロショット設定に適用可能 ◼欠点 ➢高い精度を達成するためには高度なプロンプトエンジニアリングが必要 29
  16. 6. プロンプト手法の学習 パラメータの更新方法 5通り Fixed-LM Prompt Tuning ◼学習済みLMのパラメータ以外のプロンプトに関するパラメータを下流タスク の学習サンプルを用いて最適化 ◼利点

    ➢LMの知識を保持することができ,Few-shotの設定に適用可能 ◼短所 ➢ゼロショット設定に適用できない,大規模データ設定では表現力に限界 Fixed-prompt LM Tuning ◼Fine-Tuning+固定パラメータを持つプロンプトでモデルの動作を指定 ◼利点 ➢Few-shot設定で効率的な学習が可能 ◼欠点 ➢テンプレートや回答エンジニアリングが必要 30
  17. 9. チャレンジ Multiple Prompt Learning Prompt Ensemble ◼プロンプト数が増えるにつれて空間と時間の複雑さが増加 ➢異なるプロンプトから知識を抽出する方法は十分に研究されていない ◼アンサンブルに適したプロンプトの選択方法も不十分

    Prompt Composition and Decomposition ◼サブプロンプトをどのように選択するかが重要 ◼一般的な考え方を様々な設定で検討する必要 Prompt Augmentation ◼既存の手法は入力長で制限 ➢有効なサンプルの選択法や順序の並びは問題 ◼異なるタスクに対して個々のプロンプトを設定するか,プロンプト同士の相 互作用を調節するか等 35