游乐游手机版
首页/AI热点日报/热点详情

大模型微调Lora超全综述:七大秘籍与实战技巧

类型:热点整理2026-06-28
前言 谈及LoRA,这无疑是过去一两年间,大模型参数高效微调领域最具热度的技术之一。其核心思想相当直观:在模型原有的密集层之间,引入低秩矩阵来实现参数的增量更新。这些低秩矩阵能够独立于原始模型进行存储与复用,从而在不同任务之间实现灵活迁移。相较于全参数微调,LoRA的参数量通常缩减数个数量级,因此在

前言

谈及LoRA,这无疑是过去一两年间,大模型参数高效微调领域最具热度的技术之一。其核心思想相当直观:在模型原有的密集层之间,引入低秩矩阵来实现参数的增量更新。这些低秩矩阵能够独立于原始模型进行存储与复用,从而在不同任务之间实现灵活迁移。相较于全参数微调,LoRA的参数量通常缩减数个数量级,因此在内存占用和计算开销方面,优势十分显著。

1. Low-Rank Adaptation (LoRA)

1.1 Lora在实际应用中的效率优势

  • 参数效率:LoRA仅更新模型参数中极小的一部分,这大幅降低了微调时的内存与计算资源消耗,并且在推理阶段不会引入任何额外的延迟负担。
  • 内存使用减少:针对大语言模型,微调时的内存压力主要并非来自权重本身,而是优化器状态、梯度存储以及中间激活值。LoRA直接削减了这些环节的大部分需求。
  • 实际效率比较:有研究在LLaMA2-7B模型上开展了对比测试,当批量大小为1时,全参数微调需要约60GB内存,一张RTX4090根本无法承载;而LoRA微调仅需大约23GB,即可顺利运行。
  • 内存使用的细分:具体分解来看,LoRA在优化器内存和梯度内存上分别节省了约25GB和14GB,代价是在激活内存和权重内存上小幅提升了约2GB(主要源于增量参数)。这笔账无论怎么计算都相当划算。
  • 前向传播加速:内存占用的降低还带来了速度提升。对比显示,LoRA的前向传播速度比全参数微调快了约1.9倍。
  • 其他应用案例:除了常见的微调场景,LoRA在预训练和持续训练中同样展现出价值。例如,可以用低秩更新来训练高秩网络,或者在持续训练中有效缓解灾难性遗忘问题。
  • 扩展上下文窗口:LongLoRA便是一个典型案例,它将LoRA与移位稀疏注意力相结合,成功将LLaMA2-7B的上下文窗口从4k一举扩展到100k个token。

1.2 Lora在Pre-training和Continual training阶段也非常有用

  • 预训练中的LoRA:LoRA不仅在微调中表现出色,在预训练阶段同样能发挥重要作用。例如ReLoRA、MoRA等方法,借助低秩更新的方式来训练大型模型;而LTE(Low-Rank Training with Multiple Experts)则提出在多个计算节点上并行训练多个低秩头部,从而减少频繁同步的需求。
  • 持续训练中的LoRA:持续训练面临的核心挑战是灾难性遗忘。InfLoRA通过在子空间中重新参数化预训练权重,以极少的参数来对抗遗忘;GSLoRA引入组稀疏正则化,自动挑选特定的LoRA组以减轻影响;I-LoRA则采用双记忆体验回放结合LoRA参数插值的方式处理问题。
  • 扩展上下文窗口:前文提到的LongLoRA是一个代表性工作,它将LoRA与移位稀疏注意力相结合,实现了超长上下文的高效计算。
  • SinkLoRA:为了解决LongLoRA的效率问题,SinkLoRA引入了Sink Fixed Attention(SF-Attn),通过循环移位的方式将注意力头的组回归到未移位状态,在性能与效率之间找到了更优的平衡点。
  • 其他应用:凭借自身的灵活性与有效性,LoRA已广泛渗透到自然语言处理、代码任务、模型对齐以及各类特定领域任务中。

2. 提升下游任务的能力(Downstream Adaptation Improving)

LoRA在众多下游任务上表现不俗,但在一些知识密集型任务——例如数学推理和编程方面,与全参数微调相比仍存在一定差距。

针对这一挑战,业界主要从以下四个方向进行改进:

  • 打破低秩瓶颈:通过堆叠LoRA模块、将更新视为梯度压缩器、或者同时更新大模型与LoRA等方式,增加LoRA的有效秩,从而增强表示能力。
  • 动态秩分配:依据模型不同层的重要性,动态分配差异化的秩,在性能与效率之间进行精细化调优。
  • 优化学习过程:改进初始化方法、优化梯度更新、缓解过拟合,促使LoRA收敛更迅速、泛化表现更佳。
  • 与其他学习范式结合:将LoRA与贝叶斯学习、上下文学习、主动学习等相结合,解决特定问题并提升性能。

2.1 打破低秩瓶颈(Breaking the Low-rank Bottleneck)

LoRA采用低秩矩阵更新参数,虽然参数效率极高,但在知识密集型任务上,这种低秩结构可能会限制模型的表示能力。

那么,如何破解这一难题?

2.1.1 Stacking LoRAs along Fine-tuning

既然单个低秩矩阵的秩有限,那就多堆叠几个。两个矩阵相加的秩不会超过各自秩的总和,因此可以通过在微调过程中聚合多个LoRA模块来提升整体秩。具体示例如下:

  • ReLoRA:定期将LoRA模块合并到大语言模型中,然后重新初始化新模块。这相当于沿着微调步骤堆叠多个LoRA模块,从而增加整体更新的秩。
  • COLA:基于Frank-Wolfe算法提出了另一种合并与重新初始化的方式。
  • MELoRA:指出合并与重新初始化的过程并不一定能保证秩在增加(因为模块序列可能存在重叠)。为此,它提出将LoRA模块分解成更小的迷你LoRA,然后并行堆叠起来。

2.1.2 Updating as Gradient Compressor

除了在参数空间上做文章,也可以从梯度空间入手,将LoRA视为梯度压缩器来使用。

  • FLoRA:研究发现,LoRA在参数更新时,实际上是在执行一种固定的随机投影,将梯度压缩到了低秩空间。FLoRA的做法很简单:每次迭代都重新采样这个随机投影,这样模型在保持参数效率的同时,能够更充分地探索参数空间,最终恢复全矩阵SGD的性能。

2.1.3 Co-updating LLM and LoRA

在微调过程中,如果同时更新高秩的LLM本身,往往比仅更新LoRA插件效果更佳。

  • Delta-LoRA:提出了一种共同更新策略——利用连续两次迭代中LoRA模块之间的差异来更新LLM。这样模型可以直接在高秩的LLM上进行更新,而且无需额外内存开销。其优势在于:既利用了LoRA的参数效率,又通过直接更新LLM获得了更优越的性能。

2.2 动态秩分配(Dynamic Rank Allocation)

不同层的重要性各不相同,给所有LoRA模块分配相同数量的秩可能并非最优解。动态秩分配就是根据模型各层的重要性,分配不同数量的秩,以优化整体性能与效率。

2.2.1 基于奇异值分解(SVD)的方法

通过SVD分解以及对奇异值的筛选,可以在保持参数效率的前提下降低计算成本。

  • AdaLoRA:通过正则化P和Q的正交性来模拟SVD分解,然后利用新的重要性评分方法丢弃不重要的奇异值,从而控制BA参数矩阵的秩。
  • SaLoRA:同样引入了P和Q的正交性正则化,但基于L0范数来丢弃不重要的奇异值,提供了另一种秩控制的路径。
  • IncreLoRA:为了解决前述方法效率不高的问题,IncreLoRA从单一秩开始,然后根据启发式的重要性评分自动增加秩,避免了Λ中元素必须非负的要求。

2.2.2 基于单一秩分解(SRD)的方法

将矩阵分解为单个秩分量,可以更灵活地控制LoRA参数矩阵的秩,并在不同模块间实现动态分配。SRD方法去掉了SVD中的正交性要求,减少了计算开销。

  • DoRA(Dynamic Low-Rank Adaptation):将LoRA参数矩阵BA分解为单秩分量,基于启发式的重要性评分来剪枝这些分量,使模型能够根据每个客户端的数据分布与资源状况动态调整秩。
  • AutoLoRA:同样采用单秩分量分解,但它基于元学习来剪枝分量,可以根据过去的经验与任务特性自适应调整秩分配。
  • SoRA:去掉了SVD中的正交性正则化,直接通过控制对角矩阵(可视为单秩分量)来过滤P和Q的列与行,将对角矩阵设置为一组可学习的门控单元。
  • ALoRA:同样使用门控单元来过滤分量,但基于神经架构搜索(NAS)来学习这些门控单元。

2.2.3 基于秩采样的方法

确定每个模块的秩本身是一个关键问题,而基于SVD或SRD的方法可能需要迭代或正交性约束,带来额外计算负担。秩抽样方法正好解决了这一难题。

  • DyLoRA:从预定义的离散分布中随机采样一个值b,并将b作为秩分配给LoRA模块。微调过程中,只有A矩阵的第b行和B矩阵的第b列是可训练的,其他参数冻结。抽样分布可以根据用户偏好来定义。

2.3 优化学习过程(Optimizing the Learning Procedure)

为了让LoRA收敛更快、对超参数不敏感,这方面涌现了不少改进方法。

2.3.1 初始化改进

LoRA中A和B的初始化通常采用高斯噪声和零,但这会导致初始梯度较小,拖慢学习进程。如果初始化不当,可能影响微调效率甚至下游任务的适应性。

  • PiSSA:使用预训练权重矩阵的主奇异值和奇异向量来初始化LoRA参数,利用矩阵中最重要的方向加速收敛。
  • MiLoRA:与PiSSA相反,它使用次要的奇异值和奇异向量进行初始化,减少了低秩矩阵随机初始化可能对预训练特征造成的干扰,在适应新任务时提升了整体性能。

2.3.2 梯度更新优化

LoRA的参数更新可能面临收敛慢、对超参数敏感的问题。优化梯度更新有助于加快收敛,使其更接近全参数微调的性能水平。

  • Riemannian Preconditioned LoRA:基于黎曼优化,引入一个r×r的预条件项到梯度更新中,改善收敛性与超参数鲁棒性。
  • LoRA+:通过理论分析发现,为矩阵A和B设置成比例的学习率对稳定特征学习和加速收敛是必要的。
  • ResLoRA:在LoRA中引入残差连接,优化梯度传播路径,加快训练收敛。
  • SIBO(Sparse Initialization Boosting Optimization):在LoRA输入中注入初始标记表示的残差连接,缓解过平滑问题。
  • Gradient-Free Optimization:一些研究采用无梯度优化方法,例如CMA-ES和FWA,在少次学习NLU任务中展现出竞争力。
  • DoRA(Weight-Decomposed Low-Rank Adaptation):通过约束梯度更新,让模型关注参数的方向变化,将预训练权重分解为方向和大小两部分,仅对方向部分应用LoRA,增强了训练稳定性。

2.3.3 过拟合缓解

LoRA也可能出现过拟合现象,导致在训练数据上表现良好但在测试数据上欠佳。解决策略包括:

  1. BiLoRA:采用双层优化策略,在不同训练数据子集上交替训练低秩增量矩阵的奇异向量和奇异值,避免在单一数据集上同时优化所有参数。
  2. LoRA Dropout:将dropout技术应用于LoRA参数,例如对注意力层采用列dropout,对前馈层采用元素级dropout。

2.4 与其他学习范式结合(Combining with other Learning Paradigms)

  • 与贝叶斯学习结合:Laplace-LoRA利用贝叶斯方法来减轻下游适应中的过度自信现象,引入概率性以改善不确定性估计。
  • 与上下文学习结合:PILLOW(Prompt-based Instructed Learning with Low-rank Adaptation)通过上下文提示来提高模型对指令的响应能力,解决低资源问题。
  • 与主动学习结合:STAR(Sparsity-driven Active Learning with Relevance feedback)通过主动学习来提高数据效率,利用LoRA的稀疏性选择最有信息量的样本进行标注。

3. 跨任务学习(Cross-task Generalization)

LoRA作为一种参数高效的微调方法,能够通过在LLMs中插入低秩矩阵来增强模型对特定任务的适应性。跨任务泛化则使模型在面对新任务时能快速适应,大幅提升了实用性。通过复用在不同任务上学到的知识,减少了对标注数据的需求,学习效率得以提升。

主要分为三种方法:

  1. 手动设计的权重混合:早期的方法尝试手动设计权重来线性组合不同的LoRA插件。
  2. 学习得到的权重混合:为了找到最优混合权重,研究者提出了在任务级别、实例级别和词符级别学习权重的方法。
  3. LoRA专家的混合:当LoRA插件是可训练的时,可以联合学习混合权重和插件本身,这通过LoRA专家混合(LoRA MoE)框架实现。

3.1 手动设计权重的混合

不同任务可以训练不同的LoRA,通过混合它们来实现知识与技能的迁移。这类方法简单、计算效率高,但可能无法找到最优权重组合,导致性能不稳定。使用时需要谨慎评估。

  • 线性组合:通过简单平均或加权平均来混合不同任务的LoRA插件,权重由手动设计。
  • 超参数调整:例如ControlPE等方法,将权重作为超参数,通过超参数搜索确定最佳组合。
  • 特征相似度权重:Token-level Adaptation等方法使用输入特征与适配器数据集中心之间的余弦相似度作为权重。
  • 模型融合方法:BYOM等方法应用任务算术、Fisher合并和RegMean等基本模型融合技术。

3.2 学习得到的权重混合

手动设计可能难以达到最优效果,自动学习混合权重能够提供更精确、更灵活的方案。

  • 任务级别学习:Asadi等人提出了基于梯度的学习权重方法,LoRAHub则使用黑盒优化算法(如CMA-ES)来优化权重因子,简化训练过程。
  • 实例级别和词符级别学习:MixLoRA等方法根据输入实例动态选择适当的低秩分解向量,并在训练中整合到LoRA矩阵中。X-LoRA则为蛋白质力学分析等任务开发了动态门控机制,在词符和层粒度上为LoRA插件分配权重。

3.3 LoRA专家的混合

在多任务学习和持续学习场景中,模型需要同时处理多种任务。LoRA专家的混合提供了一种有效的集成与泛化机制。

  • LoRA MoE(Mixture of Experts):每个LoRA插件被视为一个专家,中心路由网络根据输入数据的重要性动态分配权重,决定每个专家的参与程度。
  • 初始化方法:Mixture-of-LoRAs先独立训练多个LoRA插件作为初始化,然后联合优化路由器和插件。
  • 任务关系管理:MLore等结构在MoE中添加低秩卷积路径来捕获全局任务关系,改善任务间的平衡。
  • 效率优化:MoLA在不同层分配不同数量的LoRA专家以节省模块数量,LLaVA-MoLE和SiRA则利用稀疏计算降低开销。

4. 提升效率(Efficiency Improving)

随着下游任务日益增多,LoRA插件的数量也会水涨船高,如何进一步提升效率成为关键课题。可以从以下三个方面入手:

  • 参数缩减:通过参数冻结、参数剪枝和参数共享来减少可训练参数数量,降低内存成本。
  • 参数量化:通过减少参数的位宽(例如从32位浮点数量化到4位整数),来降低内存和计算成本。
  • 并行LoRA计算框架:在单个GPU或GPU集群上并行微调或推理多个LoRA插件,节省计算资源。

4.1 参数缩减

缩减参数数量,直接减少微调期间的内存占用,同时加快训练和推理速度。

4.1.1 参数冻结

  • LoRA-SP:随机选择一半LoRA参数冻结,仅更新剩余部分。
  • LoRA-FA:冻结下投影权重,只更新每个LoRA层的上投影权重。
  • AFLoRA:构建低秩可训练路径,并在训练过程中逐步冻结参数。
  • DropBP:在反向传播过程中随机丢弃一些LoRA梯度计算,加速训练。

4.1.2 参数剪枝

  • LoRA-drop:用每层LoRA的输出来评估参数重要性,剪枝不重要的部分。
  • LoRA-prune:基于梯度信息,联合剪枝LoRA矩阵和LLM的参数。
  • LoRA-shear:通过剪枝特定参数来调整剪枝粒度,实现更细粒度的优化。

4.1.3 参数共享

  • VeRA(Vector-based Random Matrix Adaptation):在所有层之间共享一对冻结的随机矩阵,通过"缩放向量"进行逐层适应。
  • VB-LoRA(Vector Bank-based LoRA):提出"分割和共享"范式,通过秩一分解将LoRA的低秩分解进行分割,基于混合模型实现全局共享。

4.2 参数量化

大型语言模型通常需要大量计算资源,参数量化通过降低参数精度,用更少的比特表示,从而减少内存占用和计算复杂性。

4.2.1 后训练量化(Post-Training Quantization, PTQ)

  • 量化过程:训练完成后,模型参数被量化为较低位宽的表示,例如从32位浮点数量化到8位或4位整数。
  • 微调量化模型:量化后的模型可能存在性能损失,通常需要在量化后的模型上进行微调来恢复精度。
  • QLoRA:作为PTQ的典型例子,先将LLM量化到4位,然后在量化模型上用更高精度(如BFloat16或Float16)微调LoRA插件。

4.2.2 量化感知训练方法(QAT-based methods)

PTQ会引入误差,影响模型精度。量化感知训练在微调阶段就引入量化操作,让模型在学习过程中适应量化带来的变化。

  • LoftQ:在微调过程中交替应用量化和低秩近似,减少量化误差。
  • ApiQ:提出激活保留初始化,避免层间误差传播。
  • L4Q:采用先进的层设计,在量化环境下实现参数效率与性能的平衡。

4.3 并行LoRA计算框架

通过多个处理器或GPU同时执行多个任务来提高效率,特别适合多租户环境或需要同时处理多个模型的场景。

4.3.1 并行微调

  • BatchFusion:将多个输入批次融合为单个批次,让多个微调任务共享计算资源。
  • 自适应作业调度算法:根据系统实时负载和资源可用性,动态分配计算资源。
  • ASPEN:一个高吞吐量并行微调框架,结合BatchFusion和自适应调度算法,在单GPU上高效并行微调多个LoRA插件。

4.3.2 并行推理

  • Punica:使用新的CUDA内核设计来批处理不同LoRA插件的GPU操作,提高推理效率。
  • S-LoRA:基于Punica进一步优化,通过统一的分页机制和新的张量并行策略,支持数千个并发LoRA插件的服务。
  • CARASERVE:在Punica和S-LoRA基础上,通过CPU-GPU协同工作和基于秩的调度,减少冷启动开销,提高服务效率和服务质量目标(SLO)达成率。

5. LoRA在联邦学习中的应用(LoRA for Federated Learning)

联邦学习是一种分布式学习范式,允许多个参与方在保持数据本地化的同时共同训练模型。在这种设置下,数据无需集中存储,每个参与方只共享模型更新而非原始数据。在此场景中,LoRA的价值主要体现在以下几个方面:

  1. 数据异质性:不同客户端的数据分布可能不同。SLoRA等方法通过数据驱动的初始化来适应每个客户端的数据分布。
  2. 设备异质性:参与学习的客户端硬件能力各异。FedMS等方法通过动态调整激活的LoRA矩阵数量来适应客户端的计算资源。
  3. 模型异质性:客户端可能使用不同结构的本地模型。pFedLoRA等方法用LoRA作为知识传递的载体。
  4. 参数隐私:保护客户端特定的参数至关重要。PrivateLoRA通过将可训练矩阵存储在客户端来确保参数隐私。

5.1 数据异质性

不同客户端收集的数据在特征和类别分布上可能存在显著差异。这种不一致性可能导致模型在某些客户端上表现欠佳。通过让LoRA的初始化和更新策略适应不同客户端的数据特性,有助于减少数据异质性的负面影响。

  • SLoRA:先做稀疏联邦微调,再用SVD将累积的梯度更新分解为低秩矩阵,用于LoRA初始化。目的是让LoRA模块更好地适配每个客户端的数据分布。
  • FeDeRA:采用更简单的初始化,直接对预训练权重应用SVD。保留预训练权重的主成分,在不同客户端间对齐权重更新的方向和大小。
  • FFA-LoRA:冻结一个低秩矩阵,只微调另一个,减少服务器聚合LoRA梯度时的不一致性,缓解非独立同分布(non-IID)数据带来的优化不稳定性。

5.2 设备异构性

参与联邦学习的客户端在硬件性能和网络连接能力上可能存在巨大差异。传统方法通常假设所有客户端硬件能力相同,这会导致"桶效应"——整体性能受限于能力最弱的客户端。

通过动态调整和参数共享,可以减少每个客户端的计算和通信成本,提高联邦学习的整体效率和可扩展性。

  • FedMS:根据客户端的实际计算资源动态调整激活的LoRA矩阵数量。
  • FlexLoRA:根据资源限制调整LoRA的秩,并重新分配全局LoRA权重的SVD组件。
  • HETLORA:为不同客户端分配不同的秩,并根据来自不同客户端的更新的稀疏性进行加权聚合。

5.3 模型异构性

不同客户端可能使用具有不同架构的本地模型。以往的方法如知识蒸馏、模型集成等存在局限性,比如依赖公共数据集、通信成本高、性能不佳等。

pFedLoRA正是为解决模型异构性而提出的。它将LoRA作为全局知识与本地知识的载体,采用迭代训练策略,促进知识转移与整合,在保持模型结构私密性的同时,实现有效的知识共享。

5.4 参数隐私

在联邦学习中,保护客户端特定的参数至关重要,因为这些参数可能包含敏感信息。主要有两种措施:

  • 将LoRA部署在可信执行环境(TEE)中,并使用一次性密码(OTP)加密GPU和TEE之间的特征传输。
  • PrivateLoRA:引入一个基于LoRA的分布式系统,在低秩矩阵A和B之间添加方阵M。非可训练的矩阵A和B以及大部分预训练权重部署在全局服务器上,而可训练的矩阵M作为个性化参数存储在客户端,确保参数隐私保护。

6. Applications of LoRA

LoRA凭借参数高效、可插拔、兼容性强、易于跨任务泛化等特性,在深度学习尤其是预训练模型微调中得到了广泛应用。

6.1 语言任务中的应用

LoRA被用于微调预训练语言模型,以适应特定的下游任务,比如情感识别、文本分类、角色识别等,覆盖传统NLP任务、代码任务、模型对齐任务和垂直领域任务。

6.1.1 代码任务

  • 在自动化程序修复(APR)领域,LoRA被用于微调RepairLLaMA等模型,提升修复代码缺陷的能力。
  • WizardCoder-15B和SteloCoder等模型利用LoRA进行微调,实现从自然语言到SQL或Python的代码翻译。

6.1.2 模型对齐任务

模型对齐是为了让模型的行为和输出与人类的价值观和意图相一致。LoRA在此主要用于微调奖励模型和策略模型,减少RLHF的内存需求。

  • DMoERM:结合混合专家(MoE)和LoRA,将模型输入路由到多个LoRA专家中,增强奖励模型性能。
  • Laplace-LoRA:用于训练贝叶斯奖励模型,缓解在最佳n采样中奖励过度优化的问题。

6.1.3 垂直领域任务

  • 医疗领域:利用LoRA微调LLM来处理医疗对话摘要、断言检测和医疗问答任务。
  • 金融领域:LoRA被用于金融新闻分析和情感分类,让模型更好地理解和处理金融文本数据。

6.2 视觉任务中的应用

在计算机视觉领域,LoRA主要应用于图像生成和图像分割任务,显著提高了训练效率和模型性能。

6.2.1 图像生成

  • Smooth Diffusion:使用LoRA在潜在空间中实现平滑性,在各种图像生成和编辑任务中获得更优性能。
  • ResAdapter:利用LoRA学习分辨率先验,调整卷积层感受野以适应动态分辨率。
  • STAMINA:使用LoRA微调扩散模型,处理更长的概念序列,提高文本到图像生成的质量。
  • DreamSyncStyleAdapter:使用LoRA提高文本保真度和图像质量。
  • Mixof-Show:利用LoRA权重捕捉领域外信息,以高保真度结合多个定制化概念,减少概念冲突。

6.2.2 图像分割

SAM(Segment Anything Model)作为图像分割的基础模型,展示了优越的泛化能力。许多研究利用LoRA对SAM进行微调,提高其在特定垂直领域的性能。

  • SamLP:在车牌检测中使用LoRA微调SAM,实现高效的车牌分割。
  • 结构损伤检测:使用LoRA微调SAM编码器进行实例分割。
  • 医疗领域:将LoRA应用于SAM微调,用于细胞核分割、OCTA图像分割、脑肿瘤分割、器官分割和手术器械分割等任务。

6.3 多模态任务中的应用

多模态大型语言模型旨在整合文本与音频、图像、视频等多种模态,通过统一嵌入空间实现跨模态理解和推理。

  • 音频-文本任务:SALM(Speech-Augmented Language Model)结合LoRA层、冻结的基于文本的LLM、音频编码器和模态适配器来处理语音输入。
  • 图像-文本任务:InternLM-XComposer2将LoRA应用到图像标记实现模态对齐;mPLUG-Owl冻结视觉模块,联合微调LoRA和文本模块的抽象器;CoLLaVO使用QLoRA保留对象级图像理解。
  • 视频-文本任务:VSP-LLM框架使用LoRA微调文本模块进行视觉语音处理;MolCA使用LoRA理解2D分子图和文本;TPLLM利用LoRA进行高效的交通预测,整合序列和空间特征。

7. LoRA在未来可能的应用

  • GaaS中的LoRA:在生成即服务(Generative-as-a-Service, GaaS)中,LoRA可以用于构建各种功能插件,满足用户多样化需求。它的参数高效性和可插拔性有助于快速构建和执行这些功能。

  • 持续预训练中的LoRA:在持续预训练中,基础模型不断使用未标记的用户数据进行训练,以适应特定领域。LoRA可以用于减少持续预训练的计算成本,这对构建垂直领域的LLMs尤其重要。

  • 自主智能体中的LoRA:在基于LLM的自主智能体中,LoRA可以用于训练与角色相关的插件,以及作为领域特定任务的工具。此外,还可以用于构建记忆插件,解决检索增强生成(RAG)的局限性。

来源:https://www.53ai.com/news/finetuning/2024122409124.html

相关热点

继续查看同栏目近期热点。

延伸阅读

补充最近整理过的热点入口。