search
HomeTechnology peripheralsAIICML 2024 high-scoring paper | Zero-order optimizer fine-tunes large models and significantly reduces memory

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存
The AIxiv column is a column where this site publishes academic and technical content. In the past few years, the AIxiv column of this site has received more than 2,000 reports, covering top laboratories from major universities and companies around the world, effectively promoting academic exchanges and dissemination. If you have excellent work that you want to share, please feel free to contribute or contact us for reporting. Submission email: liyazhou@jiqizhixin.com; zhaoyunfeng@jiqizhixin.com

About the co-first author of this article: Zhang Yihua: a third-year doctoral student in the Department of Computer Science at Michigan State University, studying under Professor Sijia Liu, her main research direction is large models security, privacy and efficiency issues. Li Pingzhi: He graduated from the University of Science and Technology of China with a bachelor's degree. He will enter the University of North Carolina at Chapel Hill as a Ph.D. in 2024 Fall, studying under Professor Chen Tianlong. His main research interests focus on the fields of efficient machine learning and AI4Science. Hong Junyuan: Postdoctoral fellow at the University of Texas at Austin, mentored by Professor Zhangyang Wang. Graduated from Michigan State University with a Ph.D. under the tutelage of Professor Jiayu Zhou. His current main research direction is trustworthy large language models and medical applications of artificial intelligence. Li Jiaxiang: Postdoctoral fellow at the University of Minnesota. Currently doing research on numerical optimization theory, machine learning theory and large-scale machine learning optimization problems under the guidance of Professor Hong Mingyi and Professor Zhang Shuzhong.

Open source large language models (LLM) are flourishing. In order to adapt them to various downstream tasks, fine-tuning is the most widely adopted basic method. Although first-order optimizers (SGD, Adam, etc.) based on automatic differentiation technology (SGD, Adam, etc.) occupy the mainstream in model fine-tuning, as models become larger and larger, they bring increasing pressure on video memory. Therefore, how to efficiently reduce the graphics memory during fine-tuning so that a single card can meet the fine-tuning requirements has become a hot research issue. It is worth noting that although backpropagation is the cornerstone of these first-order optimizers and is used to calculate the gradient of each weight of the neural network, it is also a memory killer. The overhead caused by saving huge calculation graphs is also large. The model era is highlighted in particular. At the same time, the Zeroth-Order Optimization does not need to save the calculation graph at all, and instead uses finite differences to approximate the gradient of the network, greatly reducing the neural network by completely avoiding back-propagation (BP). Memory overhead in network updates.

Similar to the various variants of stochastic gradient descent in first-order optimizers, zero-order optimizers also have various improved algorithms that have not been explored before. Recently, many researchers from Michigan State University, University of North Carolina at Chapel Hill, University of Texas at Austin, University of Minnesota Twin Cities, IBM Research Center, Princeton University, and Alibaba Damo Academy jointly launched a comprehensive evaluation ( benchmark) article: Revisiting Zeroth-Order Optimization for Memory-Efficient LLM Fine-Tuning: A Benchmark. This article covers six types of optimizers that do not require backpropagation (BP-free), five types of large models, tasks of three complexity levels, four types of fine-tuning schemes, and three new algorithms that enhance zero-order optimizers. Currently, related papers have been accepted by ICML 2024 with high scores, and the code has been open source; details are as follows.

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

  • Paper address: https://arxiv.org/abs/2402.11592
  • Code address: https://github.com/ZO-Bench/ZO-LLM
  • Zero-order optimization lecture notes address (AAAI 2024 Tutorial): https://sites.google.com/view/zo-tutorial-aaai-2024/

What is a zero-order optimizer? Why is it so important?

Zeroth-Order Optimization only relies on the output of the neural network for gradient estimation, and is famous for not needing to calculate backpropagation at all and requiring very little internal training consumption. Although there are different gradient estimation methods in the field of zero-order optimizers, this article specifically refers to a series of algorithms based on Random Gradient Estimator (RGE). Simply put, the finite difference is calculated by random perturbations drawn from a Gaussian distribution and used as an approximate estimate of the gradient. The RGE mathematical formula is as follows.

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

在此之前,零阶优化已经大量应用于机器学习问题中,比如对抗样本生成和防御,黑箱模型解释,强化学习和自动机器学习;详细的算法和应用介绍请参看 [1]。在大模型领域,MeZO [2] 率先提出将零阶随机梯度下降法(ZO-SGD)用作大模型微调,并展示了零阶优化器的无限潜力。于此同时,ZO-SGD 是最简单、基本的 BP-free 优化器,它的许多更高级的变种 [3] 能否在大模型微调领域带给我们更多惊喜,是一个亟待研究的课题。本文系统地评测了以下无需反向传播(BP-free)的优化算法在大模型微调任务上的性能、效率和兼容性,目的是向社区展示零阶优化器在多种大模型任务上的广泛潜力:

  • ZO-SGD:零阶随机梯度下降 [4]
  • ZO-SGD-Sign:基于符号的(sign-based)零阶随机梯度下降 [5]
  • ZO-SGD-MMT:带有动量(momentum)的零阶随机梯度下降 [6]
  • ZO-SGD-Cons:保守(conservative)梯度更新的零阶随机梯度下降 [7]
  • ZO-Adam:零阶 Adam 优化器 [8]

本研究还包括了 Forward-Grad [9] 方法,该方法基于沿随机方向向量的方向导数来无偏估计梯度。值得注意的是,Forward-Grad 虽然不直接使用梯度回传,但是却仍然用到了自动微分算法,因此它是一种一阶的 BP-free 算法。

综上所述,本文的评测包含了上述 5 种零阶优化器以及 Forward-Grad 方法,同时对比一阶优化器中最常用的 FO-SGD 和 FO-Adam。在具体微调形式上,评测全面覆盖了 5 种 LLM 架构(RoBERTa, OPT, LLaMA, Vicuna, Mistral),3 种不同复杂度的任务(SST2, COPA, WinoGrande),以及 4 种微调方案(full-tuning, LoRA, prompt tuning, prefix tuning)。

大模型微调准确性评测

作者指出,为了有效地利用零阶优化器对大型模型在下游任务上进行微调,必须合理地运用输入模板,以便将下游任务与预训练任务进行对齐。例如对于 SST2 来说,使用模板 “SENTENCE. It was [terrible|great].” 能够在 ZO-SGD 上带来约 10% 的性能提升。然而对于一阶优化器(如 FO-SGD),无论是否使用模板性能差异都不大,衬托出零阶优化器的独特性。

SST2 作为一个较为基础的任务,其实验结果可以支持以下结论:

  • ZO-Adam 似乎是最有效的零阶优化器:在 8 个微调设置中的 4 个中表现最佳。
  • Forward-grad 是一种竞争力强但以前被忽视的方法,特别是在全模型微调 (full fine-tuning) 中。
  • ZO-SGD-Cons 和 ZO-SGD-MMT 也展示了强大的性能,而 ZO-SGD-Sign作为最简单的零阶优化器,往往是最弱的方法。

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

进一步,该研究使用更大的模型 OPT-13B,在更复杂、更困难的任务(COPA 和 WinoGrande)上进行实验,得出以下结论:

  • 在更复杂的任务中,不同优化器的性能差异被进一步放大。
  • ZO-Adam 和 ZO-SGD-MMT 在各种实验下展示了非常好的稳定性,这可能归因于减少了方差的设计。
  • LoRA 微调对于零阶算法始终表现出强大的鲁棒性,在各种实验环境中稳定且可靠。

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

大模型微调内存开销评测与详解

以 OPT-13B 模型在 MultiRC 数据集上微调为例,作者还进一步对比分析了不同零阶和一阶优化器的内存与时间成本。如下表所示:首先,从内存效率的角度看,ZO-SGD、ZO-SGD-Cons 和 ZO-SGD-Sign 显示出了类似的高内存效率,只需要一个 A100 GPU 来进行大型语言模型的微调。这并不令人惊讶,因为这些零阶优化器采用相对简单的优化步骤,主要依赖于零阶梯度估计器 RGE 的利用。其次,Forward-Grad 似乎是零阶优化方法在内存效率方面超过一阶方法的临界点(例如与 ZO-Adam 相比)。最后,与一阶方法相比,零阶优化每次迭代的运行时间成本降低了约 41.9%(以 ZO-SGD 与 FO-SGD 为例)。

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

作者进一步深入比较了 ZO-SGD 与 FO-SGD 在不同序列长度下的内存效率。可以看到,ZO-SGD 的内存消耗保持一致,因为其峰值内存消耗仅由模型参数大小决定,相比之下,随着序列长度的增加,FO-SGD 的峰值内存消耗先保持不变,然后开始增加。因此,在长上下文长度的设置中,ZO-SGD 将展示出更好的内存效率优势。具体的内存理论值和实验值可参见原论文。

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

三种改进算法用以增强零阶优化器

零阶优化器在应用于 LLM 时收敛效率受限,主要是因为它们在梯度估计上的方差较大。为了进一步增强零阶优化器,作者从降低梯度估计方差的角度入手,提出了三种进阶算法,包括:分块零阶微调(block-wise ZO fine-tuning)、零阶和一阶混合微调(hybrid ZO and FO fine-tuning)、引入稀疏性的零阶梯度估计(sparsity-induced ZO gradient estimation)。

分块零阶微调(Block-wise ZO fine-tuning)此方法的主要出发点在于,如果零阶优化器在估计梯度时,对 LLM 中参数分块分别进行扰动,通过降低问题规模的方式来见效每次对梯度估计的方差,从而改进优化性能。这种方法的优点体现在能够对模型梯度进行更准确的估计,但是完成一次梯度估计所需要的前向传播的次数会增加。例如,OPT-1.3B 可以分成 26 个参数块(24 个 Transformers 层、嵌入层和 LM 分类头),那么零阶优化器每次计算模型梯度时就会计算 26 次前向传播。为了公平比较 ZO-SGD 和 ZO-SGD-Block,作者还比较了另一种 ZO-SGD 变体的性能,该变体每次对完整的模型进行参数扰动,并将多次扰动后的梯度估计求平均(例如 OPT-1.3B 的 26 次),以此来保证比较时的前向传播次数相同。OPT-1.3B 上实验结果表明,ZO-SGD-Block 大幅超越了两种 ZO-SGD。

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

零阶和一阶混合训练(Hybrid ZO and FO fine-tuning)反向传播(BP)从深层至浅层神经网络依次计算权重梯度。由于零阶优化器在内存占用上有远超传统一阶优化器的优势,但一阶优化器的性能往往更好。因此,采用零阶和一阶优化器的结合将达到一种内存使用和性能之间的平衡(trade-off)。具体而言,对于较深层次网络,可以利用一阶优化器通过反向传播精确计算梯度;对于浅层网络,则可以通过零阶优化器进行梯度估算。实验结果表明,在浅层部分(例如 OPT-1.3B 的前 8/24 层)采用零阶优化器,而在剩余的深层部分使用一阶优化器,可以在节约大约三分之一的显存的同时,达到与完全使用一阶优化器相同的性能水平。

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

使用稀疏梯度的零阶优化器(ZO with gradient pruning)在一阶优化器中,梯度剪裁通常用于加速训练过程;而在零阶优化器中,通过梯度剪裁引入的稀疏梯度可以进一步降低梯度估计的方差,从而提高性能。本文研究了在零阶优化器中应用基于幅值的剪裁策略来获取每一层的稀疏率,然后根据这些稀疏率生成随机的稀疏梯度掩码(mask),并将其应用于随机梯度估计的扰动上。实验结果显示,适度的梯度稀疏性(约 20% 左右)能给零阶优化器带来一定程度的性能提升。

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

结语

在本文中,我们展示了零阶优化器在大型语言模型微调中的有效应用。通过利用损失差分来近似梯度,零阶优化方法避免了反向传播和激活存储的需求,极大地节省了内存资源。我们通过扩大已有的研究范围,将不同的零阶优化方法、任务类型及评估指标容纳到了本次评测中,进行了首次系统的零阶优化技术基准研究。我们的研究不仅揭示了这些方法在精度和效率方面的表现,还深入探讨了任务对齐和前向梯度的关键作用。利用这些实验分析,我们提出了诸如分块优化、零阶与一阶混合训练、梯度稀疏化等技术,以进一步增强基于零阶优化的大模型微调。这些改进技术旨在在保持内存效率的同时,提高微调的准确性。

我们坚信,这些发现和技术的应用可以大力降低大模型研究对硬件资源的要求,使得大模型微调在低端 GPU 也成为可能,从而进一步推动学术研究并在工业界产生实际而有价值的影响。我们鼓励广大研究人员和技术开发者关注我们的研究成果,并探索更多利用 ZO 优化的可能性。未来的研究将继续探索这一领域的深层问题,以解锁 LLM 微调中的更多潜力。

了解更多内容请参考论文与 GitHub 仓库,获取更多信息和资源。

Reference:
[1] Liu, et al,. "A primer on zeroth-order optimization in signal processing and machine learning." IEEE Signal Processing Magazine 37, no. 5 (2020): 43-54.
[2] Malladi, et al., “Fine-Tuning Language Models with Just Forward Passes.” NeurIPS’ 2023.
[3] Liu, et al., “A Primer on Zeroth-Order Optimization in Signal Processing and Machine Learning.” IEEE Signal Processing Magazine.
[4] Ghadimi, et al., “Stochastic First- and Zeroth-order Methods for Nonconvex Stochastic Programming.” 
[5] Liu, et al., “signSGD via Zeroth-Order Oracle. ” ICLR’ 2019.
[6] Huang, et al., “Accelerated Zeroth-Order and First-Order Momentum Methods from Mini to Minimax Optimization.” JMLR’ 2022. 
[7] Kim, et al., “Curvature-Aware Derivative-Free Optimization.”
[8] Chen, et al., “ZO-AdaMM: Zeroth-Order Adaptive Momentum Method for Black-Box Optimization.”
[9] Baydin, et al., “Gradients without Backpropagation.”

The above is the detailed content of ICML 2024 high-scoring paper | Zero-order optimizer fine-tunes large models and significantly reduces memory. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
4090生成器:与A100平台相比,token生成速度仅低于18%,上交推理引擎赢得热议4090生成器:与A100平台相比,token生成速度仅低于18%,上交推理引擎赢得热议Dec 21, 2023 pm 03:25 PM

PowerInfer提高了在消费级硬件上运行AI的效率上海交大团队最新推出了超强CPU/GPULLM高速推理引擎PowerInfer。PowerInfer和llama.cpp都在相同的硬件上运行,并充分利用了RTX4090上的VRAM。这个推理引擎速度有多快?在单个NVIDIARTX4090GPU上运行LLM,PowerInfer的平均token生成速率为13.20tokens/s,峰值为29.08tokens/s,仅比顶级服务器A100GPU低18%,可适用于各种LLM。PowerInfer与

思维链CoT进化成思维图GoT,比思维树更优秀的提示工程技术诞生了思维链CoT进化成思维图GoT,比思维树更优秀的提示工程技术诞生了Sep 05, 2023 pm 05:53 PM

要让大型语言模型(LLM)充分发挥其能力,有效的prompt设计方案是必不可少的,为此甚至出现了promptengineering(提示工程)这一新兴领域。在各种prompt设计方案中,思维链(CoT)凭借其强大的推理能力吸引了许多研究者和用户的眼球,基于其改进的CoT-SC以及更进一步的思维树(ToT)也收获了大量关注。近日,苏黎世联邦理工学院、Cledar和华沙理工大学的一个研究团队提出了更进一步的想法:思维图(GoT)。让思维从链到树到图,为LLM构建推理过程的能力不断得到提升,研究者也通

复旦NLP团队发布80页大模型Agent综述,一文纵览AI智能体的现状与未来复旦NLP团队发布80页大模型Agent综述,一文纵览AI智能体的现状与未来Sep 23, 2023 am 09:01 AM

近期,复旦大学自然语言处理团队(FudanNLP)推出LLM-basedAgents综述论文,全文长达86页,共有600余篇参考文献!作者们从AIAgent的历史出发,全面梳理了基于大型语言模型的智能代理现状,包括:LLM-basedAgent的背景、构成、应用场景、以及备受关注的代理社会。同时,作者们探讨了Agent相关的前瞻开放问题,对于相关领域的未来发展趋势具有重要价值。论文链接:https://arxiv.org/pdf/2309.07864.pdfLLM-basedAgent论文列表:

FATE 2.0发布:实现异构联邦学习系统互联FATE 2.0发布:实现异构联邦学习系统互联Jan 16, 2024 am 11:48 AM

FATE2.0全面升级,推动隐私计算联邦学习规模化应用FATE开源平台宣布发布FATE2.0版本,作为全球领先的联邦学习工业级开源框架。此次更新实现了联邦异构系统之间的互联互通,持续增强了隐私计算平台的互联互通能力。这一进展进一步推动了联邦学习与隐私计算规模化应用的发展。FATE2.0以全面互通为设计理念,采用开源方式对应用层、调度、通信、异构计算(算法)四个层面进行改造,实现了系统与系统、系统与算法、算法与算法之间异构互通的能力。FATE2.0的设计兼容了北京金融科技产业联盟的《金融业隐私计算

吞吐量提升5倍,联合设计后端系统和前端语言的LLM接口来了吞吐量提升5倍,联合设计后端系统和前端语言的LLM接口来了Mar 01, 2024 pm 10:55 PM

大型语言模型(LLM)被广泛应用于需要多个链式生成调用、高级提示技术、控制流以及与外部环境交互的复杂任务。尽管如此,目前用于编程和执行这些应用程序的高效系统却存在明显的不足之处。研究人员最近提出了一种新的结构化生成语言(StructuredGenerationLanguage),称为SGLang,旨在改进与LLM的交互性。通过整合后端运行时系统和前端语言的设计,SGLang使得LLM的性能更高、更易控制。这项研究也获得了机器学习领域的知名学者、CMU助理教授陈天奇的转发。总的来说,SGLang的

大模型也有小偷?为保护你的参数,上交大给大模型制作「人类可读指纹」大模型也有小偷?为保护你的参数,上交大给大模型制作「人类可读指纹」Feb 02, 2024 pm 09:33 PM

将不同的基模型象征为不同品种的狗,其中相同的「狗形指纹」表明它们源自同一个基模型。大模型的预训练需要耗费大量的计算资源和数据,因此预训练模型的参数成为各大机构重点保护的核心竞争力和资产。然而,与传统软件知识产权保护不同,对预训练模型参数盗用的判断存在以下两个新问题:1)预训练模型的参数,尤其是千亿级别模型的参数,通常不会开源。预训练模型的输出和参数会受到后续处理步骤(如SFT、RLHF、continuepretraining等)的影响,这使得判断一个模型是否基于另一个现有模型微调得来变得困难。无

220亿晶体管,IBM机器学习专用处理器NorthPole,能效25倍提升220亿晶体管,IBM机器学习专用处理器NorthPole,能效25倍提升Oct 23, 2023 pm 03:13 PM

IBM再度发力。随着AI系统的飞速发展,其能源需求也在不断增加。训练新系统需要大量的数据集和处理器时间,因此能耗极高。在某些情况下,执行一些训练好的系统,智能手机就能轻松胜任。但是,执行的次数太多,能耗也会增加。幸运的是,有很多方法可以降低后者的能耗。IBM和英特尔已经试验过模仿实际神经元行为设计的处理器。IBM还测试了在相变存储器中执行神经网络计算,以避免重复访问RAM。现在,IBM又推出了另一种方法。该公司的新型NorthPole处理器综合了上述方法的一些理念,并将其与一种非常精简的计算运行

何恺明和谢赛宁团队成功跟随解构扩散模型探索,最终创造出备受赞誉的去噪自编码器何恺明和谢赛宁团队成功跟随解构扩散模型探索,最终创造出备受赞誉的去噪自编码器Jan 29, 2024 pm 02:15 PM

去噪扩散模型(DDM)是目前广泛应用于图像生成的一种方法。最近,XinleiChen、ZhuangLiu、谢赛宁和何恺明四人团队对DDM进行了解构研究。通过逐步剥离其组件,他们发现DDM的生成能力逐渐下降,但表征学习能力仍然保持一定水平。这说明DDM中的某些组件对于表征学习的作用可能并不重要。针对当前计算机视觉等领域的生成模型,去噪被认为是一种核心方法。这类方法通常被称为去噪扩散模型(DDM),通过学习一个去噪自动编码器(DAE),能够通过扩散过程有效地消除多个层级的噪声。这些方法实现了出色的图

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
1 months agoBy尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)