https://ar5iv.labs.arxiv.org/html/2305.14314?_immersive_translate_auto_translate=1 NeurIPS23
概述:
本文介绍了一种名为QLoRA的创新方法,用于有效微调LLMs(文中Guanaco模型)。这种方法通过减少微调模型所需的内存量,使得原本需要超过780GB GPU内存的6.5B参数模型微调,现在可以在小于48GB的GPU内存下完成,同时保持与16位全参数微调的性能相当。这项技术使得目前最大的公开可用模型能够在单个GPU上微调,显著提高了LLM微调的可行性。
so,重点是减少微调模型所需内存的使用——>保持性能的同时,提高了LLM微调的可能性。
论文中为了减少内存使用的方案,提高了LoRA方法的调整效果:
1️⃣4位NormalFloat量化(4NF):一种理论上最适合正态分布数据的量化的新的数据类型。
2️⃣双重量化:通过将量化常数量化来进一步节省内存。
3️⃣分页优化器:使用NVIDIA统一内存来处理长序列长度的小批量数据时出现的内存峰值。
(之前工作中减少内存,准确性也降低了不少)
借助QLoRA的高效性,作者对多达1000多个模型进行了深入的指令微调和在 8 个指令数据集、多种模型类型(LLaMA、T5)和模型规模(例如 33B 和 65B 参数模型)中提供对指令跟随和聊天机器人性能的详细分析。
研究发现,对于特定任务,数据质量比数据集大小更重要,例如,一个9000样本的数据集在聊天机器人性能上优于45万样本的数据集。
研究还发现,优秀的大规模多任务语言理解(MMLU)基准测试表现并不直接意味着在Vicuna聊天机器人基准测试上的强表现,反之亦然。
关于实验结果的评估,采用了人工和GPT4评估了对聊天机器人性能分析,表明 GPT-4 评估是人工评估的一种廉价且合理的替代方案(但仍有不确定性)。这些测试结果汇总为Elo分数,用于确定聊天机器人的性能排名。
关于开源:作者发布了所有模型生成及其人类和GPT-4注释,开源了代码库和CUDA核心,并将方法集成到Hugging