在深度学习领域,【大模型微调技术】在近两年迅速崛起,成为备受瞩目的研究热点。大模型微调旨在利用预训练的大型语言模型,通过特定数据集的进一步训练,使其精准适配特定任务或领域。这一策略与从头开始训练大模型相比,显著降低了成本,同时展现出卓越的效果。近年来,研究者们在大模型微调领域持续深耕,提出了一系列卓越的方法,并不断改进创新,催生出众多新颖的技术。这些技术在自然语言处理、计算机视觉、智能问答系统等多个研究领域广泛应用,推动了人工智能技术的快速发展,为解决复杂实际问题提供了强有力的支持。
为了帮助大家全面掌握【大模型微调】的方法并寻找创新点,本文总结了最近两年【大模型微调】相关的23篇顶会顶刊的前沿研究成果,这些论文的文章、来源、论文的代码都整理好了,希望能给各位的学术研究提供新的思路。
需要的同学扫码添加我
回复“大模型微调”即可全部领取
一、METAMATH : BOOTSTRAP YOUR OWN MATHEMATICAL QUESTIONS FOR LARGE LANGUAGE MODELS
1.方法
(1)答案增强(Answer Augmentation, AnsAug):
使用少样本思维链提示和温度采样,为问题生成更多推理路径,筛选出答案正确的路径,扩充训练数据。
(2)基于大语言模型重述问题(Question Bootstrapping by LLM Rephrasing):
将问题添加到提示中,输入大语言模型生成重述问题,通过与原始问题对比评估重述问题的正确性,收集正确答案的重述问题作为扩充数据。
(3)反向推理问题引导(Question Bootstrapping by Backward Reasoning)
自验证(Self-Verification, SV)**:将带有答案的问题重写为陈述语句,然后添加问题询问未知变量的值,收集新问题及其正确答案作为扩充数据。
前向 - 后向推理(Forward-Backward Reasoning, FOBAR)**:直接将答案附加到问题中,询问未知变量的值,收集新问题及其正确答案作为扩充数据。
(4)微调目标函数:
合并所有扩充数据,包括答案增强数据和引导后的问题数据,在合并后的数据集上微调预训练的大语言模型(如 LLaMA - 2),通过最大化基于问题的推理路径的对数似然来获得 MetaMath 模型。
2.创新点
(1)提出新的问题引导方法:
通过正向和反向推理路径重写问题,并利用大语言模型重述问题文本,增加了训练数据的多样性和质量,有效提升了模型在数学推理任务上的表现。
(2)强调问题多样性的重要性:
认识到问题多样性在推理方向上的关键作用,特别是反向推理问题有助于模型更好地理解数学知识,而无需单纯记忆,通过实验验证了问题引导方法对提高问题多样性和模型性能的积极影响。
(3)构建高质量数据集 MetaMathQA:
结合答案增强和多种问题引导策略,创建了包含不同推理路径样本的高质量、多样化数据集 MetaMathQA,为微调大语言模型提供了丰富的数据资源,从而显著提高了模型在数学推理基准测试中的准确性。
3.总结
本文专注于提升开源大语言模型的数学解题能力。通过在 GSM8K 和 MATH 数据集上引导数学问题,提出了高质量且多样的 MetaMathQA 数据集,涵盖正向和反向推理样本。基于此数据集微调得到的 MetaMath 系列模型,在数学基准测试中达到了开源模型中的领先水平,如 MetaMath - 7B 在 GSM8K 上达到 66.5% 的准确率,在 MATH 上达到 19.8% 的准确率,超越了之前的开源模型。研究强调了训练数据特性对提升大语言模型解题能力的重要性,未来工作可进一步探索提升模型在长问题上的性能,如通过扩充 MetaMathQA 数据集等方式。
论文链接:https://arxiv.org/pdf/2309.12284
二、Detecting and Preventing Hallucinations in Large Vision Language Models
1.方法
(1)构建多模态幻觉检测数据集(M-HalDetect):
对视觉问答(VQA)示例进行 16k 精细注释,包含对不存在的对象、不忠实的描述和不准确的关系等幻觉情况的标注,用于训练和评估模型的幻觉检测与预防能力。
(2)基于 M-HalDetect 优化 InstructBLIP 模型:
精细直接偏好优化(Fine-grained Direct Preference Optimization, FDPO):通过该方法对 InstructBLIP 进行优化,以减少模型产生的幻觉。
训练精细多模态奖励模型并结合最佳 n 拒绝采样(RS)评估**:从 InstructBLIP 训练精细多模态奖励模型,使用最佳 n 拒绝采样评估其有效性,根据奖励模型的得分筛选模型生成的回答,保留得分较高的回答,从而降低幻觉率。
2.创新点
(1)提出多模态幻觉检测数据集 M-HalDetect:
首次构建了用于详细图像描述的综合多模态幻觉检测数据集,不仅考虑了对象幻觉,还对实体描述和关系的不忠实情况进行标注,为研究多模态模型中的幻觉问题提供了更丰富、全面的数据资源。
(2)创新的优化方法 FDPO:
提出了精细直接偏好优化方法,专门针对 InstructBLIP 模型进行优化,有效减少了模型生成文本中的幻觉现象,提升了模型在生成视觉相关文本时的准确性和可靠性。
(3)多模态奖励模型的通用性验证:
训练的精细多模态奖励模型不仅能在 InstructBLIP 模型上有效减少幻觉,还能推广到其他多模态模型(如 LLaVA 和 mPLUG - OWL),展示了其在多模态模型中的通用性和有效性,为解决多模态模型的幻觉问题提供了更广泛适用的方法。
3.总结
当前指令调优的大型视觉语言模型(LVLMs)在多模态任务上取得了进展,但生成视觉相关的准确详细文本仍具挑战性,存在较高比例的幻觉现象。为此,本文提出 M - HalDetect 数据集,包含 16k 对 VQA 示例的精细注释,涵盖多种幻觉类型,是首个此类综合数据集。通过 FDPO 优化 InstructBLIP 模型,并训练多模态奖励模型结合拒绝采样评估,经人工评估,FDPO 和拒绝采样分别使 InstructBLIP 的幻觉率降低 41% 和 55%,且奖励模型可推广到其他模型,有效减少幻觉并与人工评估的准确性得分高度相关。该数据集和方法为提升大型视觉语言模型的可靠性和准确性提供了重要资源和手段,有助于推动多模态模型在实际应用中的更可靠部署。
论文链接:https://ojs.aaai.org/index.php/AAAI/article/view/29771
需要的同学扫码添加我
回复“大模型微调”即可全部领取
三、QLORA:Efficient Finetuning of Quantized LLMs
1.方法
(1)QLORA 微调方法
4位 NormalFloat(NF4)量化**:基于预训练神经网络权重通常具有零中心正态分布的特性,将所有权重变换到 [-1, 1] 范围,通过估计理论 N (0,1) 分布的分位数构建适合正态分布数据的 4 位量化数据类型 NF4,对输入张量分块独立量化,使用量化常数进行量化与反量化操作,存储时使用 NF4 格式,计算时先反量化为 BFloat16 格式进行矩阵乘法等运算1。
双重量化(Double Quantization):将第一次量化的量化常数作为第二次量化的输入,使用 8 位浮点数和特定块大小进行第二次量化,减少内存占用,平均每个参数的内存占用从 0.5 比特降低到 0.127 比特11。
分页优化器(Paged Optimizers):利用 NVIDIA 统一内存自动页转移特性,为优化器状态分配分页内存,当 GPU 内存不足时,优化器状态自动转移到 CPU 内存,需要时再转移回 GPU 内存,避免内存峰值导致的错误,确保在单个机器上对大型模型进行微调训练的稳定性,特别是在 33B/65B 模型的微调中发挥关键作用11。
低秩适配器(Low-rank Adapters, LoRA)微调:添加少量可训练的低秩适配器权重,在不更新全部模型参数的情况下进行微调训练。计算时在原有线性投影基础上增加额外的因子化投影,适配器接收来自固定预训练模型权重的梯度,优化损失函数,实现高效的参数更新,有效减少内存需求。同时,在每个网络层添加适配器以避免精度损失,并对 LoRA 的超参数(如 dropout、r、α 等)进行调整以优化性能11。
(2)实验设置
数据集:选择八个不同类型的指令微调数据集,包括通过众包获得的 OASST1、基于人类偏好的 HH - RLHF、通过模型蒸馏得到的 Alpaca、Self - instruct、Unnatural Instructions、语料库聚合的 FLAN v2、以及混合类型的 Chip2 和 Longform 等,这些数据集涵盖多种语言、数据规模和许可证类型1。
训练设置:使用 NF4 QLORA 方法结合双重量化和分页优化器,采用交叉熵损失(监督学习)进行微调训练,避免使用强化学习。对于有明确指令和响应区分的数据集,仅在响应上进行微调(部分实验有不同设置)。对 13B 和 33B LLaMA 模型进行小范围超参数搜索,发现 7B 模型的超参数设置在其他模型上具有一定通用性(除学习率和批量大小外),并根据模型大小调整学习率和批量大小等超参数1。
基线模型:将训练模型与研究模型(如 Vicuna、Open Assistant)和商业模型(如 GPT - 4、GPT - 3.5 - turbo、Bard)进行比较1。
评估设置:采用多维度评估方法,包括使用 MMLU 基准测试评估语言理解能力;通过自动化评估(使用 GPT - 4 对模型响应进行评分)和人工评估(使用 Amazon Mechanical Turk 进行标注)衡量模型生成响应的质量;利用基于 Elo 评分的循环赛制评估模型在不同提示下的表现,以确定模型的排名和性能差异1。
2.创新点
(1)高效的 4 位微调技术
首次实现了在不降低性能的前提下对 4 位量化模型进行微调训练,提出 QLORA 方法,通过 NF4 量化、双重量化和分页优化器等创新技术,显著降低了内存需求,使得在单个消费级 GPU 上就能对 65B 参数模型进行微调训练,而此前 16 位全量微调 65B 参数模型需要超过 780GB GPU 内存。例如,QLORA 将 65B 参数模型微调的平均内存需求从大于 780GB 降低到小于 48GB,且运行时和预测性能与 16 位全量微调的基线相当11。
(2)创新的 4 位量化数据类型 NF4
提出的 NF4 数据类型基于信息理论最优原则构建,特别适合正态分布的权重数据,相比传统的 4 位整数和 4 位浮点数,在多个模型(如 OPT、LLaMA、BLOOM、Pythia 等)的语言建模和零样本任务测试中表现出更优的实证效果,显著提升了模型性能。例如,在多个实验中 NF4 在零样本准确率和困惑度等指标上优于 FP4 和 Int4,且双重量化进一步优化了内存占用与性能表现111。
(3)综合优化提升性能与效率
综合运用多种创新技术,不仅在量化和内存管理方面取得突破,还通过改进的 LoRA 方法(在每个网络层添加适配器)避免了精度损失,使得 QLORA 在运行时性能和预测性能上与 16 位全量微调的基线相当,甚至在某些情况下超越基线。此外,通过大量实验分析了指令微调数据集质量与规模对模型性能的影响,发现数据质量对模型性能至关重要,这为模型训练提供了新的指导原则。同时,提出了更可靠的聊天机器人评估方法,包括基于人类和 GPT - 4 评估的 Elo 评分机制,虽然两者存在一定差异,但在模型性能排序上有较高一致性,为模型评估提供了新的思路和方法11。
3.总结
本文提出 QLORA 这一高效微调方法,通过一系列创新技术在降低内存需求的同时保持了模型性能。实验表明,QLORA 能够在单 GPU 上对大规模模型进行微调,如在 48GB GPU 上可训练 65B 参数模型,其训练的 Guanaco 模型在 Vicuna 基准测试中表现优异,达到与 ChatGPT 相当的水平(Guanaco - 65B 实现了 ChatGPT 性能的 99.3%),而所需资源大幅减少(如 33B Guanaco 模型在 24GB 消费级 GPU 上不到 12 小时即可完成训练)。研究还发现数据质量对模型性能影响重大,且不同评估基准之间存在部分正交性。此外,本文提出了新的聊天机器人评估方法,但也指出当前评估基准和方法存在局限性,如未在部分基准测试中评估指令微调模型,未全面探索不同比特精度和适配器方法的影响等。总体而言,QLORA 方法为大语言模型微调带来了重大突破,提升了资源利用效率,推动了相关领域研究进展,同时也为模型在实际应用中的部署提供了更多可能性,如在移动设备上的应用及减少环境影响等,但也面临着如微调技术被滥用等潜在风险,需要在发展过程中加以关注和解决。
论文链接:https://proceedings.neurips.cc/paper_files/paper/2023/file/1feb87871436031bdc0f2beaa62a049b-Paper-Conference.pdf
需要的同学扫码添加我
回复“大模型微调”即可全部领取