当前位置: 首页 > news >正文

Pruning Pre-trained Language Models Without Fine-Tuning

本文是LLM系列文章,针对《Pruning Pre-trained Language Models Without Fine-Tuning》的翻译。

修剪未微调的预训练语言模型

  • 摘要
  • 1 引言
  • 2 相关工作
  • 3 背景
  • 4 静态模型剪枝
  • 5 实验
  • 6 分析
  • 7 结论
  • 8 局限性

摘要

为了克服预训练语言模型(PLMs)中的过度参数化问题,剪枝作为一种简单直接的压缩方法被广泛使用,它直接去除不重要的权重。先前的一阶方法成功地将plm压缩到极高的稀疏度,而性能下降很小。这些方法,如运动剪枝,使用一阶信息剪枝plm,同时微调剩余的权重。在这项工作中,我们认为微调对于一阶剪枝是多余的,因为一阶剪枝足以在没有微调的情况下将plm收敛到下游任务。在此动机下,我们提出了静态模型剪枝(SMP),该方法仅使用一阶剪枝使plm适应下游任务,同时达到目标稀疏度水平。此外,我们还设计了新的掩蔽函数和训练目标来进一步改进SMP。在各种稀疏度水平上的大量实验表明,SMP方法比一阶和零阶方法有显著的改进。与以前的一阶方法不同,SMP也适用于低稀疏度,并且优于零阶方法。同时,由于不需要微调,SMP比其他方法具有更高的参数效率。我们的代码可在https://github.com/kongds/SMP上获得。

1 引言

2 相关工作

3 背景

4 静态模型剪枝

5 实验

6 分析

7 结论

在本文中,我们提出了一种简单而有效的特定于任务的剪枝方法,称为静态模型剪枝(SMP)。考虑到之前的方法,即执行修剪和微调以使plm适应下游任务,我们发现微调可能是冗余的,因为一阶修剪已经收敛了plm。在此基础上,我们的方法侧重于使用一阶剪枝来代替微调。无需微调,我们的方法明显优于其他一阶方法。大量的实验也表明,我们的方法在各种稀疏度下都达到了最先进的性能。对于BERT中的彩票假设,我们发现它包含了不需要训练就能获得原始性能的稀疏性子网,这些子网在80%剩余权重下甚至优于GLUE上微调后的BERT。

8 局限性

与所有非结构化剪枝方法一样,SMP与结构化剪枝方法相比难以实现推理加速。由于SMP对模型的剪枝没有进行微调,这也限制了SMP对结构化剪枝方法的扩展。然而,我们发现SMP中大多数稀疏矩阵的行在高稀疏度水平上是完全修剪的。这允许我们直接压缩矩阵的大小,从而产生更快的推理。例如,MNLI的3%剩余权重模型可以被压缩到模型实际大小的47.43%(导致大约1.37倍的推理加速),而无需重新训练或性能损失。通过删除包含少于10个剩余权重的矩阵行,我们可以进一步将其压缩到实际大小的25.19%(推理加速1.76倍),精度下降0.9。我们期望在训练过程中精心设计的损失函数可以导致更小的实际模型大小和更快的推理加速,我们将其留在未来。

相关文章:

Pruning Pre-trained Language Models Without Fine-Tuning

本文是LLM系列文章,针对《Pruning Pre-trained Language Models Without Fine-Tuning》的翻译。 修剪未微调的预训练语言模型 摘要1 引言2 相关工作3 背景4 静态模型剪枝5 实验6 分析7 结论8 局限性 摘要 为了克服预训练语言模型(PLMs)中的过度参数化问题&#xf…...

Java内存模型-Java Memory Model(JMM)-可见性、原子性、有序性

5. Java内存模型之JMM 5.1 先从大场面试开始 你知道什么是Java内存模型JMM吗? JMM和volatile他们两个之间的关系? JMM没有那些特征或者它的三大特征是什么? 为什么要有JMM,它为什么出现?作用和功能是什么&#xf…...

基于Springboot实现在线答疑平台系统项目【项目源码+论文说明】

基于Springboot实现在线答疑平台系统演示 摘要 社会的发展和科学技术的进步,互联网技术越来越受欢迎。网络计算机的生活方式逐渐受到广大师生的喜爱,也逐渐进入了每个学生的使用。互联网具有便利性,速度快,效率高,成本…...

前端工程化知识系列(1)

目录 1. 什么是前端工程化,以及它为前端开发带来了哪些好处?2. 你使用过哪些版本控制系统?描述一下你在团队中如何处理代码合并和冲突解决的经验。3. 什么是Git,它的工作原理是什么?可以解释一下常用的Git命令吗&#…...

xml文件报错 ORA-00907: 缺失右括号

原来的sql 更改之后 加一个select * from ()...

VScode platformio的使用

一、platformio 工程创建 打开vscode界面你会发现左下多了个家的小图标,点击这里就可以进入platformio。 在右侧Quick Access栏中,有4个选项。可以看得出来,我们这里直接点击创建一个新的工程。 点击New Project打开project配置界面&#x…...

transformer_01

一、传统RNN存在的问题 1.序列前序太长,每个xi要记住前面的特征,而且一直在学,没有忘记,可能特征不能学的太好 2.串行,层越多越慢,难以堆叠很多层; 3.只能看到过去,不能看到未来 搞…...

JavaSE入门---认识方法

文章目录 什么是方法?方法定义实参和形参的关系没有返回值的方法 方法重载方法签名 什么是方法? 在编程中某段功能的代码可能频繁使用到,如果在每个位置都重新实现一遍,会有一些缺点,比如: 使程序变得繁琐…...

编译[Bug]——too few arguments for template template parameter “Tuple“ detected

项目场景: 当使用高版本的cuda去安装低版本pytorch,并且编译用低版本pytorch写的cuda算子时,或者说是VS的版本过高如2022和2019,都有可能会出现某个.h文件或者.c文件报错,如: error: too few arguments f…...

网工内推 | 南天软件,base北京,需持有CCIE认证,最高25k

01 北京南天软件有限公司 招聘岗位:IPT运维工程师 职责描述: 负责客户Cisco语音网络IPT ,CUCM的日常运维,扩容和项目支持,支持路由交换,无线等项目,实施工作以及相关实施文档。 任职要求: 1、…...

Unity有限状态机的简易实现

本人嘴笨,不会说。 该代码实现一个功能较为齐全的有限状态机,可用于大部分的应用场景。 大致实现几个功能 状态更新状态转换状态消息处理全局状态转换和反转状态(转换为前一个状态) 代码分为 状态类状态管理类枚举(…...

什么是NetApp的DQP和如何安装DQP?

首先看看什么是DQP,DQPDisk Qualification Package,文字翻译就是磁盘验证包。按照NetApp的最佳实践,要定期升级DQP包,保证对最新磁盘和磁盘扩展柜的兼容。 本文主要介绍7-mode下如何升级DQP,至于cluster mode另外文章…...

Vue之Vue的介绍安装开发实例生命周期钩子

博主心得: keyup必须与change一起使用v-on.click可以直接写成clickclick“setVal”里的setVal换成数字之后有惊喜VS Code是真的狗,一些报错根本不会直接显示总结:VS code太狗了 1.vue介绍 1.1 什么是vue vue是一个构建用户界面UI的渐进式jav…...

【计网】计算机网络概述

目录 一、计算机网络的概念 二、计算机网络的组成 1、从组成部分上看 2、从工作方式上看 3、从功能组成上看 三、计算机网络的功能 1、数据通信 2、资源共享 3、分布式处理 4、提高可用性 5、负载均衡 四、计算机网络的分类 1、按分布范围 1.广域网 2.城域网 3.…...

初识Java 14-1 测试

目录 测试 单元测试 JUnit 测试覆盖率 前置条件 断言 Java提供的断言语法 Guava提供的更方便的断言 契约式设计中的断言 DbC 单元测试 Guava中的前置条件 本笔记参考自: 《On Java 中文版》 测试 ||| 如果没有经过测试,代码就不可能正常工作…...

react常用的hooks有哪些?

React常用的Hooks包括以下几种: 1.useState:用于在函数组件中创建和管理状态。它返回一个数组,第一个值是当前状态的值,第二个值是更新状态的函数。 使用时,首先通过解构赋值获取状态值和更新函数,并设置初…...

Nacos config 配置中心详解

目录 一、Nacos启动 1.预备环境准备 2.下载编译后压缩包方式 3. 启动服务器 二、 配置管理 多配置格式编辑器 编辑DIFF 示例代码 监听者查询 配置的版本及一键回滚 命名空间管理 登录管理 修改默认用户名/密码方法 关闭登录功能 会话时间 三、启动配置管理 添加依赖&#xff1a…...

C++ UDP通信

#pragma once #ifndef XUDP_H #define XUDP_H#ifdef WIN32 #include <windows.h> #define socklen_t int #else #include <arpa/inet.h> #define closesocket close //替换close函数 #include <unistd.h>#include<iostream> #endifclass XUdp { pub…...

自由程序员想接私活?那你还不得知道这几个接单平台!最后一个就是宝藏!!

相信喜欢搞钱的程序员都知道&#xff0c;平常在平台上接点私活&#xff0c;利用闲暇时间接单是搞钱的常用套路&#xff0c;可是你确定你选对平台了吗&#xff1f;不管你是刚准备接单的小白&#xff0c;还是已经干了一段时间的老油条&#xff0c;都建议你看完本期文章&#xff0…...

二叉树与递归的相爱相杀

数据结构之二叉树 一、基于二叉树的基础操作1.二叉树的构建2.二叉树的遍历①前序遍历&#xff08;深度遍历&#xff09;②中序遍历③后序遍历④层序遍历判断一棵二叉树是否是完全二叉树&#xff08;基于层序遍历的思想&#xff09; 3.二叉树的数量问题①求二叉树结点个数②求二…...

RAG:终结AI幻觉,让你的大语言模型秒变“知识渊博”!

本文深入浅出地介绍了检索增强生成&#xff08;RAG&#xff09;技术&#xff0c;解释了其如何通过结合文档检索与大语言模型&#xff08;LLM&#xff09;&#xff0c;有效减少AI幻觉现象。文章详细阐述了RAG的工作流程&#xff0c;包括数据分块、嵌入转换、向量数据库存储、问题…...

ncmdumpGUI:免费解锁网易云音乐加密文件,3分钟实现跨设备播放自由

ncmdumpGUI&#xff1a;免费解锁网易云音乐加密文件&#xff0c;3分钟实现跨设备播放自由 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换&#xff0c;Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你是否曾经遇到过这样…...

ElevenLabs芬兰语TTS部署踩坑实录(含CI/CD流水线集成模板):1次失败=2.3小时调试,我们帮你省下87%时间

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;ElevenLabs芬兰语TTS部署踩坑实录&#xff08;含CI/CD流水线集成模板&#xff09;&#xff1a;1次失败2.3小时调试&#xff0c;我们帮你省下87%时间 核心痛点&#xff1a;芬兰语语音合成的隐性陷阱 ElevenLab…...

告别PPT超时焦虑:PPTTimer让演讲时间管理变得如此简单

告别PPT超时焦虑&#xff1a;PPTTimer让演讲时间管理变得如此简单 【免费下载链接】ppttimer 一个简易的 PPT 计时器 项目地址: https://gitcode.com/gh_mirrors/pp/ppttimer 还在为PPT演示超时而烦恼吗&#xff1f;每次演讲都像和时间赛跑&#xff0c;担心讲得太快或太…...

2026年AI论文网站盘点:12款神器助你高效完成学术写作、润色和降重

随着 AI 技术的持续突破&#xff0c;2026 年的论文写作工具市场已迈入“智能化、精细化、合规化”的新阶段。从本科生的课程论文到研究生的学位论文&#xff0c;再到科研人员的期刊投稿&#xff0c;AI 工具正在深度融入各类学术场景&#xff0c;为不同层次的写作者提供精准支持…...

通过Python快速调用Taotoken实现自动化文档生成

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 通过Python快速调用Taotoken实现自动化文档生成 对于嵌入式或单片机开发者而言&#xff0c;为Keil5项目编写和维护技术文档是一项耗…...

利用Taotoken模型广场为不同AI应用场景挑选最合适的模型

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 利用Taotoken模型广场为不同AI应用场景挑选最合适的模型 在构建AI驱动的应用时&#xff0c;一个常见的挑战是如何为不同的功能模块…...

联想笔记本BIOS解锁终极指南:深度解析CFG Lock关闭与DVMT显存调整

联想笔记本BIOS解锁终极指南&#xff1a;深度解析CFG Lock关闭与DVMT显存调整 【免费下载链接】LEGION_Y7000Series_Insyde_Advanced_Settings_Tools 支持一键修改 Insyde BIOS 隐藏选项的小工具&#xff0c;例如关闭CFG LOCK、修改DVMT等等 项目地址: https://gitcode.com/g…...

银河麒麟V10找不到应用商店?手把手教你从源码编译安装录屏神器Capture(附ffmpeg配置避坑)

银河麒麟V10系统下从源码构建专业录屏工具Capture的全流程指南 在国产操作系统银河麒麟V10上&#xff0c;许多用户发现系统默认没有提供应用商店&#xff0c;导致无法直接安装常用的录屏工具。本文将详细介绍如何从源码编译安装功能强大的录屏软件Capture&#xff0c;并解决ARM…...

C++11、C++14、C++17、C++20常用新特性

C11自动类型推断&#xff08;auto关键字&#xff09;&#xff1a;C11引入了auto关键字&#xff0c;可以根据变量初始值自动推导出变量类型。例如&#xff1a;12auto i 42; // i被推导为int类型auto d 3.14; // d被推导为double类型基于范围的for循环&#xff08;range-base…...