Slide 1

Slide 1 text

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

Slide 2

Slide 2 text

目次 1. 自然言語処理における2つの大きな変化 2. プロンプトとは 3. Prompt Template Engineering 4. Prompt Answer Engineering 5. Multi-Prompt Learning 6. プロンプト手法の学習 7. アプリケーション 8. プロンプト関連 9. チャレンジ 10.まとめ 2

Slide 3

Slide 3 text

1. 自然言語処理における 2つの大きな変化

Slide 4

Slide 4 text

1.自然言語処理における2つの大きな変化 自然言語処理の変遷 初期の自然言語処理(NLP) ◼教師あり学習 ➢ターゲットタスクの入出力例のデータセットのみで学習 ◼特徴量エンジニアリングに大きく依存 ➢適切な帰納的バイアスを与えるためにドメイン知識を使用 ニューラルネットワークの出現 ◼特徴を学習できるようなアーキテクチャ設計 ➢CNN, Reccurent, self-attention, etc. ◼完全教師あり学習のパラダイムは縮小傾向 →事前学習とFine-Tuningのパラダイムへ 4 Task Relation

Slide 5

Slide 5 text

1.自然言語処理における2つの大きな変化 事前学習とFine-Tuningのパラダイムへ 言語モデル(LM)を事前に学習 ◼観測したテキストデータの確率を予測 ➢生のテキストデータは豊富にあるため大規模なデータセットで学習可能 ◼ロバストな汎用特徴量を学習 事前学習したLMをFine-Tuning ◼追加パラメータを導入し,タスク固有の目的関数を設計 ➢様々な下流タスクに適用 ◼目的関数の設計に焦点 ➢Ex.) 文書から顕著なセンテンスを予測する損失関数を導入→テキスト要約 事前学習,プロンプト,予測へ 5 Task Relation

Slide 6

Slide 6 text

1.自然言語処理における2つの大きな変化 事前学習,プロンプト,予測 下流タスクをプロンプトでLM学習と同様のタスクに再定義 ◼適切なプロンプトを選択することでモデルの振る舞いを操作 ➢タスクに特化した追加学習なしで目的の出力を予測 ◼適切なプロンプトの組による教師無し学習 ➢1つのLMで多くのタスクを解ける ➢プロンプトエンジニアリングが必要 6 Task Relation I missed the bus today. I felt so __________. English: I missed the bus today. French: ____________________ Ex1. Ex2.

Slide 7

Slide 7 text

2. プロンプトとは

Slide 8

Slide 8 text

2.プロンプトとは 問題設定 従来: 教師あり学習 ◼入力𝑥(テキスト)からモデル𝑃(𝑦|𝑥; 𝜃)に基づき出力𝑦を予測 ◼入出力のペアを含むデータセットによりパラメータ𝜃を学習 ◼問題点: 出力𝑦が必要 プロンプトの基本 ◼入力𝑥自体の確率𝑃(𝑥; 𝜃)をモデル化したLMを学習 ◼学習した確率𝑃(𝑥; 𝜃)を用いて𝑦を予測 ➢次の3ステップで最高性能のො 𝑦 8

Slide 9

Slide 9 text

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

Slide 10

Slide 10 text

2.プロンプトとは プロンプトを設計する上で考えるべきこと 事前学習済みLMの選択 ◼𝑃(𝑥; 𝜃)を計算するために使用 Prompt Template Engineering ◼適切なテンプレートを選択することはモデルがどのタスクを実行する かにも大きな影響を与えるため重要 Prompt Answer Engineering ◼タスクによってZをマッピング関数と一緒にしたいときと別の設計にし たいときがある パラダイムの拡張 ◼精度や適用性に影響 プロンプトベースの学習戦略 ◼プロンプト,LM,両方を同時に学習する方法など様々 10

Slide 11

Slide 11 text

2.プロンプトとは プロンプトベース学習の重要概念 11

Slide 12

Slide 12 text

3. Prompt Template Engineering

Slide 13

Slide 13 text

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.

Slide 14

Slide 14 text

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

Slide 15

Slide 15 text

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

Slide 16

Slide 16 text

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

Slide 17

Slide 17 text

4. Prompt Answer Engineering

Slide 18

Slide 18 text

4. Prompt Answer Engineering Prompt Answer Engineeringとは 効果的な予測モデルとなる回答空間𝑍と出力𝑌へのマップを探索 考慮が必要な2つの側面 ◼回答形式の決定 ◼回答空間の設計手法選択 18

Slide 19

Slide 19 text

4. Prompt Answer Engineering 回答形式の決定 回答形式は粒度を特徴づける ◼Token: 事前学習済みLMの語彙に含まれるトークンまたはその部分集合 ◼Span: 短い複数トークンのスパン ◼Sentence: 文または文章 どの形式を選択するかはタスクに依存 ◼TokenやSpan: 関係抽出, 名前付きエンティティ認識, 分類タスク ◼Sentence: 言語生成タスク, 多肢選択問題回答 19

Slide 20

Slide 20 text

4. Prompt Answer Engineering 回答空間の設計手法選択 適切な回答空間𝑍を設計する方法と出力空間へのマッピング方法 手動設計 ◼潜在的な回答空間𝑍と𝑌へのマッピングを人間が手動で設計 ➢無制約空間: 同一性マッピングを使用して回答𝑧を最終出力𝑦に直接マッピング ➢制約空間: 入力テキストの他の側面に関連する単語のリストを手動で設計 ◼問題点 ➢回答とベースとなるクラスYのマッピングが必要 ➢LMが理想的な予測性能を達成するために最適でない可能性 20

Slide 21

Slide 21 text

4. Prompt Answer Engineering 回答空間の設計手法選択 離散空間の自動設計 ◼Answer Paraphrasing([Jiang, 21]) ➢最初の回答空間Zから言い換えを使用して回答空間を拡張 ◼Prune-then-Search([Schick, 21]) ➢複数のもっともらしい答えZからなる最初の刈り込まれた回答空間を生成 ➢アルゴリズムが刈り込まれた空間上を検索して最終的な回答のセットを選択 ◼Label Decomposition([Chen, 22]) ➢関係抽出を行う際、各関係ラベルを自動的に構成語に分解 連続空間の自動設計 ◼各クラスラベルに仮想トークンを割り当て各クラスのトークン埋め込み をプロンプトトークン埋め込みとともに最適化 ([Hambardzumyan, 21]) ◼勾配降下で最適化したトークンを使用する研究はほとんどない 21

Slide 22

Slide 22 text

5. Multi-Prompt Learning

Slide 23

Slide 23 text

5. Multi-Prompt Learning Multi-Prompt Learningとは マルチプロンプト学習 ◼複数のプロンプトを使用することで性能が向上することが実証 ◼シングルプロンプトをマルチに拡張する方法がいくつかある 23 マルチプロンプト学習の戦略

Slide 24

Slide 24 text

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

Slide 25

Slide 25 text

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

Slide 26

Slide 26 text

5. Multi-Prompt Learning Prompt Composition and Decomposition Prompt Composition ◼サブタスクに分解可能なタスクに対してサブタスクごとにプロンプトを 使用することで複合プロンプトを得る Prompt Decomposition ◼1つのサンプルに対して複数の予測を実行するタスクで全体を1つのプロ ンプトで表せないときにサブプロンプトに分割する 26

Slide 27

Slide 27 text

6.プロンプト手法の学習

Slide 28

Slide 28 text

6. プロンプト手法の学習 Training Settings プロンプト学習は下流タスクに対してLMを明示的に学習せずに予測 ◼タスクを指定するために正義されたcloseやprefixプロンプトを埋められる ◼ゼロショット設定 プロンプトを用いてモデルを明示的に学習する方法 ◼フルデータ学習,Few-shot学習 ➢プロンプト学習は後者で特に有用 ◼プロンプト学習は十分に学習サンプルがない場合にも有用 28

Slide 29

Slide 29 text

6. プロンプト手法の学習 パラメータの更新方法 5通り プロンプトレスfine-tuning ◼事前学習済みLMのパラメータを下流の学習サンプルで更新 ◼利点 ➢全パラメータをチューニンフすることでより大きな訓練データセットに適合される ◼欠点 ➢:小さいデータセットでオーバーフィットしたり,安定した学習ができない チューニングなしプロンプト ◼プロンプトに基づいて事前学習済みLMのパラメータを変更せず回答を生成 ◼利点 ➢パラメータ更新がないため致命的な忘却がなく,ゼロショット設定に適用可能 ◼欠点 ➢高い精度を達成するためには高度なプロンプトエンジニアリングが必要 29

Slide 30

Slide 30 text

6. プロンプト手法の学習 パラメータの更新方法 5通り Fixed-LM Prompt Tuning ◼学習済みLMのパラメータ以外のプロンプトに関するパラメータを下流タスク の学習サンプルを用いて最適化 ◼利点 ➢LMの知識を保持することができ,Few-shotの設定に適用可能 ◼短所 ➢ゼロショット設定に適用できない,大規模データ設定では表現力に限界 Fixed-prompt LM Tuning ◼Fine-Tuning+固定パラメータを持つプロンプトでモデルの動作を指定 ◼利点 ➢Few-shot設定で効率的な学習が可能 ◼欠点 ➢テンプレートや回答エンジニアリングが必要 30

Slide 31

Slide 31 text

6. プロンプト手法の学習 パラメータの更新方法 5通り Prompt+LM Tuning ◼プロンプトと事前学習済みLMの両方のパラメータをFine-Tuning ◼利点 ➢表現力が高くデータ量の多い設定に適する ◼欠点 ➢モデルの全パラメータの学習と保存が必要,小さなデータセットに過剰適合する可能性 31

Slide 32

Slide 32 text

9. チャレンジ

Slide 33

Slide 33 text

9. チャレンジ Prompt Design 分類と生成以外のタスク ◼プロンプトベースの学習は分類・生成タスクに限定されており,情報抽出や テキスト分析タスクへの応用が議論されていない 構造化情報を使ったプロンプト ◼ツリーやグラフ等の様々な構造で最適に表現するプロンプトは未開拓 テンプレートと回答の関わり ◼テンプレートと回答の最適な組み合わせを探索・学習する方法が不十分 33

Slide 34

Slide 34 text

9. チャレンジ Prompt Answer Engineering 多クラス分類タスク ◼クラスが多すぎる場合最適な回答空間の選択が難しい 長文回答の分類タスク ◼マルチトークンの回答を使用するとき,LMでデコードする最適な方法がわか らない. 生成タスクの複数回答 ◼複数の参考文献を用いた学習プロセスを誘導する方法は未解決の研究課題 34

Slide 35

Slide 35 text

9. チャレンジ Multiple Prompt Learning Prompt Ensemble ◼プロンプト数が増えるにつれて空間と時間の複雑さが増加 ➢異なるプロンプトから知識を抽出する方法は十分に研究されていない ◼アンサンブルに適したプロンプトの選択方法も不十分 Prompt Composition and Decomposition ◼サブプロンプトをどのように選択するかが重要 ◼一般的な考え方を様々な設定で検討する必要 Prompt Augmentation ◼既存の手法は入力長で制限 ➢有効なサンプルの選択法や順序の並びは問題 ◼異なるタスクに対して個々のプロンプトを設定するか,プロンプト同士の相 互作用を調節するか等 35

Slide 36

Slide 36 text

9. チャレンジ Selection of Tuning Strategy プロンプト,LMのパラメータをチューニングする方法は様々 ◼手間間のトレードオフに関する体系的な理解は不十分 ◼異なる戦略のトレードオフに関する体系的な調査が必要 36