提示学习(Prompting)篇来自:AiGC面试宝典宁静致远2023年09月18日20:58一、为什么需要提示学习(Prompting)?在面对特定的下游任务时,如果进行FullFineTuning(即对预训练模型中的所有参数都进行微调),太过低效;而如果采用固定预训练模型的某些层,只微调接近下游任务的那几层参数,又难以达到较好的效果。二、什么是提示学习(Prompting)?Prompt提供上下文和任务相关信息,以帮助模型更好地理解要求,并生成正确的输出。实例一:问答任务中,prompt可能包含问题或话题的描述,以帮助模型生成正确的答案实例二:在情感分析任务中,让模型做情感分类任务的做法通常是在句子前面加入前缀“该句子的情感是”即可,通过这种方式将情感分类任务转换为一个“填空”任务,在训练过程中,BERT可以学习到这个前缀与句子情感之间的关联。例如,它可以学习到“该句子的情感是积极的”和“该句子的情感是消极的”之间的差异。•提示学习(Prompting)•一、为什么需要提示学习(Prompting)?•二、什么是提示学习(Prompting)?•三、提示学习(Prompting)有什么优点?•四、提示学习(Prompting)有哪些方法,能不能稍微介绍一下它们间?•4.1前缀微调(Prefix-tining)篇•4.1.1为什么需要前缀微调(Prefix-tining)?•4.1.2前缀微调(Prefix-tining)思路是什么?•4.1.3前缀微调(Prefix-tining)的优点是什么?•4.1.4前缀微调(Prefix-tining)的缺点是什么?•4.2指示微调(Prompt-tuning)篇•4.2.1为什么需要指示微调(Prompt-tuning)?•4.2.2指示微调(Prompt-tuning)思路是什么?•4.2.3指示微调(Prompt-tuning)优点是什么?•4.2.4指示微调(Prompt-tuning)缺点是什么?•4.2.5指示微调(Prompt-tuning)与Prefix-tuning区别是什么?•4.2.6指示微调(Prompt-tuning)与fine-tuning区别是什么?•4.3P-tuning篇•4.3.1为什么需要P-tuning?•4.3.2P-tuning思路是什么?•4.3.3P-tuning优点是什么?•4.3.4P-tuning缺点是什么?•4.3.5大模型微调p_tuning和传统finetuning有什么区别?•4.4P-tuningv2篇•4.4.1为什么需要P-tuningv2?•4.4.2P-tuningv2思路是什么?•4.4.3P-tuningv2优点是什么?•4.4.4P-tuningv2缺点是什么?扫码加查看更多三、提示学习(Prompting)有什么优点?提示学习(Prompting)旨在通过最小化微调参数的数量和计算复杂度,来提高预训练模型在新任务上的性能,从而缓解大型预训练模型的训练成本。这样一来,即使计算资源受限,也可以利用预训练模型的知识来迅速适应新任务,实现高效的迁移学习。四、提示学习(Prompting)有哪些方法,能不能稍微介绍一下它们间?4.1前缀微调(Prefix-tining)篇4.1.1为什么需要前缀微调(Prefix-tining)?4.1.2前缀微调(Prefix-tining)思路是什么?4.1.3前缀微调(Prefix-tining)的优点是什么?4.1.4前缀微调(Prefix-tining)的缺点是什么?4.2指示微调(Prompt-tuning)篇4.2.1为什么需要指示微调(Prompt-tuning)?4.2.2指示微调(Prompt-tuning)思路是什么?1.人工设计离散的Prompts缺点:a.Prompts的变化对模型最终的性能特别敏感,加一个词、少一个词或者变动位置都会造成比较大的变化2.自动化搜索离散的Prompts缺点:a.成本也比较高3.离散化的token搜索出来的结果可能并不是最优的;4.传统的微调范式利用预训练模型去对不同的下游任务进行微调,对每个任务都要保存一份微调后的模型权重,一方面微调整个模型耗时长;另一方面也会占很多存储空间•step1Prefix构建。在输入token之前构造一段任务相关的virtualtokens作为Prefix;•step2训练时只更新Prefix部分的参数,而Transformer中的其他部分参数固定;•step3在Prefix层前面加了MLP结构(相当于将Prefix分解为更小维度的Input与MLP的组合后输出的结果),训练完成后,只保留Prefix的参数;(用于防止直接更新Prefix的参数导致训练不稳定的情况)1.前缀微调(Prefix-tining)vs人工设计离散的Prompts无法更新参数:前缀微调(Prefix-tining)可以学习的“隐式”的Prompts;2.基于前缀的架构可以在一个批次中处理来自多个用户/任务的样本...
发表评论取消回复