VeRA: 性能相当,但参数却比LoRA少10倍

简介: 2022年的LoRA提高了微调效率,它在模型的顶部添加低秩(即小)张量进行微调。模型的参数被冻结。只有添加的张量的参数是可训练的。

与标准微调相比,它大大减少了可训练参数的数量。例如,对于Llama 27b, LoRA通常训练400万到5000万个参数,这比标准微调则训练70亿个参数药效的多。还可以使用LoRA来微调量化模型,例如,使用QLoRA:

虽然LoRA可训练参数的数量可能比模型参数小的多。但它随着张量(在LoRA中通常表示为r)的秩和目标模块的数量而增加。如果我们想要以大秩r(假设大于64)和模型的所有模块为目标(达到最佳性能),那么我们可能仍然需要训练数亿个参数。

本周又发布了VeRA,以进一步减少LoRA可训练参数的数量。

VeRA: Vector-based Random Matrix Adaptation

VeRA在LoRA冻结的低秩张量上添加可训练向量,只训练添加的向量。论文中显示的大多数实验中,VeRA训练的参数比原始LoRA少10倍。

但是原始的低秩张量(上图右侧中的A和B)呢?他们是如何训练或初始化的?

A和B随机初始化,然后冻结。这样它们虽然看起来像两个无用的张量我们可以在这个框架中去掉它们,但实际上,它们仍然是必不可少的。即使是随机张量也可以用于训练。论文的第2节,作者通过列举以前的论文,从之前的工作中得出结论:

作者最后也表示这些论文为冻结随机矩阵的应用创造了令人信服的案例。可以为VeRA提供理论和经验基础。

模型指标

GLUE评分

E2E

消融研究

总结

作为新的一种微调方法,VeRA显著减少了可训练参数的数量,而精度没有损失。与LoRA相比参数减少了10倍在GLUE基准测试中,robertta large的性能相同,但在GPT-2 medium的E2E基准测试中,性能降低了30%,说明这种方法特别适合于需要频繁交换大量微调模型的场景,比如针对个人用户个性化的基于云的人工智能服务。由于缩放向量尺寸小,可以将许多版本驻留在单个GPU的有限内存中,从而大大提高了服务效率,并消除了将特定模型加载到内存中的瓶颈。

VeRA: Vector-based Random Matrix Adaptation

https://avoid.overfit.cn/post/0c18ad6b818c4e11ae5c54825ef4857a

目录
相关文章
|
2月前
|
机器学习/深度学习 存储 人工智能
压缩大型语言模型(LLMs):缩小10倍、性能保持不变
尽管大规模语言模型(LLMs)在多种应用场景中表现出色,但其庞大的规模也带来了实际部署难题。本文探讨了通过模型压缩技术解决这些问题的方法,介绍了量化、剪枝和知识蒸馏三种主要压缩技术,并通过具体Python代码示例展示了如何将一个100M参数的文本分类模型压缩至52.8M参数,再通过4位量化进一步减小至原来的1/7,同时保持甚至提升性能。示例代码展示了从数据预处理、模型训练到评估的完整流程,证明了压缩技术的有效性。
130 6
|
2月前
|
测试技术 开发工具 Swift
Liger kernel训练加速,一行代码训练吞吐量提高 20%,显存使用量降低 60%
在LLM的训练/微调过程中,开发者通常会遇到一些瓶颈,包括GPU显存不够,经常遇到OOM,GPU使用率100%而且非常慢等。
Liger kernel训练加速,一行代码训练吞吐量提高 20%,显存使用量降低 60%
|
3月前
|
数据采集 人工智能 算法
谷歌发布大模型数据筛选方法:效率提升13倍,算力降低10倍
【8月更文挑战第31天】近日,谷歌发布了一项名为多模态对比学习联合示例选择(JEST)的研究成果,旨在优化大模型预训练过程中的数据筛选。JEST通过联合选择数据批次而非独立选择示例,利用多模态对比目标揭示数据间的依赖关系,提高了学习效率。实验表明,JEST能显著加速训练并降低计算成本,最多减少13倍迭代次数和10倍计算量。这一成果有望推动大模型预训练更加高效和经济。论文详情见:https://arxiv.org/abs/2406.17711。
53 2
|
5月前
|
算法 测试技术 异构计算
【SAM模型超级进化】MobileSAM轻量化的分割一切大模型出现,模型缩小60倍,速度提高40倍,效果不减
【SAM模型超级进化】MobileSAM轻量化的分割一切大模型出现,模型缩小60倍,速度提高40倍,效果不减
|
6月前
|
机器学习/深度学习
YOLOv5改进 | Conv篇 | 利用轻量化PartialConv提出一种全新的结构CSPPC (参数量下降约42W)
YOLOv5改进 | Conv篇 | 利用轻量化PartialConv提出一种全新的结构CSPPC (参数量下降约42W)
321 4
|
6月前
|
机器学习/深度学习
YOLOv8改进 | Conv篇 | 利用轻量化PartialConv提出一种全新的结构CSPPC (参数量下降约100W)
YOLOv8改进 | Conv篇 | 利用轻量化PartialConv提出一种全新的结构CSPPC (参数量下降约100W)
1070 0
|
缓存 算法 PyTorch
比标准Attention提速5-9倍,大模型都在用的FlashAttention v2来了
比标准Attention提速5-9倍,大模型都在用的FlashAttention v2来了
392 0
|
并行计算 Python
只用两行代码,我让Transformer推理加速了50倍
只用两行代码,我让Transformer推理加速了50倍
311 0
|
人工智能 自然语言处理 测试技术
只用几行代码,我让模型『训练』加速了3倍以上!
只用几行代码,我让模型『训练』加速了3倍以上!
156 0
只用几行代码,我让模型『训练』加速了3倍以上!
|
存储 机器学习/深度学习 自然语言处理
650亿参数,8块GPU就能全参数微调:邱锡鹏团队把大模型门槛打下来了
650亿参数,8块GPU就能全参数微调:邱锡鹏团队把大模型门槛打下来了
466 0