【大语言模型】ACL2024论文-01 Quantized Side Tuning: Fast and Memory-Efficient Tuning of Quantized Large Language

本文涉及的产品
实时数仓Hologres,5000CU*H 100GB 3个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
实时计算 Flink 版,5000CU*H 3个月
简介: 本文介绍了Quantized Side Tuning(QST)方法,旨在解决大型语言模型(LLMs)微调过程中的内存效率和速度问题。QST通过将模型权重量化为4位,并引入一个与LLM分离的侧网络,显著减少了内存占用并加快了微调速度,同时保持了与现有技术相当的性能。实验表明,QST可以将总内存占用减少高达2.3倍,并将微调速度提高高达3倍。

【大语言模型】ACL2024论文-01 Quantized Side Tuning: Fast and Memory-Efficient Tuning of Quantized Large Language


概览

本文介绍了一种名为Quantized Side Tuning(QST)的新方法,旨在解决大型语言模型(LLMs)在微调过程中的内存效率和速度问题。QST通过一个双阶段过程实现:首先,将LLM的模型权重量化为4位,以减少模型权重的内存占用;其次,引入一个与LLM分离的侧网络,该网络利用LLM的隐藏状态来进行特定任务的预测。这种方法显著减少了LLM微调过程中的内存占用,并加快了微调过程,同时保持了与现有技术相当的性能。实验表明,QST可以将总内存占用减少高达2.3倍,并将微调过程的速度提高高达3倍。

研究背景与技术背景

大型语言模型(LLMs)在多种下游任务中表现出色,但其微调过程需要显著的内存资源。现有的微调方法主要关注参数效率,即只更新一小部分可训练参数,或者尝试减少训练阶段的内存占用。然而,这些方法在减少内存占用方面仍有局限,尤其是在模型权重、优化器状态和中间激活这三个主要来源上。随着模型规模的增加,这些挑战变得更加严峻,限制了LLMs在实际应用中的部署。

技术挑战

LLMs的微调面临的主要技术挑战包括:

  1. 内存占用:模型权重、优化器状态和中间激活的内存占用随着模型规模的增加而显著增长。
  2. 训练效率:在保持模型性能的同时,减少训练时间和资源消耗。
  3. 参数效率:在不显著增加模型参数的情况下,实现有效的微调。

这些挑战限制了LLMs在资源受限的环境中的应用,尤其是在需要快速部署和响应的场景中。

如何破局

QST通过以下方法解决了上述挑战:

  1. 4位量化:将模型权重从16位量化到4位,显著减少了模型权重的内存占用。
  2. 侧网络:引入一个与LLM分离的侧网络,避免了通过LLM进行反向传播,从而减少了中间激活的内存需求。
  3. 低秩适配器和无梯度下采样模块:使用这些技术显著减少了可训练参数,进一步减少了优化器状态的内存占用。

这些方法共同作用,使得QST在减少内存占用和提高微调速度方面取得了显著的效果。

技术应用

QST的实验设置包括在不同的LLMs(如OPT和LLaMA 2)上进行评估,这些模型的参数量从13亿到700亿不等。实验在多个基准测试上进行,包括GLUE和MMLU,涵盖了自然语言理解和生成任务。QST在这些任务上展示了其在减少内存占用和提高微调速度方面的优势,同时保持了与全参数微调相当的性能。

QST的潜在应用包括但不限于:

  • 资源受限的环境:在移动设备或边缘计算环境中部署LLMs。
  • 快速原型设计和测试:在开发新应用时快速迭代和测试不同的模型配置。
  • 大规模部署:在需要处理大量并发请求的在线服务中使用LLMs。

主要相关工作与参考文献

QST的相关工作涵盖了参数效率微调和内存效率训练的多个方面。一些关键的参考文献包括:

  • 参数效率微调:如LoRA、Adapter等方法,通过引入新的任务特定参数或更新模型中一小部分参数来实现微调。
  • 内存效率训练:如可逆神经网络和梯度检查点等技术,通过减少中间激活的存储需求来降低内存占用。
  • 网络压缩:如网络剪枝和蒸馏,通过减少模型大小来提高训练和推理的计算效率。

这些工作为QST的发展提供了理论基础和技术背景,QST在此基础上通过创新的方法进一步推动了LLMs的微调效率和内存占用的优化。


后记

如果觉得我的博客对您有用,欢迎 打赏 支持!三连击 (点赞、收藏、关注和评论) 不迷路,我将持续为您带来计算机人工智能前沿技术(尤其是AI相关的大语言模型,深度学习和计算机视觉相关方向)最新学术论文及工程实践方面的内容分享,助力您更快更准更系统地了解 AI前沿技术

目录
相关文章
|
机器学习/深度学习 数据挖掘
【提示学习】HPT: Hierarchy-aware Prompt Tuning for Hierarchical Text Classification
本文是较早把Prompt应用到层级多标签文本分类领域的论文。思路是把层级标签分层编入到Pattern中,然后修改损失函数以适应多标签的分类任务。
243 0
|
4月前
|
机器学习/深度学习 算法 测试技术
|
7月前
|
机器学习/深度学习 并行计算 关系型数据库
【RetNet】论文解读:Retentive Network: A Successor to Transformer for Large Language Models
【RetNet】论文解读:Retentive Network: A Successor to Transformer for Large Language Models
206 1
|
7月前
|
机器学习/深度学习 JSON 自然语言处理
[GPT-1]论文实现:Improving Language Understanding by Generative Pre-Training
[GPT-1]论文实现:Improving Language Understanding by Generative Pre-Training
124 1
|
7月前
|
机器学习/深度学习 自然语言处理 API
[DistilBERT]论文实现:DistilBERT:a distilled version of BERT: smaller, faster, cheaper and lighter
[DistilBERT]论文实现:DistilBERT:a distilled version of BERT: smaller, faster, cheaper and lighter
71 0
|
7月前
|
Python
[UNILM]论文实现:Unified Language Model Pre-training for Natural Language.........
[UNILM]论文实现:Unified Language Model Pre-training for Natural Language.........
46 0
|
7月前
|
存储 JSON 算法
【论文代码】②.1 STIOCS: Active learning-based semi-supervised training framework for IOC extraction
【论文代码】②.1 STIOCS: Active learning-based semi-supervised training framework for IOC extraction
39 0
|
7月前
|
自然语言处理 算法 Python
[SentencePiece]论文解读:SentencePiece: A simple and language independent subword tokenizer...
[SentencePiece]论文解读:SentencePiece: A simple and language independent subword tokenizer...
107 0
|
7月前
|
自然语言处理
【论文代码】① STIOCS: Active learning-based semi-supervised training framework for IOC extraction
【论文代码】① STIOCS: Active learning-based semi-supervised training framework for IOC extraction
49 0
下一篇
DataWorks