Pruning Pre-trained Language Models Without Fine-Tuning

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

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

  • 摘要
  • [1 引言](#1 引言)
  • [2 相关工作](#2 相关工作)
  • [3 背景](#3 背景)
  • [4 静态模型剪枝](#4 静态模型剪枝)
  • [5 实验](#5 实验)
  • [6 分析](#6 分析)
  • [7 结论](#7 结论)
  • [8 局限性](#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。我们期望在训练过程中精心设计的损失函数可以导致更小的实际模型大小和更快的推理加速,我们将其留在未来。

相关推荐
Se7en258几秒前
Prefix Caching 详解:实现 KV Cache 的跨请求高效复用
人工智能
山顶听风6 分钟前
多层感知器MLP实现非线性分类(原理)
人工智能·分类·数据挖掘
佛喜酱的AI实践6 分钟前
5分钟入门Google ADK -- 从零构建你的第一个AI Agent
人工智能
用户38775434335638 分钟前
Midjourney Imagine API 申请及使用
人工智能·后端
山顶听风9 分钟前
MLP实战二:MLP 实现图像数字多分类
人工智能·机器学习·分类
mengyoufengyu16 分钟前
DeepSeek12-Open WebUI 知识库配置详细步骤
人工智能·大模型·deepseek
carpell1 小时前
【语义分割专栏】3:Segnet实战篇(附上完整可运行的代码pytorch)
人工智能·python·深度学习·计算机视觉·语义分割
智能汽车人1 小时前
自动驾驶---SD图导航的规划策略
人工智能·机器学习·自动驾驶
mengyoufengyu1 小时前
DeepSeek11-Ollama + Open WebUI 搭建本地 RAG 知识库全流程指南
人工智能·深度学习·deepseek
Tianyanxiao1 小时前
华为×小鹏战略合作:破局智能驾驶深水区的商业逻辑深度解析
大数据·人工智能·经验分享·华为·金融·数据分析