微信扫一扫,关注公众号

  • 科技行者

  • 算力行者

见证连接与计算的「力量」

首页 MIT团队发明"智能减肥法"让AI训练快1.6倍:只需要一半的算力就能教会大模型新技能

MIT团队发明"智能减肥法"让AI训练快1.6倍:只需要一半的算力就能教会大模型新技能

2025-07-02 14:25
分享至:
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-
2025-07-02 14:25 科技行者

这项由麻省理工学院(MIT)、加州大学伯克利分校、多伦多大学以及谷歌DeepMind共同完成的研究,于2025年6月发表在第42届国际机器学习大会(ICML 2025)上。论文的主要作者包括MIT的刘志坚、韩松,伯克利的Kurt Keutzer,多伦多大学的Konstantinos N. Plataniotis等知名学者。感兴趣的读者可以通过arXiv:2506.16500v1访问完整论文,项目主页为https://z-lab.ai/projects/sparselora。

当我们想要训练一个大型AI模型学会新技能时,就像给一个聪明但固执的学生补课一样。传统的方法是让这个学生把所有相关知识都重新学一遍,这不仅费时费力,还需要巨大的计算资源。近年来,研究人员开发了一些"偷懒"的方法,比如LoRA、QLoRA和DoRA,它们通过只训练模型的一小部分参数来节省内存,就像给学生发一本薄薄的补充教材,而不是厚厚的全科教科书。

但这里有个问题:虽然这些方法节省了内存,却没有减少计算量。实际上,有些方法甚至让训练变得更慢了。这就好比学生虽然拿到了薄教材,但学习过程反而变得更加繁琐复杂。

研究团队仔细观察发现,在AI模型训练过程中,并不是所有的计算都同样重要。就像一个厨师做菜时,不需要同时使用厨房里的所有工具和食材,只需要根据当前步骤选择最关键的那些。基于这个洞察,他们提出了SparseLoRA——一种"智能减肥法",能够根据具体情况动态选择最重要的计算,跳过那些不必要的部分。

SparseLoRA的核心创新在于引入了"上下文稀疏性"的概念。简单来说,就是在每个训练步骤中,模型会智能地识别出哪些部分对当前任务最关键,然后只对这些关键部分进行计算,而暂时"冷藏"其他部分。这种做法不仅大幅减少了计算量,还保持了训练效果。

研究团队在多个任务上测试了他们的方法,包括常识推理、数学解题、代码生成和指令跟随等。结果显示,SparseLoRA能够将计算成本降低多达2.2倍,实际训练速度提升1.6倍,同时几乎没有损失模型的性能表现。

一、动态稀疏性的巧妙设计

传统的模型训练就像一个工厂流水线,每个工位都必须全力运转,不管当前生产的是什么产品。而SparseLoRA采用了完全不同的思路:它让工厂变得更加灵活,能够根据当前生产需求动态调整哪些工位需要运转,哪些可以暂时休息。

研究团队首先分析了大语言模型在训练过程中的计算分布。他们发现,在不同的序列长度下,线性层(包括注意力机制和前馈网络)占据了训练时间的主要部分。这些线性层就像工厂里最耗能的大型机器,如果能让它们只在必要时工作,就能大幅节省资源。

SparseLoRA的设计哲学是"只计算真正需要的部分"。它会根据输入数据的特征,动态决定哪些神经元通道需要激活,哪些可以跳过。这种选择不是随机的,而是基于精心设计的重要性评估机制。

研究团队开发了两种不同的评估标准来判断神经元的重要性。对于前馈网络(FFN),他们使用L2范数标准,这相当于测量每个神经元的"活跃程度"。活跃程度高的神经元对当前计算更重要,需要保留;活跃程度低的则可以暂时忽略。对于注意力机制中的查询和键值投影,他们设计了专门的QK范数标准,通过分析查询和键值向量的乘积来评估每个通道的贡献度。

这种动态选择机制的巧妙之处在于,它不是预先固定哪些部分重要,而是根据每个具体的输入样本来做决定。同一个神经元可能在处理某些输入时非常重要,在处理其他输入时则相对次要。这种灵活性确保了模型既能大幅减少计算量,又不会错过关键信息。

二、SVD稀疏性估计器的技术突破

如果说动态稀疏性是SparseLoRA的核心理念,那么SVD稀疏性估计器就是实现这一理念的关键技术工具。这个估计器就像一个经验丰富的工厂调度员,能够快速准确地判断出在每个时刻哪些生产线应该开工,哪些应该待机。

传统的稀疏性方法面临一个根本矛盾:为了知道哪些计算重要,往往需要先进行一些计算,这就像为了决定是否要做一道菜,必须先把所有食材都准备好一样,显然不够高效。研究团队通过SVD(奇异值分解)技术巧妙地解决了这个问题。

SVD稀疏性估计器的工作原理可以这样理解:它首先对预训练模型的权重进行数学分解,提取出最重要的"特征模式"。这个过程只需要在训练开始前做一次,就像给工厂的每台机器制作一份"重要性档案"。然后在实际训练过程中,估计器只需要进行很少量的计算,就能根据这些预先提取的模式来判断当前哪些部分最重要。

这种设计的精妙之处在于,它将复杂的重要性判断转化为简单的模式匹配问题。估计器使用低秩近似技术,只保留最重要的几个奇异值和对应的向量,这样就能用很小的计算代价获得接近完美判断的效果。实验数据显示,这个估计器只增加了0.05%的计算量和0.8%的运行时间开销,但能够达到接近理想情况99%的准确性。

更重要的是,这个估计器是"免训练"的,不需要针对特定任务或数据集进行专门训练。这意味着它具有很好的通用性,可以直接应用到不同的模型和任务上,而不用担心过拟合或适应性问题。

三、层次敏感性的深度分析

在深入研究过程中,团队发现了一个有趣的现象:模型的不同层对稀疏性的容忍度差别巨大,就像人体的不同器官对营养缺乏的敏感性不同一样。有些层即使大幅减少计算也不会影响最终效果,而有些层则需要精心呵护。

研究团队对LLaMA2-7B模型进行了全面的敏感性分析。他们发现,模型的深层(靠近输出端的层)通常包含更多冗余信息,对稀疏性的容忍度更高,而浅层(靠近输入端的层)则更加敏感。这种现象的背后有着深刻的原理:浅层主要负责提取和编码基础特征,这些特征对后续所有计算都至关重要;而深层则更多地进行特征组合和决策,即使丢失一些信息也不会严重影响最终结果。

基于这个发现,SparseLoRA采用了非均匀稀疏性配置策略。对于浅层,它采用相对保守的稀疏性比例,确保基础特征提取不受影响;对于深层,则可以采用更激进的稀疏性比例,大幅减少计算量。这种分层策略在保证性能的前提下,进一步提升了计算效率。

除了层间差异,研究团队还发现了令牌级别的敏感性差异。在语言模型的训练过程中,输入序列通常包含上下文令牌(用于理解背景)和输出令牌(用于计算损失)。他们发现,输出令牌对计算精度的要求远高于上下文令牌,因为输出令牌直接影响模型的学习方向。

基于这个洞察,SparseLoRA实施了"上下文-输出感知"的稀疏性策略:对上下文令牌应用稀疏计算,而对输出令牌保持密集计算。这种策略确保了学习过程的准确性,同时仍能获得显著的效率提升。实验表明,这种策略比简单的均匀稀疏性方法效果更好,特别是在数学推理等对精确性要求较高的任务上。

四、渐进式稀疏训练的智慧

训练过程的不同阶段对计算精度的需求也不相同,这促使研究团队设计了渐进式稀疏训练策略。这种策略认识到,训练初期是模型建立基础认知框架的关键时期,需要相对完整的信息;而训练后期主要是微调和优化,可以承受更多的稀疏性。

具体来说,SparseLoRA在训练的最初阶段(通常是前10%的步骤)保持密集计算,让模型有足够的信息建立正确的学习方向。之后逐渐切换到稀疏计算模式,在保证学习效果的前提下大幅提升计算效率。这种渐进式策略在多个实验中都显示出了优于固定稀疏性策略的效果。

研究团队还仔细分析了不同训练步骤的敏感性变化。他们发现,早期训练步骤对权重更新的质量要求更高,因为这些更新决定了模型的基本学习方向。而后期步骤主要进行微调,即使稍有偏差也不会严重影响最终效果。这个发现进一步支持了渐进式稀疏训练的合理性。

五、全面的实验验证与性能表现

为了验证SparseLoRA的有效性,研究团队在五个不同类型的任务上进行了广泛测试,包括常识推理、数学推理、代码生成、指令跟随和序列分类。这些任务覆盖了大语言模型的主要应用场景,确保了实验结果的代表性和可信度。

在常识推理任务中,SparseLoRA在LLaMA2-13B模型上实现了1.3倍的速度提升,同时将计算量减少了39%。更令人印象深刻的是,模型的准确性不仅没有下降,在某些子任务上甚至略有提升。这表明适当的稀疏性可能具有类似正则化的效果,帮助模型避免过拟合。

数学推理任务的结果更加亮眼。在LLaMA3-8B模型上,SparseLoRA实现了1.6倍的速度提升,计算量减少了54%,同时在GSM8K等标准数学题目上保持了相同的解题能力。这个结果特别重要,因为数学推理通常被认为是最需要精确计算的任务之一。

代码生成任务的测试显示,SparseLoRA在HumanEval和HumanEval+基准测试中都保持了与原始LoRA相同的性能,同时实现了1.3倍的速度提升。这对于实际的软件开发应用来说意义重大,因为它意味着可以用更少的计算资源训练出同样优秀的代码生成模型。

指令跟随任务使用了MT-Bench评估框架,涵盖了写作、角色扮演、数学、推理等八个不同维度。SparseLoRA在所有维度上都保持了竞争性的性能,平均得分与原始方法几乎相同,但训练速度提升了1.5倍。

研究团队还进行了大量的消融实验,验证了设计中每个组件的贡献。他们发现,SVD稀疏性估计器、层次敏感性配置、上下文-输出感知策略和渐进式训练每个都对最终性能有重要贡献,缺少任何一个都会导致效果下降。

六、兼容性与实用性考量

SparseLoRA的一个重要优势是它与现有方法的良好兼容性。研究团队特别测试了SparseLoRA与QLoRA的结合使用效果。QLoRA是一种通过量化技术减少内存使用的方法,但会增加计算时间。将SparseLoRA与QLoRA结合使用,可以同时获得内存和计算效率的双重优势。

实验结果显示,SparseQLoRA(两种方法的结合)在常识推理任务上实现了1.2倍的速度提升,同时保持了QLoRA的内存节省优势。这种兼容性使得SparseLoRA可以很容易地集成到现有的训练流程中,而不需要大幅修改已有的代码或系统架构。

研究团队还测试了SparseLoRA在不同投影配置下的表现。除了标准的QKVO投影,他们还测试了包含up和down投影的更复杂配置。结果显示,SparseLoRA的优势不仅限于特定的网络结构,而是具有广泛的适用性。

在硬件兼容性方面,SparseLoRA设计了结构化稀疏性,这意味着它可以在常见的GPU硬件上获得实际的速度提升,而不仅仅是理论上的计算量减少。这对于实际应用来说至关重要,因为许多稀疏性方法虽然在理论上减少了计算量,但由于硬件限制无法获得实际的速度提升。

七、技术细节与实现考量

SparseLoRA的实现涉及多个精心设计的技术细节。首先是稀疏性配置的选择。研究团队发现,不同模型和任务需要不同的稀疏性配置。例如,在LLaMA3-8B的数学推理任务中,他们对第3到第30层的FFN应用99%的稀疏性,对第14到第29层的某些注意力投影应用75%的稀疏性。这些配置都是通过敏感性分析确定的,确保在不同层上的稀疏性比例是最优的。

SVD分解的秩选择也是一个重要的技术考量。研究团队发现,使用秩8的SVD分解能够在计算开销和估计准确性之间取得最佳平衡。更高的秩会增加计算开销,而更低的秩会影响估计准确性。秩8的选择使得SVD估计器能够以30MB的额外内存和0.8%的运行时开销获得接近完美的重要性估计。

在实际实现中,SparseLoRA还考虑了内存访问模式的优化。通过仔细设计稀疏权重的切片和计算顺序,它能够最大化GPU的计算效率,避免内存访问瓶颈。这种底层优化确保了理论上的计算减少能够转化为实际的性能提升。

研究团队还提供了详细的超参数配置指南。对于不同的任务和模型,他们给出了推荐的稀疏性比例、SVD秩选择和渐进式训练的步骤配置。这些指南基于大量的实验数据,可以帮助实际用户快速获得最佳的训练效果。

八、深入的比较分析

为了更全面地评估SparseLoRA的优势,研究团队进行了与多种现有方法的详细比较。与传统的LoRA相比,SparseLoRA在保持相同准确性的情况下实现了显著的速度提升。与QLoRA相比,SparseLoRA不仅速度更快,而且不需要专门的量化硬件支持。与DoRA相比,SparseLoRA避免了额外的计算开销,实际上比DoRA快了一倍以上。

研究团队还比较了SparseLoRA与GaLore的性能。GaLore是另一种旨在提高训练效率的方法,它通过梯度的低秩投影来减少内存使用。然而,GaLore的在线SVD更新带来了显著的计算开销,使得训练时间增加了58%。相比之下,SparseLoRA通过离线SVD分解避免了这种开销,实现了真正的速度提升。

在等计算量比较中,SparseLoRA显示出了更强的优势。当限定相同的计算预算时,SparseLoRA训练的模型在各项任务上都表现更好。这种等FLOP比较特别重要,因为它反映了在实际应用中资源受限情况下的真实性能差异。

研究团队还进行了学习率敏感性分析,发现SparseLoRA对不同学习率的鲁棒性很好。在数学推理任务中,最佳SparseLoRA配置与最佳LoRA配置的性能差距仅为0.2%,在常识推理任务中差距为0.3%。这种鲁棒性证明了SparseLoRA的稳定性和实用性。

归根结底,这项研究为大语言模型的高效训练开辟了一条新的道路。SparseLoRA通过巧妙的动态稀疏性设计,实现了计算效率和模型性能的双重优化。它不仅在多个标准任务上验证了有效性,还展现了良好的通用性和兼容性。

更重要的是,SparseLoRA的成功证明了一个重要观点:在AI模型训练中,"更多"并不总是"更好"。通过智能地选择真正重要的计算,我们可以用更少的资源获得相同甚至更好的效果。这种思路不仅对当前的大语言模型训练有价值,也为未来更加高效的AI系统设计指明了方向。

随着AI模型规模的不断增长和应用场景的不断扩展,计算效率将变得越来越重要。SparseLoRA提供的解决方案让更多的研究者和开发者能够以更低的成本训练和部署先进的AI模型,这对于AI技术的普及和发展具有重要意义。对于那些希望深入了解这项技术细节的读者,可以通过arXiv:2506.16500v1访问完整的研究论文,或者访问项目主页https://z-lab.ai/projects/sparselora获取更多资源。

Q&A

Q1:SparseLoRA是什么?它与普通的LoRA有什么区别? A:SparseLoRA是一种智能化的AI模型训练方法,它在传统LoRA的基础上增加了动态稀疏性功能。简单来说,普通LoRA只能节省内存,而SparseLoRA既能节省内存又能加快训练速度。它通过智能选择重要的计算部分,跳过不必要的计算,实现了最高1.6倍的速度提升。

Q2:SparseLoRA会不会影响AI模型的性能和准确性? A:不会显著影响性能。研究团队在多个任务上的测试显示,SparseLoRA在大幅提升训练速度的同时,几乎没有损失模型的准确性。在某些任务上,由于稀疏性带来的正则化效果,性能甚至略有提升。这说明适当的稀疏性不仅不会伤害模型,还可能有助于提升效果。

Q3:普通用户能使用SparseLoRA技术吗?有什么要求? A:SparseLoRA主要面向AI研究者和开发者,需要一定的机器学习背景才能使用。它可以在常见的GPU硬件上运行,与现有的训练框架兼容。研究团队已经开源了相关代码,技术人员可以通过项目主页获取实现细节。对于普通用户来说,主要受益是未来AI服务的成本可能会因此降低。

分享至
0赞

好文章,需要你的鼓励

推荐文章
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-