预训练时代微调新范式,高性能加速2800%,NLPer赶紧看过来!

a8a42c6c6d9d55352a2dfc55a82f723e.png

一、导读

PaddleNLP 是兼具科研学习和产业实践能力的 Python NLP 工具包,提供中文领域丰富的预训练模型和部署工具,被高校、企业开发者广泛应用。近日,PaddleNLP v2.1正式发布,为开发者带来三项重要更新:

  • 开箱即用的工业级NLP预置任务能力Taskflow:八大经典场景一键预测。

  • 预训练时代的微调新范式应用:三行代码显著提升小样本学习效果。

  • 高性能预测加速:文本生成任务28倍加速效果。

传送门:

GitHub项目: https://github.com/PaddlePaddle/PaddleNLP

二、PaddleNLP整体开源

能力速览

PaddleNLP是飞桨生态的自然语言处理开发库,旨在提升文本领域的开发效率,为开发者带来模型构建、训练及预测部署的全流程优质体验。

3c0b4d9749a31ef228f8aa5acdaebbae.png

PaddleNLP功能全景图

PaddleNLP项目自发布以来,就受到广大NLPer的关注。在2021年6月PaddleNLP官方直播打卡课中,有7000+ 用户参加PaddleNLP的项目学习和实践,加速了自身科研和业务实践进程,同时也带动PaddleNLP多次登上GitHub Trending榜单。

faf8fc8d10b247352b3f7a3e45afc4a4.gif

那么最近的2021年10月份更新,PaddleNLP又给大家带来哪些惊喜呢?下文将为您逐一细细解读。

三、PaddleNLP 全新升级

深入解读

  • 1. 开箱即用的工业级NLP预置任务能力——Taskflow

依托于百度在多年语言与知识领域的业务积淀,PaddleNLP面向NLP八种任务场景,聚合了众多百度自研的算法以及社区开源模型,并凭借飞桨核心框架的能力升级提供开箱即用、极致优化的高性能一键预测能力——Taskflow。

本次Taskflow升级覆盖自然语言理解(NLU)和生成(NLG)两大场景共八大任务,包括中文分词、词性标注、命名实体识别、句法分析、文本纠错、情感分析、生成式问答和智能写诗。

这些高质量模型的背后,一方面聚合了百度在语言与知识领域多年的业务积淀和领先的开源成果:如词法分析工具LAC、句法分析工具DDParser、情感分析系统Senta、文心ERNIE系列家族模型、开放域对话预训练模型PLATO、文本知识关联框架解语等;另一方面也涵盖了开源社区优秀的中文预训练模型如CPM等。

未来Taskflow会随着PaddleNLP的版本迭代不断扩充技能,如开放域对话、文本翻译、信息抽取等能力,以满足更多NLP开发者的需求。

如下图所示,通过PaddleNLP Taskflow,只需要一行代码,传入任务名称即可自动选择最优的预置模型,并且以极致优化的方式完成推理,开发者可以方便地集成到下游的应用中。

cd3e8a92297b8c02ab5629e5879cd1d2.gif

图:Taskflow使用示意图

https://github.com/PaddlePaddle/PaddleNLP/blob/develop/docs/model_zoo/taskflow.md

  • 2. 预训练时代的微调新范式应用:三行代码提升小样本学习效果

Few-Shot Learning(以下简称FSL)是机器学习的一个子领域。在仅有少数监督样本的情况下,训练得到强泛化能力的模型,实现对新数据的分类。

结合最新的Prompt Tuning的思想,PaddleNLP中集成了三大前沿FSL算法:

  (1)EFL(Entailment as Few-Shot Learner)[1],将 NLP Fine-tune任务统一转换为二分类的文本蕴含任务。

  (2)PET(Pattern-Exploiting Training)[2],通过人工构建模板,将分类任务转成完形填空任务。

  (3)P-Tuning[3]:自动构建模板,将模版的构建转化为连续参数优化问题。

使用小样本学习策略,仅仅32条样本即可在电商评论分类任务上取得87%的分类精度[4]。此外,PaddleNLP集成 R-Drop 策略作为 API,只需要增加三行代码即可在原任务上快速涨点,如图所示:

24f38a515953d55088fa48daa80af2ea.png

https://github.com/PaddlePaddle/PaddleNLP/tree/develop/examples/few_shot

  • 3. 高性能预测加速:文本生成场景高达28倍加速效果

PaddleNLP与NVDIA强强联合,以FasterTransformer[5]为基础,提供了Faster系列的推理API,重点拓展了更多主流网络结构适配与解码策略支持。同时结合飞桨核心框架2.1版本全新的自定义OP的功能,提供了与飞桨框架无缝衔接的使用体验。

f71c19e18da38bff30ec7db2152543c6.png

FasterTransformer Decoding Workflow

  (1)大幅提升生成任务的推理能力

在Transformer机器翻译、GPT文本生成两个任务中,分别对比使用动态图版本的性能和内置Faster系列的推理API后,不同batch size下预测性能加速比,从对比数据可以看到无论Transformer还是GPT,均可得到高达28倍推理速度提升!

ee661a3062ea1dd5c4efb086db783011.png

fffedd006887f1288bfc54318190cd32.png

d49877f1eb7e3c5ebee3288d12c65db4.png9d14d423d53e3311241962a2f78844b6.png

PaddleNLP Transformer翻译模型加速优化前后的Nsight Profling对比图

  (2)支持丰富的经典解码策略

PaddleNLP v2.1提供工业界主流的解码加速支持,包括经典的Beam Search,以及多个Sampling-based的解码方式:如Diverse Sibling Search[6]、T2T版本的Beam Search实现[7]、Top-k/Top-p Sampling等。丰富的加速策略可以满足对话、翻译等工业场景的实际应用,同时PaddleNLP的加速实现也在百度内部经过了大规模互联网业务的真实考验。

表1:PaddleNLP 2.1 支持加速的模型结构与解码策略dde9ed814926fc43634adca900bb60cb.png

更多PaddleNLP加速使用文档可以参考:https://github.com/PaddlePaddle/PaddleNLP/blob/develop/docs/advanced_guide/fastertransformer.rst

别的不需要多说了,大家访问GitHub点过star之后自己体验吧:

https://github.com/PaddlePaddle/PaddleNLP

4aee2e5af6400806601db69bd3fe10d5.png

72f6ec3562f6b0666e76c877769c1519.gif

四、直播预告

除了重磅发版以外呢,我们还为大家精心准备了配套课程,在10月13-15日,连续三天PaddleNLP技术精讲课程,百度飞桨的明星讲师们历时一个月呕心沥血打磨的三日课,小伙伴们速度扫码报名,快速get PaddleNLP最新技能点!

扫描二维码报名,立即加入技术交流群

efeeb1643ce5467458f4029154f5e2dd.png

精彩内容抢先看👇   

e8c1ca3ccf4f7680a73d0d043ac8c370.png

官网地址:https://www.paddlepaddle.org.cn

PaddleNLP 项目地址:

GitHub: https://github.com/PaddlePaddle/PaddleNLP

Gitee: https://gitee.com/paddlepaddle/PaddleNLP

参考文献:

[1]Entailment as Few-Shot Learner

(https://arxiv.org/pdf/2104.14690.pdf)

[2] Exploiting Cloze Questions for Few Shot Text Classification and Natural Language Inference

(https://arxiv.org/pdf/2001.07676.pdf)

[3] GPT Understands, Too

(https://arxiv.org/pdf/2103.10385.pdf)

[4]FewCLUE: A Chinese Few-shot Learning Evaluation Benchmark

(https://arxiv.org/pdf/2107.07498.pdf)

[5] https://github.com/NVIDIA/FasterTransformer

[6] A Simple, Fast Diverse Decoding Algorithm for Neural Generation

(https://arxiv.org/pdf/1611.08562.pdf)

[7] Google’s Neural Machine Translation System: Bridging the Gap between Human and Machine Translation (https://arxiv.org/pdf/1609.08144.pdf)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/477971.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

论文浅尝 | GaussianPath: 用于知识图谱推理的贝叶斯多跳推理框架

笔记整理:谭亦鸣,东南大学博士生来源:AAAI’21链接:https://ojs.aaai.org/index.php/AAAI/article/view/16565多跳推理由于对下游任务例如问答和图谱补全的可解释性受到关注。多跳推理是一个典型的顺序决策过程,可表述…

AllenAI 发布万能问答系统 MACAW!各类题型样样精通,性能大幅超越 GPT-3!

文 | python前言GPT-3 等超大规模预训练语言模型,在少监督任务(few-shot tasks)上取得了令人瞩目的成绩。而这篇文章中,AllenAI的研究员提出了大规模生成式问答模型,MACAW。基于多角度预训练,MACAW可以用于…

论文浅尝 | SMBOP: Semi-autoregressive Bottom-up Semantic Parsing

笔记整理:陈永锐,东南大学博士来源:NAACL 2021概述近年来语义解析的事实上的标准解码方法是使用自顶向下的深度优先遍历对目标程序的抽象语法树进行自回归解码。该工作提出了一种替代方法:半自回归自底向上解析器(SMBO…

美团酒店Node全栈开发实践

前后端分离的背景 “前后端分离”显然已不是什么新鲜的话题,Zakas在2013年10月份就曾发表过一篇博客《Node.js and the new web front-end》讨论Node背景下新时代的前端。毫无疑问,Node的出现给JavaScript语言带来了新的生机,也使得前端开发者…

统计学习方法总结

统计学习方法总结 阅读目录(Content)0. 相关知识点0x1: 监督学习1. 模型假设空间2. 生成模型与判别模型的联系与区别 3. 学习策略4. 分类问题与回归问题5. 利用模型进行预测和分析0x2:模型评估与模型选择1. 训练误差与测试误差2. 过拟合与模型选择0x3:正…

LeetCode 997. 找到小镇的法官(图的出度和入度)

1. 题目 在一个小镇里,按从 1 到 N 标记了 N 个人。传言称,这些人中有一个是小镇上的秘密法官。 如果小镇的法官真的存在,那么: 小镇的法官不相信任何人。每个人(除了小镇法官外)都信任小镇的法官。只有…

哈工大|NLP数据增强方法?我有15种

文 | rumor源 | 李rumor卷友们好,我是rumor。十一假期过的太快了,不知道你们缓过来没有,没有的话今天我们就来一起读一篇综述缓缓,弥补假期没学习的遗憾。这篇40多页的综述出自哈工大车万翔老师的团队,一共总结了15种N…

论文浅尝 | Wordly Wise(WoW) - 用于语音视觉知识问答的跨语言知识融合模型

笔记整理: 谭亦鸣,东南大学博士生来源:NAACL’21链接:https://aclanthology.org/2021.naacl-main.153.pdf论文提出了一种新的知识图谱问答数据集命名为FVSQA,这是一种语音视觉知识问答类型的任务,即问题形式为音频&…

美团Android DEX自动拆包及动态加载简介

概述 作为一个android开发者,在开发应用时,随着业务规模发展到一定程度,不断地加入新功能、添加新的类库,代码在急剧的膨胀,相应的apk包的大小也急剧增加, 那么终有一天,你会不幸遇到这个错误&a…

LeetCode 83. 删除排序链表中的重复元素(链表)

1. 题目 给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。 示例 1: 输入: 1->1->2 输出: 1->2示例 2: 输入: 1->1->2->3->3 输出: 1->2->3来源:力扣(LeetCode) 链接&#…

用多模态信息做 prompt,解锁 GPT 新玩法

文 | 子龙编 | 小轶自多模态大火以来,井喷式地出现了许多工作,通过改造预训练语言模型,用图像信息来增强语义信息,但主要集中在几个 NLU 任务上,在 NLG 上的研究比较少。今天要介绍的这篇 paper Multimodal Conditiona…

论文浅尝 | 基于时序知识图谱的问答

笔记整理:姚云志,浙江大学在读博士,研究方向为自然语言处理。链接:https://arxiv.org/pdf/2106.01515.pdf时序知识图谱是一种多关系的知识图谱,相较于常规的知识图谱,时序知识图谱中的关系中会与时间段相关…

Logistic Regression 模型简介

逻辑回归(Logistic Regression)是机器学习中的一种分类模型,由于算法的简单和高效,在实际中应用非常广泛。本文作为美团机器学习InAction系列中的一篇,主要关注逻辑回归算法的数学模型和参数求解方法,最后也…

开源开放 | 中国近代历史人物知识图谱

OpenKG地址:http://openkg.cn/dataset/zgjdlsrw项目地址:http://www.zjuwtx.work/project/kg开放许可协议:CC BY-SA 4.0 (署名相似共享)贡献者:浙江大学(王天笑)1、引言中国近代历史…

LeetCode 1071. 字符串的最大公因子(字符串的最大公约数)

1. 题目 对于字符串 S 和 T,只有在 S T … T(T 与自身连接 1 次或多次)时,我们才认定 “T 能除尽 S”。 返回字符串 X,要求满足 X 能除尽 str1 且 X 能除尽 str2。 示例 1: 输入:str1 &q…

大模型炼丹无从下手?谷歌、OpenAI烧了几百万刀,总结出这些方法论…

文 | Yimin_饭煲都1202年了,不会真有深度学习炼丹侠还没有训练/推理过大模型吧“没吃过猪肉,还没见过猪跑吗?”在深度学习算力高度增长的今天,不论是学术界还是工业界的从业者,即使尚未达到从头预训练一个百亿级别参数…

Linux资源管理之cgroups简介

引子 cgroups 是Linux内核提供的一种可以限制单个进程或者多个进程所使用资源的机制,可以对 cpu,内存等资源实现精细化的控制,目前越来越火的轻量级容器 Docker 就使用了 cgroups 提供的资源限制能力来完成cpu,内存等部分的资源控…

会议交流 | IJCKG 2021:Keynotes released!欢迎注册参会

IJCKG 2021: The 10th International Joint Conference on Knowledge GraphsDecember 6-8, 2021 Online国际知识图谱联合会议之前是国际语义技术联合会议(the Joint International Semantic Technology Conference (JIST)),JIST 会议的历史要…

LeetCode 1010. 总持续时间可被 60 整除的歌曲(哈希)

1. 题目 在歌曲列表中&#xff0c;第 i 首歌曲的持续时间为 time[i] 秒。 返回其总持续时间&#xff08;以秒为单位&#xff09;可被 60 整除的歌曲对的数量。形式上&#xff0c;我们希望索引的数字 i < j 且有 (time[i] time[j]) % 60 0。 示例 1&#xff1a; 输入&am…

深入理解Objective-C:Category

摘要 无论一个类设计的多么完美&#xff0c;在未来的需求演进中&#xff0c;都有可能会碰到一些无法预测的情况。那怎么扩展已有的类呢&#xff1f;一般而言&#xff0c;继承和组合是不错的选择。但是在Objective-C 2.0中&#xff0c;又提供了category这个语言特性&#xff0c;…