什么是 prompt
NLP 中, 一种用于 Language Model 的 Pretrained Task 范式.
前辈的特点是让模型通过各种预训练任务的辅助 loss 去适配这些任务. 流程是 “pre-train, fine-tune, and predict”.
而 prompt 的思路则与此相反, 调整预训练任务的形式(Reformulate), 使其更接近于原始预训练任务(如 完形填空). 流程是 “pre-train, prompt, and predict”.
其优点是, 得到的模型更通用, 一个完全无监督训练的PLM可以被用来解决各种各样的下游任务.
历史演进
- 2017-2019, 研究者们的重心逐渐从传统 task-specific 的有监督模式转移到预训练上.
task-specific 的监督学习, 依赖大量的标注数据, 但很多时候是没有足够的数据的. 这个痛点促进了 pre-train 任务范式的诞生.
通过选取合适的prompt,我们可以控制模型预测输出,从而一个完全无监督训练的PLM可以被用来解决各种各样的下游任务。
相关论文
有个整理业界相关论文的git仓库, 来自 清华nlp, 详见参考[3].
PET
较为经典的文章, 见参考[4].
参考
- 知乎, NLP新宠——浅谈Prompt的前世今生
- 知乎, NLP新范式:Prompt(提示学习)【综述】
- github,PromptPapers
- PET, Exploiting Cloze Questions for Few Shot Text Classification and Natural Language Inference. EACL 2021.
- survey,Pre-train, Prompt, and Predict: A Systematic Survey of Prompting Methods in Natural Language Processing