中关村商情网

搜索
中关村商情网 首页 IT业界 软件APP 查看内容

阿里云机器学习PAI开源中文NLP算法框架EasyNLP,助力NLP大模型落地

2022-4-27 15:32| 发布者: admin| 查看: 4515| 评论: 0|原作者: 临在、岑鸣、熊兮

摘要: 一 导读 随着BERT、Megatron、GPT-3等预训练模型在NLP领域取得瞩目的成果,越来越多团队投身到超大规模训练中,这使得训练模型的规模从亿级别发展到了千亿甚至万亿的规模。然而,这类超大规模的模型运用于实际场景中 ...


如上图,CP-Tuning算法放弃了经典算法中以“[MASK]”字符对应预训练模型MLM Head的预测输出作为分类依据,而是参考对比学习的思路,将句子通过预训练模型后,以“[MASK]”字符通过预训练模型后的连续化表征作为features。在小样本任务的训练阶段,训练目标为最小化同类样本features的组内距离,最大化非同类样本的组间距离。在上图中,[OMSK]即为我们所用于分类的“[MASK]”字符,其优化的features表示为[EMB]。因此,CP-Tuning算法不需要定义分类的标签词。在输入侧,除了输入文本和[OMSK],我们还加入了模版的字符[PRO]。与经典算法不同,由于CP-Tuning不需要学习模版和标签词之间的对应,我们直接将[PRO]初始化为任务无关的模版,例如“it is”。在模型训练过程中,[PRO]的表示可以在反向传播过程中自动更新。除此之外,CP-Tuning还引入了输入文本的Mask,表示为[TMSK],用于同时优化辅助的MLM任务,提升模型在小样本学习场景下的泛化性。CP-Tuning算法的损失函数由两部分组成:

如上所示,两个部分分别为Pair-wise Cost-sensitive Contrastive LossPCCL)和辅助的MLM损失。我们在多个GLUE小样本数据集上进行了验证,其中训练集中每个类别限制只有16个标注样本。从下述结果可以看出,CP-Tuning的精确度超越了经典的小样本学习算法,也比标准Fine-tuning算法的精确度高10%以上。

 

 

目前,除了我们自研的CP-Tuning算法之外,EasyNLP框架中集成了多种经典小样本学习算法例如PETP-tuning等。

小样本学习实践详见:https://github.com/alibaba/EasyNLP/tree/master/examples/fewshot_learning

大模型落地实践

下面我们给出一个示例,将一个大的预训练模型(hfl/macbert-large-zh)在小样本场景上落地,并且蒸馏到仅有1/100参数的小模型上。如下图所示,一个大模型(3亿参数)在一个小样本场景上原始的Accuracy83.8%,通过小样本学习可以提升7%,达到90.6%。同时,如果用一个小模型(3百万参数)跑这个场景的话,效果仅有54.4%,可以把效果提升到71%(提升约17%),inference的时间相比大模型提升了10倍,模型参数仅为原来的1/100

 

 

模型

参数量

Dev Set指标(Accuracy

Batch Inference时间

标准Finetune

hfl/macbert-large-zh

325 Million

0.8375

0.54s

标准Finetune

alibaba-pai/pai-bert-tiny-zh

3 Million

0.54375

0.06s

知识蒸馏Finetune

alibaba-pai/pai-bert-tiny-zh

3 Million

0.7125

0.06s

小样本Finetune

hfl/macbert-large-zh

325 Million

0.90625

0.53s

 

代码详见:https://github.com/alibaba/EasyNLP/tree/master/examples/landing_large_ptms

应用案例

EasyNLP支撑了阿里巴巴集团内10BU20多个业务,同时过PAI的产品例如PAI-DLCPAI-DSWPAI DesignerPAI-EAS,给集团用户带来高效的从训练到落地的完整体验,同时也支持了云上客户自定定制化模型和解决业务问题的需求。针对公有云用户,对于入门级用户PAI-Designer组件来通过简单调参就可以完成NLP模型训练,对于高级开发者,可以使用AppZoo训练NLP模型,或者使用预置的预训练模型ModelZoo进行finetune,对于资深开发者,提供丰富的API接口,支持用户使用框架进行定制化算法开发,可以使用我们自带的Trainer来提升训练效率,也可以自定义新的Trainer

下面列举几个典型的案例:

  • PAI团队和达摩院NLP团队合作共建落地超大预训练模型(百亿参数),推出自研小样本学习算法CP-Tuning和模型稀疏化算法CAP。其中,这一自研CP-Tuning算法与AliceMind平台集成, 实现了超大预训练模型的小样本学习,在在小样本场景下,比标准Fine-tune精准度提升10%以上;
  • PAI团队和达摩院合作在FewCLUE小样本学习榜单上获得冠军,甚至一个小样本学习任务上的精准度超过了人类。同时,阿里巴巴某BU使用ToB客户服务场景下的业务数据在EasyNLP框架下进行小样本学习算法学习,在业务数据上相比Baseline,提升实体识别的准确度2%以上,提升属性识别的准确度5%以上;
  • 针对公有云客户对文本分类功能的小模型、高QPS需求,基于EasyNLP框架的知识蒸馏功能,采用某预训练模型作为教师模型(参数量3亿)、PAI-BERT中文小预训练模型作为学生模型(参数量4百万),蒸馏得到这一小模型上线,参数量约为原有模型的百分之一,精度损失在10%以内;基于此,我们集成了知识蒸馏功能,助力大模型在实际业务场景下落地;
  • 在风控场景,我们收集了约一亿的中文预训练数据,基于EasyNLP预训练了一个PAI-BERT中文模型,在风控数据上取得了非常不错的效果,提升了10%以上的准确率和召回率;基于此,我们在公有云上也推出了文本风控解决方案,在多个客户场景里落地并取得不错的效果;
  • 随着UGC等用户生成内容不断涌现,对从文本提取标签用于细粒度分析的需求不断涌现;采用基于EasyNLP预训练中文模型,在新闻数据的超过300个类别的文本标签预测准确率超过80%;基于此,我们集成了文本标签预测,关键词抽取,和实体词提取等功能,在公有云上推出了通用文本打标解决方案,并且在多个典型客户场景里成功落地,服务于智能推荐等应用场景。

RoadMap

  • 基于EasyNLP的中文CLUE/FewCLUE等的Benchmark
  • 知识预训练技术: 发布一系列知识预训练模型,致力于提升预训练模型的常识性和知识性
  • 中文预训练模型:发布针对中文的SOTA的预训练模型,降低中文预训练技术门槛
  • 多模态预训练:发布针对中文的多模态预训练模型
  • 中文数据的收集和API接口:收集常用的中文数据,提供预处理和训练接口
  • 垂直场景的SOTA中文模型整合:针对垂直业务场景,整合效果最好的中文模型
  • 发布解决方案和PAI组件

 

参考文献

[1] [AAAI 22] DKPLM: Decomposable Knowledge-enhanced Pre-trained Language Model for Natural Language Understanding. https://arxiv.org/abs/2112.01047

[2] [ACL 2021] Meta-KD: A Meta Knowledge Distillation Framework for Language Model Compression across Domains. https://arxiv.org/abs/2012.01266

 

[3] [arXiv] Making Pre-trained Language Models End-to-end Few-shot Learners with Contrastive Prompt Tuning: https://arxiv.org/pdf/2204.00166

 

[4] [AAAI 22] From Dense to Sparse: Contrastive Pruning for Better Pre-trained Language Model Compression. https://arxiv.org/abs/2112.07198

 

[5] [EMNLP 2021] TransPrompt: Towards an Automatic Transferable Prompting Framework for Few-shot Text Classification. https://aclanthology.org/2021.emnlp-main.221/

 

[6] [CIKM 2021]. EasyTransfer -- A Simple and Scalable Deep Transfer Learning Platform for NLP Applications. https://github.com/alibaba/EasyTransfer

开源项目地址:https://github.com/alibaba/EasyNLP

 

钉钉答疑交流群:33712734

想了解更多AI开源项目,请点击:

 

https://www.aliyun.com/activity/bigdata/opensource_bigdata__ai

 

12

鲜花

握手

雷人

路过

鸡蛋
关闭

站长推荐上一条 /1 下一条

返回顶部