P-Tuning v2论文概述

P-Tuning v2论文概述

  • P-Tuning v2论文概述
    • 前言
      • 微调的限制性
      • P-Tuning的缺陷
      • P-Tuning v2
    • 摘要
    • 论文十问
    • NLU任务
    • 优化点
    • 实验
      • 数据集
      • 预训练模型
      • 实验结果
      • 消融实验
    • 结论

P-Tuning v2论文概述

前言

微调的限制性

微调(fine-tuning)是一种在预训练模型基础上进行目标任务调整的方法,它会更新整个模型参数集。虽然微调能获得良好的性能,但由于训练过程中需要存储所有参数的梯度和优化器状态,因此耗费内存。此外,由于预训练模型通常较大,在推理过程中为每个任务保留一份模型参数副本非常不方便。

P-Tuning的缺陷

在不同尺度上的通用性不足:尽管在大型模型(超过100亿参数)上,P-Tuning与微调相当,但对于中等规模的模型(从100M到1B),提示调整的性能远远低于微调。

在不同任务上的通用性不足:尽管在一些自然语言理解(NLU)基准上,P-Tuning表现优越,但其在困难的序列标签任务上的有效性尚未得到验证。序列标签任务预测每个输入令牌的一系列标签,这可能更难并且与语言化器不兼容。

P-Tuning v2

prompt tuning对于普通尺寸大小的模型(小于10B)效果并不好。

基于这些挑战,提出了P-Tuning v2,它采用了深度提示调整作为在各种尺度和NLU任务中的通用解决方案。

prompt tuning v2只有微调0.1%-3%的参数,并且适用于普遍大小(300M-10B)的模型。

在这里插入图片描述

摘要

提示调优仅使用冻结的语言模型调整连续提示,大大减少了训练时每个任务的存储和内存使用。

然而,在 NLU 的背景下,先前的工作表明,对于正常大小的预训练模型,提示调优表现不佳。我们还发现,现有的提示调优方法无法处理硬序列标记任务,表明缺乏通用性。

我们提出了一种新的经验发现,经过适当优化的提示调优可以在广泛的模型规模和 NLU 任务中普遍有效。它匹配微调的性能,同时只有 0.1%-3% 的调整参数。

我们的方法 P-Tuning v2 是 Deep Prompt Tuning (Li and Liang, 2021; Qin and Eisner, 2021) 的实现,优化和适应 NLU。鉴于 P-Tuning v2 的普遍性和简单性,我们相信它可以作为微调的替代方案,并为未来的研究提供强大的基线。

论文十问

  1. 论文试图解决什么问题?

这篇论文试图解决prompt tuning在模型规模和硬序列标记任务上的泛化性不足的问题。

  1. 这是否是一个新的问题?

不能说是一个新的问题,文章中提到prompt tuning的泛化性问题已经被先前的工作发现。

  1. 这篇文章要验证一个什么科学假设?

这篇文章要验证优化后的prompt tuning方法可以和fine-tuning一致泛化地工作。

  1. 有哪些相关研究?如何归类?谁是这一课题在领域内值得关注的研究员?

相关研究包括Lester et al. (2021)和Liu et al. (2021)的工作。这两个工作在10亿参数规模的模型上探索了prompt tuning。值得关注的研究员包括论文作者之一的Jie Tang。

  1. 论文中提到的解决方案之关键是什么?

文章中提出的解决方案P-tuning v2的关键是为每个transformer层添加连续prompt。

  1. 论文中的实验是如何设计的?

论文设计了在不同模型规模和NLP任务上的实验来比较P-tuning v2和fine-tuning的效果。

  1. 用于定量评估的数据集是什么?代码有没有开源?

使用的数据集包括SuperGLUE、命名实体识别、阅读理解和语义角色标注等。代码已在GitHub上开源

  1. 论文中的实验及结果有没有很好地支持需要验证的科学假设?

实验结果充分支持了优化后的prompt tuning方法可以和fine-tuning一致泛化工作的假设。

  1. 这篇论文到底有什么贡献?

这篇论文的主要贡献是发现合适优化的prompt tuning可以和fine-tuning一致有效。

  1. 下一步呢?有什么工作可以继续深入?

下一步的工作可以基于这个泛化prompt tuning方法继续探索在其他NLP任务如生成任务上的应用和优化。

NLU任务

通常,简单的分类任务更喜欢较短的提示(少于 20 个);硬序列标记任务更喜欢较长的(大约 100)

  • 简单分类任务

简单分类任务涉及在标签空间上进行分类,例如,GLUE(Wang等,2018)和SuperGLUE(Wang等,2019)中的大多数数据集。

  • 硬序列标记任务

硬序列标注任务(hard sequence labeling tasks)是指那些涉及对一系列标签进行分类的自然语言理解(NLU)任务。这类任务通常比较困难,因为它们需要对一组标签进行预测,而不仅仅是对单个标签进行分类。

硬序列标注任务的例子包括命名实体识别(Named Entity Recognition)和抽取式问答(Extractive Question Answering)。在这些任务中,模型需要对输入序列中的每个元素进行分类,以生成一系列标签。这种任务通常比简单的分类任务更具挑战性。

优化点

P-tuning v2就是Deep Prompt Tuning在自然语言理解任务上的实现。

其关键要点是:

(1) 为预训练语言模型的每个transformer层插入提示。

(2) 重新参数化提示表示(可选)。

(3) 使用线性分类头而不是语言建模头。

在这里插入图片描述

实验

数据集

SuperGLUE、命名实体识别、阅读理解和语义角色标注等

预训练模型

模型大小
BERT-large335M
RoBERTa-large355M
DeBERTa-xlarge750M
GLM-xlarge2B
GLM-xxlarge10B

实验结果

SuperGLUE 开发集的结果。P-tuning v2 在小于 10B 的模型上超过了 P-tuning,匹配在不同模型尺度上微调的性能。
在这里插入图片描述

命名实体识别 (NER)、问答 (Extractive QA) 和语义角色标签 (SRL) 的结果。NER 和 SRL 中的所有指标都是 micro-f1 分数
在这里插入图片描述

消融实验

  • 带LM头的语言分析器与带线性头的CLS标签。

在RoBERTa-large上,实验结果表明两者性能相近。
在这里插入图片描述

  • 提示深度的影响

在给定相同数量的可调节参数下,将连续提示添加到更深层(靠近输出层)可以获得比添加到开始层更好的性能,这验证了多层连续提示的有效性。

在RTE的情况下,仅向17-24层添加提示可以产生与所有层非常接近的性能
在这里插入图片描述

结论

  • 在不同的模型规模(300M 到 10B 参数)和自然语言理解(NLU)任务上,P-Tuning v2 的性能与微调方法相当。

  • P-Tuning v2 只需调整 0.1% 到 3% 的任务特定参数,而微调方法需要调整整个模型的所有参数。

  • 与其他提示调优方法相比,P-Tuning v2 在简单分类任务和困难序列标注任务(如抽取式问答和命名实体识别)上的表现更接近微调方法。

总之,P-Tuning v2 方法具有较低的训练时间、内存成本和每个任务的存储成本,并且在各种模型规模和 NLU 任务上具有与微调方法相当的性能。这使得 P-Tuning v2 可以作为微调方法的替代方案,并成为未来研究的强基线。

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

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

相关文章

中国人工智能

随着科技的飞速发展,人工智能(AI)作为一项前沿技术在各个领域展现出了强大的潜力。本文将探讨中国人工智能的历史、现状,并展望其未来发展。 人工智能的起源与历史 人工智能的概念最早诞生于1956年的美国达特茅斯学院的夏季研讨会…

【数据库】数据库元素的层次,树形结构的下的多粒度加锁,以及幻象的正确处理

数据库元素的层次 ​专栏内容: 手写数据库toadb 本专栏主要介绍如何从零开发,开发的步骤,以及开发过程中的涉及的原理,遇到的问题等,让大家能跟上并且可以一起开发,让每个需要的人成为参与者。 本专栏会定期…

(学习笔记)Xposed模块编写(一)

前提:需要已经安装Xposed Installer 1. 新建一个AS项目 并把MainActvity和activity_main.xml这两个文件删掉,然后在AndriodManifest.xml中去掉这个Activity的声明 2. 在settings.gralde文件中加上阿里云的仓库地址,否则Xposed依赖无法下载 m…

【llm使用】ChatGLM3-6B Transformers部署调用

文章目录 环境准备模型下载代码准备部署 说明:本文转自国内开源组织datawhale的repo: self-llm 环境准备 在autodl平台中租一个3090等24G显存的显卡机器,如下图所示镜像选择PyTorch–>2.0.0–>3.8(ubuntu20.04)–>11.8 接下来打…

windows 系统读取 Linux Ext 分区硬盘

windows 系统读取 Linux Ext 分区硬盘 起因是需要处理一些在硬盘中的数据,硬盘插到我的电脑上后无法读盘,在 Windows 存储管理器中查看显示未分配,需要格式化,但是在 Ubuntu 系统的电脑中可以正常识别,试验了几次后发…

.NET8构建统计Extreme Optimization Numerical Libraries

为 .NET 8 构建统计应用程序 Extreme Optimization Numerical Libraries for .NET V8.1.22 添加了对 .NET 8 的支持,使您可以使用最新版本的 Microsoft 平台。 Extreme Optimization Numerical Libraries for .NET 是通用数学和统计类的集合,为技术和统计…

【Linux】第二十六站:软硬链接

文章目录 一、软链接二、硬链接三、ln命令四、该如何理解硬链接?五、如何理解软链接六、为什么要用软硬链接1.软链接的应用场景2.硬链接的应用场景 一、软链接 如下所示,我们创建一个文件以后,然后执行下面的指令 ln -s file.txt soft-link…

C++模拟实现unordered_map和unordered_set

目录 1.了解哈希表 1.哈希表 1.他的实现原理就是: ​编辑 2.写单个数据的类型(这边先模拟map的kv类型,后面会再一起改,这边先一步步的先简单实现他) 3.封装整个类: 4.哈希表中存储string 2.哈…

前后端分离部署https

引用:https://blog.csdn.net/weixin_35676679/article/details/127841598 前后端部署,,一般用的是nginx和java,,, 下载SSL证书: java配置https 将证书配置到springboot中 server:port: 544…

线程...

文章目录 1.Linux中线程该如何理解2.重新定义线程 和 进程3.重谈地址空间 --- 第四讲4.Linux线程周边的概念 线程:是进程内的一个执行分支。线程的执行粒度,要比进程要细 很多教材喜欢这么说,这只是一个线程的特征之一,来解释线程。 1.Linux中线程该如何…

基于51单片机的交通灯_紧急开关+黄灯倒计时+可调时间

51单片机交通灯_紧急开关黄灯倒计时可调时间 开题报告系统硬件设计主控制器选择系统硬件结构图时钟及复位电路指示灯及倒计时模块 倒计时模块:程序软件主流程框架main函数 设计报告资料清单资料下载链接 基于51单片机交通灯_紧急开关黄灯倒计时可调时间 仿真图prote…

题目:神奇的进制

解题思路: 用电脑自带的计算器,切换到程序员模式。里面有进制转换功能。 由题目,要求严格递增且都为字母,还要大于2023,则数字16进制为ABC。

【STM32】电机驱动

一、电机分类 二、直流电机的分类 1.有刷电机 2.无刷电机 3.直流减速电机 三、H桥电路 正向旋转 驱动Q1和Q4 反向旋转 驱动Q2和Q3 四、MC3386电机驱动芯片 1.基本原理图 1)前进/后退:IN1和IN2的电平顺序决定电机的正反转 2)调节速度&#…

Redis对象

Redis根据基本数据结构构建了自己的一套对象系统。主要包括字符串对象、列表对象、哈希对象、集合对象和有序集合对象 同时不同的对象都有属于自己的一些特定的redis指令集,而且每种对象也包括多种编码类型,和实现方式。 Redis对象结构 struct redisOb…

Linux 防火墙

目录 安全技术 防火墙的分类 按保护范围划分 按实现方式划分 按网络协议划分 应用层防火墙(7层) 防火墙的工作原理 linux防火墙的基本认识 防火墙工具介绍 1.iptables 2.firewalld 3.nftables 安全技术 —— 入侵检测系统(Intru…

centos7中通过kubeadmin安装k8s集群

k8s部署官方提供了kind、minikube、kubeadmin等多种安装方式。 其中minikube安装在之前的文章中已经介绍过,部署比较简单。下面介绍通过kubeadmin部署k8s集群。 生产中提供了多种高可用方案: k8s官方文档 本文安装的是1.28.0版本。 建议去认真阅读一下…

使用coco数据集进行语义分割(1):数据预处理,制作ground truth

如何coco数据集进行目标检测的介绍已经有很多了,但是关于语义分割几乎没有。本文旨在说明如何处理 stuff_train2017.json stuff_val2017.json panoptic_train2017.json panoptic_val2017.json,将上面那些json中的dict转化为图片的label mask&am…

Docker下安装MySQL

如果在Docker下直接拉取MySQL并运行镜像,由于没有指定字符编码集,可能会存在插入中文出现乱码的情况,并且当容器删除后,容器里面存在的数据会丢失,所以在运行容器时应该使用数据卷进行挂载,按照如下步骤操作…

大模型中幂律缩放法则和涌现能力

幂律缩放法则是一种用于描述两个变量之间关系的数学模型。 根据幂律缩放法则,当一个变量的值变化时,另一个变量的值以指数方式变化。具体而言,幂律缩放法则可以表示为Y a * X^b,其中Y表示一个变量的值,X表示另一个变…

网页中的json文档,怎么保存到本地

火狐浏览器操作方法 方法一 右键——>另存页面为 方法二 点击右边的三条横线——>另存页面为 谷歌浏览器操作方法 方法一 右键——>另存为 方法二