| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> ZeroPrompt:首个中文多任务Prompt统一模型,zeroshot性能可比微调 -> 正文阅读 |
|
[人工智能]ZeroPrompt:首个中文多任务Prompt统一模型,zeroshot性能可比微调 |
前几天,XLNet作者杨植麟团队发布了首个中文多任务Prompt统一模型:ZeroPrompt,共收集了1000个中文任务数据(手动感叹!),大幅提升了zero-shot性能;令人惊讶的是:在部分测试任务上,zero-shot性能比有监督finetune还要好,整个测试任务上平均只相差4.7个点。
是的,你没有看错,ZeroPrompt居然构建了1000个任务数据集,如此庞大的数据集不仅仅是为了提升zero-shot性能而已,论文作者也一再强调另一种视角:任务数据规模的拓展是模型缩放的一种有效替代手段。正如下图所示:随着多任务训练任务的增加,大小模型之间的性能趋近一致。 推荐文章
上述构建的1000个任务数据是不同的任务类型,那么如何将这些不同的任务统一起来用一个模型统一建模呢? 好在:我们NLPer正处于Prompt-based Learning新时代,Prompt有很多优势,比如:1)对齐LM目标并激发LM能力;2)少调参数、提升参数效率;3)知识挖掘等。 Prompt除了这些优势,还有一点会被大家忽略:Prompt可以对不同的NLP任务进行范式统一,统一为相同的数据形式。同时,受益于生成式预训练语言模型的强大(如本文采取的T5),我们就可以统一建模了! 看到这里,或许我们可以真正明白ZeroPrompt是“多任务Prompt统一模型”的真正含义了! 看到这里,或许你还会发出疑问:ZeroPrompt不还是靠数据规模来“大力出奇迹”吗?没错,大力真的可以出奇迹!但真要做到这一点,JayJay认为还有很多问题需要思考,比如:
基于以上,接下来就和JayJay一起一探究竟吧~ ZeroPrompt的整体框架上图给出了两种不同的NLP范式:1)传统的预训练-微调范式;2)ZeroPrompt 整体的pipeline。 ZeroPrompt的整体流程主要包括:
这里着重介绍【Prompt遗传搜索算法】,这一算法主要是为了在未见的新任务中构建Prompt。 在之前的很多工作中都指出:不同的Prompt通常会导致zero-shot性能差异较大,手动编写的Prompt通常也不是最理想的。这主要是因为在zero-shot情况下,训练集中没有可以直接复用的Prompt,同时也无法验证哪些Prompt更好。 为了解决这一问题,论文提出了【Prompt遗传搜索算法】——GPS:验证Prompt在开发集上的性能、并通过语言模型迭代产生更好的Prompt。 通过上述可以看出,为了验证Prompt的效果,就需要构建开发集,论文将这一设置归纳为“zero-shot adaptation with fewshot validation”。虽然这样的设置与之前的工作大不相同,但论文认为这更符实际情况,毕竟我们总能拿到少量标注数据进行验证(对每个类别标签采样8个示例进行验证)。 综上,ZeroPrompt不同于传统的zero-shot设置(如上图),还需要构建一个开发集来验证Prompt的效果。 多任务数据集构建如上图,ZeroPrompt共收集1000+任务数据,主要来自于学术界的公开数据集和工业界的生产数据集,包括情感分析、新闻分类、推断、NER、MRC、摘要等多个任务。其中,公开数据集共80个。 在一共的1110个任务数据上,有824个用作多任务预训练,剩余的286个数据是进行zero-shot测试的未见任务。 此外,为了模仿真实世界中NLP数据昂贵的这一事实,论文在构建训练数据时:分类任务的每个类别标签采样128个示例,生成任务采样256个示例。 为了严格测试zero-shot性能,论文还将Train阶段的数据进行二次过滤,保证Test数据不出现在Train中。 Prompt设计我们所熟知的一种最简单的Prompt模板形式为: 上述P为人工Prompt,X为输入文本,MASK进行填槽; 如上图,ZeroPrompt将上述P拓展为三部分:
上图给出的是一个分类任务的prompt示意图,我们再来看NER任务: 还有摘要任务: 实验结果1、整体效果上图给出的是ZeroPrompt的效果,主要结论是:
2、任务规模对zero-shot性能的影响有上图可以看出:随着任务数量从20升至800个,不同参数大小模型间的差距变得很小,FLOPs提升30倍! 3、消融实验1)Prompt设计的影响: 此处不再贴图,直接PO结论:【特定任务的soft prompt】 和 【候选标签verbalizer prompt】对最终结果有正向收益。 2)Prompt设计的影响: 结论是:本文的【Prompt遗传搜索算法】好于之前的LM-BFF、翻译等方式。 3)跨任务迁移性能: 在跨任务类型的zero-shot性能测试上,只能从某些任务类型中受益,而利用其他任务的更多标记数据并没有持续提升。 总结ZeroPrompt是一种多任务Prompt预训练方法(JayJay归纳为多任务Prompt统一模型),可以显著提升zero-shot泛化性能。 需要不断强调的是:ZeroPrompt是一种“zero-shot adaptation with fewshot validation”设置,也是为了构建效果更好的Prompt。 不过,ZeroPrompt也有一些需要继续解决的问题:
技术交流目前已开通了技术交流群,群友已超过1000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 21:36:58- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |