Re33:读论文 Pre-train, Prompt, and Predict: A Systematic Survey of Prompting Methods in Natural Languag

简介: 本文介绍了prompt的统一定义和当前所用的方法。

1. 什么是prompt-based learning


image.png


示例:

  1. 推文:I missed the bus today.

预测情感的话就在后面加上:I felt so ____

  1. 翻译的x ′  :English: I missed the bus today. French: _____


术语列表:

image.png


子任务示例:

8c2f1673edde445fa0b407ab10615d82.png

image.png

优势:可以直接应用于小样本甚至零样本学习上


1.1 Prompt Addition

  1. slot在template中间叫cloze prompt,在尾部叫prefix prompt
  2. template不一定要是自然语言tokens,也可以是假词(也能嵌入到连续向量)或者直接就是连续向量
  3. slots数不固定


1.2 Answer Search

image.png

基于

image.png

计算

image.png


argmax search或sampling


1.3 Answer Mapping

image.png


2. NLP学习范式的变迁


  1. Fully supervised learning:传统机器学习范式

为了向模型提供合适的inductive bias,早期NLP模型依赖特征工程,神经网络出现后依赖architecture engineering。

在这一阶段出现了少量预训练模型(如word2vec和GloVe),但只占模型参数的一小部分。

  1. pre-train and fine-tune

预训练固定结构的模型(语言模型LM),用以预测未观测到的文本数据的结果。

依赖objective engineering。

不利于探索模型架构:1. 无监督预训练使structural priors选择范围小。2. 测试不同结构的预训练代价太高。

  1. pre-train, prompt, and predict

通过引入文本prompt,下游任务与预训练模型更相似。可以直接不训练。

依赖prompt engineering。

35d649465bb945429eecde0daeb87d00.png


3. Design Considerations for Prompting


44098a69c4444696adaaccc60d5dc7b2.png

3.1 Pre-trained Model Choice

对本文预训练模型介绍部分的笔记放在了另一篇博文中:预训练语言模型概述(持续更新ing…)


训练目标的选择取决于对特定prompting任务的适配,如left-to-right AR LMs适用于prefix prompts,reconstruction目标适用于cloze prompts。标准LM和FTR目标更适宜于文本生成任务。


prefix LM和encoder-decoder架构自然适用于文本生成任务,但也可以根据prompt修改得适用于其他任务。


3.2 Prompt Engineering

prompt template engineering→首先选择prompt shape,接下来考虑用manual or automated的方式


  1. Prompt Shape

cloze prompts VS. prefix prompts

  1. Manual Template Engineering
  2. Automated Template Learning
  • discrete prompts / hard prompts:文本(其实这一部分总容易让我联想到传统NLG使用模板/规则的方法,本文参考文献里还真的有Re3Sum1,但是似乎在正文中没有引用过)

(1)Prompt Mining:从语料库中挖掘

(2)Prompt Paraphrasing:复述已有的seed prompt

(3)Gradient-based Search

(4)Prompt Generation:直接视作文本生成任务

(5)Prompt Scoring

  • continuous prompts / soft prompts:LM嵌入域的向量

image.png

  • static
  • dynamic


3.3 Answer Engineering

包括对Z ZZ和mapping function的设计


  1. answer shape:粒度
  • tokens
  • spans:常用于 cloze prompts
  • sentence:常用于 prefix prompts


  1. answer design method

image.png

  1. Continuous Answer Search:略


3.4 Multi-Prompt Learning

image.png


  1. Prompt Ensembling:连续prompts可能是通过不同初始化或随机种子学到的
  • Uniform averaging

image.png

  • Weighted averaging
  • Majority voting
  • Knowledge distillation
  • Prompt ensembling for text generation:逐token ensemble:

image.png


  1. Prompt Augmentation / demonstration learning:细节略

提供answered prompts来类比(学习重复的模式)

  • Sample Selection
  • Sample Ordering


  1. Prompt Composition


  1. Prompt Decomposition


3.5 Training Strategies for Prompting Methods / Prompt-based Training Strategies

  1. Training Settings

不用训练:zero-shot setting(非真,详细略)

full-data learning

few-shot learning


  1. Parameter Update Methods

image.png

  • Promptless Fine-tuning:pre-train and fine-tune strategy

问题是容易过拟合或不鲁棒,容易灾难性遗忘

  • Tuning-free Prompting

可以用answered prompts增强输入:in-context learning

  • Fixed-LM Prompt Tuning:缺点略
  • Fixed-prompt LM Tuning

具体细节略

null prompt

  • Prompt+LM Tuning:优缺点略


4. 应用


4a5514f97ffc4f90a0b08d833ef34a71.png

2c2c5a68776b43eea74eb2595cda8be0.png


具体的论文列表略。


  1. Knowledge Probing
  • Factual Probing / fact retrieval:计算预训练模型的表征包含多少事实知识,关注对模板的学习
  • Linguistic Probing


  1. Classification-based Tasks:如以slot filling的形式实现
  • Text Classification:常用cloze prompts, prompt engineering + answer engineering, few-shot, fixed-prompt LM Tuning
  • Natural Language Inference (NLI):常用cloze prompts,prompt engineering关注少样本学习场景下的template search。answer spaces常从词表中手动提前选好。


  1. Information Extraction:细节略
  • Relation Extraction
  • Semantic Parsing
  • Named Entity Recognition (NER)


  1. “Reasoning” in NLP:细节略
  • Commonsense Reasoning
  • Mathematical Reasoning


  1. Mathematical Reasoning

extractive QA

multiple-choice QA

free-form QA


  1. Text Generation:其他细节略

prefix prompts + AR预训练语言模型:文本摘要、机器翻译

in-context learning

fixed-LM prompt tuning:data-to-text generation


  1. Automatic Evaluation of Text Generation:建模成文本生成任务(套娃是吧)


  1. Multi-modal Learning


  1. Meta-Applications
  • Domain Adaptation(感觉看起来有点像文本风格迁移,所以文本风格迁移应该也有用prompt来做的工作吧?)
  • Debiasing
  • Dataset Construction


数据集:

image.png

2fb866c120444063ab1af45bc1caf3e0.png


5. Prompt-relevant Topics


dba132b499f44aad9cee5398711bcc11.png

  1. Ensemble Learning VS. prompt ensembling
  2. Few-shot Learning

Prompt augmentation / priming-based few-shot learning

  1. Larger-context Learning
  2. Query Reformulation
  3. QA-based Task Formulation
  4. Controlled Generation
  5. Supervised Attention
  6. Data Augmentation


6. Challenges


  1. Prompt Design
  • Tasks beyond Classification and Generation
  • Prompting with Structured Information
  • Entanglement of Template and Answer
  1. Answer Engineering
  • Many-class and Long-answer Classification Tasks
  • Multiple Answers for Generation Tasks
  1. Selection of Tuning Strategy
  2. Multiple Prompt Learning
  • Prompt Ensembling
  • Prompt Composition and Decomposition
  • Prompt Augmentation
  • Prompt Sharing

image.png

  • Selection of Pre-trained Models
  • Theoretical and Empirical Analysis of Prompting
  • Transferability of Prompts
  • Combination of Different Paradigms
  • Calibration of Prompting Methods

概率预测?这部分没看懂这个术语实际上是什么意思?指的是一种模型对某方面的预测倾向,通过一些方式来进行修正吗?


相关文章
|
5月前
|
缓存 JSON 前端开发
最受欢迎的三方库之harmony-utils
harmony-utils 是一款功能丰富且易于使用的 HarmonyOS 工具库,涵盖 APP、设备、屏幕、授权、通知、文件操作、加解密等多种常用功能,帮助开发者高效构建鸿蒙应用。体积小巧(仅约 130KB),性能优越,适用于 OpenHarmony API 12 及以上版本。
257 0
|
前端开发 API UED
React 按需加载 Lazy Loading
随着 Web 应用复杂度增加,页面加载速度成为影响用户体验的关键因素。React 提供了按需加载(Lazy Loading)功能,通过 `React.lazy` 和 `Suspense` 实现动态加载组件,减少初始加载时间,提升性能。本文从基础概念入手,探讨常见问题、易错点及解决方案,并通过代码示例详细说明。
528 0
|
弹性计算 运维 搜索推荐
阿里云建站方案参考:云服务器、速成美站、企业官网区别及选择参考
随着数字化转型的浪潮不断推进,越来越多的企业和公司开始将业务迁移到云端,而搭建一个专业、高效的企业官网成为了上云的第一步。企业官网不仅是展示公司形象、产品和服务的重要窗口,更是与客户沟通、传递价值的关键渠道。随着阿里云服务器和建站产品的知名度越来越高,越来越多的用户选择阿里云的产品来搭建自己的官网。本文将深入探讨在阿里云平台上,如何选择最适合自己的建站方案:云服务器建站、云·速成美站还是云·企业官网。
628 14
阿里云建站方案参考:云服务器、速成美站、企业官网区别及选择参考
|
关系型数据库 数据库 PostgreSQL
PostgreSQL 递归死循环案例及解法
背景 PostgreSQL 提供的递归语法是很棒的,例如可用来解决树形查询的问题,解决Oracle用户 connect by的语法兼容性。 请参考https://yq.aliyun.com/articles/54657 但是如果参与递归查询的数据集有问题,例如数据打结的问题。则会导致递
7350 0
|
机器学习/深度学习 人工智能 JSON
Prompt进阶系列1:LangGPT(从编程语言反思LLM的结构化可复用提示设计框架)
Prompt进阶系列1:LangGPT(从编程语言反思LLM的结构化可复用提示设计框架)
Prompt进阶系列1:LangGPT(从编程语言反思LLM的结构化可复用提示设计框架)
|
机器学习/深度学习 算法 物联网
LISA微调技术解析:比LoRA更低的显存更快的速度
LISA是Layerwise Importance Sampling for Memory-Efficient Large Language Model Fine-Tuning的简写,由UIUC联合LMFlow团队于近期提出的一项LLM微调技术,可实现把全参训练的显存使用降低到之前的三分之一左右,而使用的技术方法却是非常简单。
|
SQL Java 数据库连接
MyBatis插件深度解析:功能、原理、使用、应用场景与最佳实践
MyBatis插件深度解析:功能、原理、使用、应用场景与最佳实践
|
存储 负载均衡 网络协议
高性能网络编程 - 关于单台服务器并发TCP连接数理论值的讨论
高性能网络编程 - 关于单台服务器并发TCP连接数理论值的讨论
414 0
|
JavaScript 小程序 Java
Spring Boot 实现日志链路追踪,无需引入组件,让日志定位更方便!
Spring Boot 实现日志链路追踪,无需引入组件,让日志定位更方便!