Fine-tune时代结束?清华P-Tuning v2大幅提升小模型性能,NER也可promp tuning了!

以下文章来源于高能AI ,作者JayJay

高能AI .

高能量的AI算法集散地、转运站!

近日,清华大学发布P-Tuning v2版本,其重点解决了Prompt tuning在小模型上效果不佳的问题(如下图所示),并将Prompt tuning拓展至更复杂的NLU任务,如MRC答案抽取、NER实体抽取等序列标注任务。

图片

论文题目:

P-Tuning v2: Prompt Tuning Can Be Comparable to Finetuning Universally Across Scales and Tasks

论文地址:

https://arxiv.org/pdf/2110.07602.pdf
论文源码:

https://github.com/THUDM/P-tuni

图片

图片
P-Tuning v2并不是一个全新的方法,其事实上是将文本生成的prefix-tuning技术适配到NLU任务中,其主要结果如下:
· 仅精调0.1%参数量(固定LM参数),在330M到10B参数规模LM模型上,均取得和Fine-tuning相比肩的性能。而P-tuning v1仅在10B规模表现良好,而在稍小规模的模型(330M和2B)上表现不佳。
· 将Prompt tuning技术首次拓展至序列标注等复杂的NLU任务上,而P-tuning(v1)在此任务上无法运作。

笔者注:本文将论文《GPT Understands, Too》[1]中的Prompt tuning称为P-tuning v1。

一、P-Tuning v1回顾

最近,Prompting技术火爆NLP社区,其将预训练模型从Fine-tuning范式带入Prompt-Engineering时代。
Prompting最初由人工设计Prompt,自然语言提示本身十分脆弱(如下图所示,选择不同的Prompt对下游任务的性能影响较大),而且从优化角度无法达到最优。
图片
为消除这一影响,Prompt Tuning技术应用而生:P-Tuning v1将自然语言提示的token,替换为可训练的嵌入,同时利用LSTM进行Reparamerization加速训练,并引入少量自然语言提示的锚字符(Anchor,例如Britain)进一步提升效果,如下图b所示:

图片

在知识探测任务(Knowledge Probing)上,相比人工提示(离散)方法,P-Tuning v1显著提升效果:

图片

此外,需要特别注意的是:P-Tuning v1论文中的Prompt Tuning仍然使用了自然语言提示的锚字符,这仍然需要人工设计、并不是完全自动化的,因此原论文并不能说明:P-Tuning v1能够与Fine-tuning效果相比肩。

图片

最近的一篇论文《The Power of Scale for Parameter-Efficient Prompt Tuning》发现(如上图):随着模型参数的增加(达到10B级),Prompt Tuning才能与Fine-tuning效果相比肩,而在小模型上性能不佳。

二、P-Tuning v2关键所在:

引入Prefix-tuning

P-Tuning v2提升小模型上的Prompt Tuning,最关键的就是引入Prefix-tuning[2]技术。
图片

Prefix-tuning(前缀微调)最开始应用在NLG任务上,由[Prefix, x, y]三部分构成,如上图所示:Prefix为前缀,x为输入,y为输出。Prefix-tuning将预训练参数固定,Prefix参数进行微调:不仅只在embedding上进行微调,也在TransFormer上的embedding输入每一层进行微调。

P-Tuning v2将Prefix-tuning应用于在NLU任务,如下图所示:

图片

那么,P-tuning v2哪些参数需要训练?

P-tuning v2在实际上就是Prefix-tuning,在Prefix部分,每一层transformer的embedding输入需要被tuned。而P-tuning v1只有transformer第一层的embedding输入需要被tuned。
假设Prefix部分由50个token组成,则P-tuning v2共有 50X12=600个参数需要tuned。
在Prefix部分,每一层transformer的输入不是从上一层输出,而是随机初始化的embedding(需要tuned)作为输入。
此外,P-Tuning v2还包括以下改进:
· 移除了Reparamerization加速训练方式;
· 采用了多任务学习优化:基于多任务数据集的Prompt进行预训练,然后再适配的下游任务。
· 舍弃了词汇Mapping的Verbalizer的使用,重新利用[CLS]和字符标签,跟传统finetune一样利用cls或者token的输出做NLU,以增强通用性,可以适配到序列标注任务。

三、P-Tuning v2实验结果

图片

在不同规模大小的LM模型上,P-tuning v2能与精调(Fine-tuning)方法的表现比肩,有时甚至更好。

图片

在序列标注任务上,P-tuning v2也几乎总是能与精调方法相匹敌,P-tuning v2能够拓展到更为复杂的NLU任务上!
四、总结与思考

本文介绍了一种“优化升级”的Prompt Tuning方法——P-tuning v2,其主要贡献是:

· 解决了Prompt Tuning无法在小模型上有效提升的问题;
· 将Prompt Tuning拓展至NER等序列标注任务上;

看完上述解读后,不难发现(划重点):P-tuning v2就是将Prefix-tuning应用到NLU任务上的一种方法

此外,P-tuning v2还未在few-shot上验证性能,有待进一步验证。

最后,在预训练时代,P-tuning v2是否可以成为完全替代Fine-tuning的一种方式呢?留给读者思考。

参考资料

[1] GPT Understands, Too: https://arxiv.org/pdf/2004.13454

[2] Prefix-Tuning: Optimizing Continuous Prompts for Generation: https://arxiv.org/pdf/2101.0019
Illustrastion by Natasha Remarchuk from Icons8
-The End-
图片

扫码观看

本周上新!

图片


“AI技术流”原创投稿计划


TechBeat是由将门创投建立的AI学习社区(www.techbeat.net社区上线330+期talk视频,900+篇技术干货文章,方向覆盖CV/NLP/ML/Robotis等;每月定期举办顶会及其他线上交流活动,不定期举办技术人线下聚会交流活动。我们正在努力成为AI人才喜爱的高质量、知识型交流平台,希望为AI人才打造更专业的服务和体验,加速并陪伴其成长。


投稿内容

// 最新技术解读/系统性知识分享 //

// 前沿资讯解说/心得经历讲述 //


投稿须知

稿件需要为原创文章,并标明作者信息。

我们会选择部分在深度技术解析及科研心得方向,

对用户启发更大的文章,做原创性内容奖励。


投稿方式

发送邮件到

chenhongyuan@thejiangmen.com

或添加工作人员微信(chemn493)投稿,沟通投稿详情;还可以关注“将门创投”公众号,后台回复“投稿”二字,获得投稿说明。


图片

>> 投稿请添加工作人员微信!


关于我“


将门是一家以专注于发掘、加速及投资技术驱动型创业公司的新型创投机构,旗下涵盖将门创新服务将门技术社群以及将门创投基金

将门成立于2015年底,创始团队由微软创投在中国的创始团队原班人马构建而成,曾为微软优选和深度孵化了126家创新的技术型创业公司。

如果您是技术领域的初创企业,不仅想获得投资,还希望获得一系列持续性、有价值的投后服务,欢迎发送或者推荐项目给我“门”: 
bp@thejiangmen.com
图片    

点击右上角,把文章分享到朋友圈

点击“阅读原文”按钮,查看社区原文

⤵一键送你进入TechBeat快乐星球