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。我们期望在训练过程中精心设计的损失函数可以导致更小的实际模型大小和更快的推理加速,我们将其留在未来。

相关推荐
IT_陈寒6 小时前
Vue这个坑我跳了两次,原来问题出在这
前端·人工智能·后端
新新技术迷7 小时前
Node给AI接口做SSE代理与鉴权
人工智能
redreamSo7 小时前
大模型是不是到顶了?瓶颈到底在哪
人工智能·openai
Oo9208 小时前
Tool Use 背后的技术逻辑
人工智能
姗姗来迟了8 小时前
Vue3封装AI流式对话组件踩坑实录
人工智能
码上天下8 小时前
用Pinia管理AI多会话状态
人工智能
用户054324329709 小时前
Next.js接大模型流式SSE实操踩坑
人工智能
Assby9 小时前
从 Function Calling 到 MCP:理解 Agent 工具调用的底层通信机制
人工智能·后端
小星AI9 小时前
Claude Code 从入门到精通,一步到位
人工智能
后端小肥肠9 小时前
Codex + Obsidian 做人生副本视频:输入主题文案,直通剪映草稿
人工智能·aigc·agent