VeRA: Vector-based Random Matrix Adaptation
作者: Dawid J. Kopiczko, Tijmen Blankevoort, Yuki M. Asano
分类: cs.CL
发布日期: 2023-10-17 (更新: 2024-01-16)
备注: Accepted at ICLR 2024, website: https://dkopi.github.io/vera
💡 一句话要点
提出VeRA以解决LoRA在大模型适应中的存储挑战
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 低秩适应 参数共享 语言模型 微调 存储优化 指令调优 机器学习
📋 核心要点
- 现有的低秩适应方法(LoRA)在扩展到更大模型时面临存储挑战,尤其是在用户或任务适应模型数量较多时。
- 本文提出的VeRA方法通过共享低秩矩阵和学习缩放向量,显著减少了可训练参数的数量。
- 在GLUE和E2E基准测试以及图像分类任务中,VeRA展示了与LoRA相当的性能,同时降低了参数量。
📝 摘要(中文)
低秩适应(LoRA)是一种流行的方法,用于在微调大型语言模型时减少可训练参数的数量,但在扩展到更大模型或部署多个用户或任务适应模型时仍面临存储挑战。本文提出了基于向量的随机矩阵适应(VeRA),显著减少了可训练参数的数量,同时保持相同的性能。VeRA通过在所有层之间共享一对低秩矩阵,并学习小的缩放向量来实现这一点。我们在GLUE和E2E基准、图像分类任务上验证了其有效性,并展示了其在7B和13B语言模型的指令调优中的应用。
🔬 方法详解
问题定义:本文旨在解决低秩适应(LoRA)在微调大型语言模型时的存储挑战。现有方法在扩展到更大模型或多个适应模型时,仍需大量存储空间,限制了其应用。
核心思路:VeRA的核心思路是通过在所有层之间共享一对低秩矩阵,并学习小的缩放向量,来显著减少可训练参数的数量。这种设计使得模型在保持性能的同时,能够有效降低存储需求。
技术框架:VeRA的整体架构包括共享的低秩矩阵和对应的缩放向量。模型的每一层都使用相同的低秩矩阵,而缩放向量则针对特定任务进行学习,从而实现灵活的适应。
关键创新:VeRA的主要创新在于其参数共享机制和缩放向量的引入,这与传统的LoRA方法形成了鲜明对比。通过这种方式,VeRA在减少参数量的同时,保持了与LoRA相当的性能。
关键设计:在参数设置上,VeRA使用一对低秩矩阵,并通过优化算法学习缩放向量。损失函数设计上,确保了模型在微调过程中的稳定性和有效性。
🖼️ 关键图片
📊 实验亮点
在GLUE和E2E基准测试中,VeRA展示了与LoRA相当的性能,同时可训练参数数量显著减少。具体而言,VeRA在7B和13B语言模型的指令调优中表现出色,证明了其在实际应用中的有效性和优势。
🎯 应用场景
VeRA的研究成果在多个领域具有潜在应用价值,尤其是在需要微调大型语言模型的场景中,如个性化推荐、对话系统和任务特定模型的快速部署。其显著降低的存储需求使得在资源受限的环境中应用大型模型成为可能,推动了智能应用的发展。
📄 摘要(原文)
Low-rank adapation (LoRA) is a popular method that reduces the number of trainable parameters when finetuning large language models, but still faces acute storage challenges when scaling to even larger models or deploying numerous per-user or per-task adapted models. In this work, we present Vector-based Random Matrix Adaptation (VeRA), which significantly reduces the number of trainable parameters compared to LoRA, yet maintains the same performance. It achieves this by using a single pair of low-rank matrices shared across all layers and learning small scaling vectors instead. We demonstrate its effectiveness on the GLUE and E2E benchmarks, image classification tasks, and show its application in instruction-tuning of 7B and 13B language models.