写点什么

澜舟科技新突破:大模型实现“持续学习”,应用成本大幅降低

  • 2024-10-17
    北京
  • 本文字数:3160 字

    阅读完需:约 10 分钟

研究背景

近年来,随着计算能力和规模的持续增强,大语言模型(LLMs)的性能得到了显著提升。这些模型通过海量数据的预训练,能够成功捕捉到语言的复杂结构和深层语义信息,从而在多种语言任务上取得突破性的成绩。在这个过程中,Scaling Law 发挥了至关重要的作用,它帮助研究者理解了模型规模、数据量以及模型性能之间的内在联系,为模型的优化和资源的高效分配提供了理论指导。

然而,从头训练大语言模型往往需要消耗巨大的计算资源。面对日新月异的世界知识和广泛多样的应用场景,如何让大语言模型(LLMs)持续学习新知识以降低应用成本,已成为一个亟待解决且尚未被充分探索的问题。针对这一难题,澜舟科技大模型团队深入研究了持续预训练(Continual Pre-Training,简称 CPT)场景下 LLMs scaling 的特性,并提出了适用于持续训练场景下的 Scaling Law。此外,团队还就如何解决持续学习过程中的灾难性遗忘、如何量化知识迁移的规模以及如何选择合理的知识迁移顺序等关键问题进行了探索。

本次研究的相关工作已经作为长文被 EMNLP 2024 Main Conference 录取,澜舟科技公众号后台回复「1017」可查看完整论文。

研究方法

实验设置

我们将不同的语言视为独立的知识领域,引导大语言模型依次学习英语、汉语、法语、德语、俄语等多种语言。以英语和汉语为例,我们首先让模型在英语语料上进行充分训练,随后转移到汉语预料上继续学习。在此基础上,我们训练了一系列包含 40 个不同大小(从 50M 到 5B)的模型,并观察这些模型在新知识学习速度、收敛效果以及对旧知识的遗忘程度等方面的表现。所有模型均采用 Decoder-Only Transformer 架构,并使用了 RMSNorm,MQA,ROPE 等结构改进。

我们的训练数据由开源数据构成,包括 RedPajama、Common Crawl 等,经过精心设计的处理流程:

  • 首先,通过结合基于规则和模型的双重过滤机制,确保数据质量;

  • 其次,实施语言与来源的双重筛选,精确定位所需信息;

  • 最后,采用基于基于 min-hash 做篇章级去重,以及基于 embedding 做句子级去重,有效消除冗余。

在此基础上,我们使用 BPE 算法在经过构建的语料上训练 tokenizer。

为了保证模型能够充分训练,我们参考 Chinchilla(Hoffmann et al., 2022)的策略,为每个模型分配相当于其参数规模 20 倍的训练数据量。在训练过程中,我们使用 deepspeed 进行分布式训练,并部署了 200 张 A100 进行实验,以加速训练过程并提升模型性能。

实验结果

图 1:实验结果汇总

图 1 实验结果:左图汇总了整体实验结果,其中,红色曲线表示从随机初始化学习汉语的 loss 变化,蓝色曲线表示相同大小的模型经过英语学习后,继续学习汉语的 loss 变化,右图放大了一个大小为 2B 的模型的学习情况。


从图中我们可以观察到,不论是从头开始训练,还是基于已有模型继续训练,模型效果(Validation Loss)、计算资源消耗(FLOPS)及模型大小之间均呈现出幂律(Power Law)的关系。其中,继续训练的模型(蓝色曲线,简称 CPT model)在收敛速度上要显著优于不包含任何知识基础的同尺寸模型,其能在训练初始阶段,可以更快地收敛到相同的 loss。


如图 1(右)所示,CPT model 仅需要 10%的计算资源就可以达到从零开始的模型效果,即便是在整体训练接近完成时,CPT model 也仅需要 50%的计算就能达到从零训练相同的模型效果。这也就说明,大模型在具备一定的知识基础后,学习新技能的速度和效果都会变得更好。

CPT Scaling Law

为了更加科学地指导大语言模型(LLMs)进行持续学习,我们研究了 CPT 场景下的 Scaling Law,我们从图 1 观察到 CPT 模型的 scaling 曲线同从零开始预训练(Pre-training from Scratch)类似,并且两者之间存在着一个同模型大小 N 相关的差异值,因此,我们提出拓展 Chinchilla(Hoffmann et al., 2022)中的原始 Scaling Law,用于刻画持续学习场景下的 Model Scaling:

其中,N 表示模型大小,D 表示训练数据量(token 数),E,A,B 等都是学习的参数,相比原始 Scaling Law,我们引入了知识迁移项 N^\lambda,用于刻画模型在持续学习过程中的知识迁移量,这一知识迁移项同模型大小有关,也就是说,越大的模型,所能迁移的知识量(token 数)就越高。

为了学习参数 E、A、B 等,我们采用最小化预测 loss 和观测 loss 之间的 Huber loss 方法。首先,我们使用原始 Scaling Law 公式拟合从零训练的的参数,并将这些学习到的参数作为初始化值。随后,我们基于这些初始化值,进一步学习 CPT Scaling Law 中的新参数。我们使用 Optuna 库进行超参数搜索,并使用 L-BFGS 算法进行局部最优搜索,以找到最佳的超参数,最终学习到的参数如下:

表 1:CPT scaling law 参数

相较于原始 Scaling Law,在继续训练场景中,模型对先前学习内容的敏感度和重视程度显著增加。这也说明,大语言模型(LLMs)在持续学习中展现出的潜力,一旦其应用场景业务和数据反馈形成闭环,通过多次循环迭代,模型就可以得到更进一步的提升。

灾难性遗忘

在持续学习场景中,灾难性遗忘是另一个不容忽视的问题。为了缓解这一问题,常见的解决方案是通过回放(replaying)一部分训练数据来达到缓解灾难性遗忘。我们以一个 1.4B 大小的模型为例,研究了回放数据规模(token 数)和模型效果之间的关系,如下图 2 所示:

图 2:LLMs 的遗忘问题和数据回放的影响。

在图 2(左)中,红色曲线展示了模型在初始阶段学习英语时的 loss 变化情况,图 2(右)蓝色曲线则反映了模型在学习完英语后继续学习汉语的 loss 变化情况。为了探究在继续学习汉语过程中,不同比例的英语数据回放对模型效果的影响,我们观察了模型在学习汉语后,在英文数据上的 validation loss(左图中的蓝色曲线,作为衡量遗忘程度的指标)。


我们发现,在没有任何回放的情况下,大语言模型(LLMs)虽然能在汉语上很快收敛,但是会很快遗忘所学习到的英文知识。然后。通过加大回放数据的比例,可以显著改善模型对于英文数据的遗忘问题。并且,随着足够多的训练,不同的回放比例都可以在新知识(汉语)上达到相似的收敛效果。此外,不论回放比例如何,模型在持续学习过程中都需要经历对原始知识的遗忘和加深记忆的过程(如左图蓝色曲线所示),这也就说明大语言模型(LLMs)需要首先打破对过去知识的固有记忆,然后将新知识和老知识融会贯通,找到一个新的途径来理解(压缩)这些信息。

CPT 中的知识迁移

图 3:CPT 中的知识和算力迁移

通过将 CPT Scaling Law 与原始 Scaling Law 进行相减,我们就可以清楚了解在持续学习过程中算力(FLOPS)的复用情况以及知识的迁移规模(token 数),结果如图 3(左)所示。我们发现,持续学习策略可以节省 25%-50%的计算资源,特别是在资源受限的场景下,采用这种策略可以大大降低大语言模型(LLMs)的开发成本。


图 3(右)展示了知识迁移情况,我们发现,对于不同尺寸的模型来说,原始知识学习的越牢固(见过的数据越多),所能迁移的知识量就越多,两者基本上具备线性关系;同时,模型尺寸越大,其天然具备的知识迁移能力越强。

图 4:不同知识对迁移效果的影响。

此外,在持续学习过程中,知识之间的关联性也扮演着重要的角色。图 4 展现了一个 1.4B 的模型,在学习英文后,继续在法语、俄语和汉语上训练的效果变化。我们发现,虽然继续训练总能提升模型在目标领域上的效果,但是新知识同旧知识的关联程度对模型效果提升有显著影响,具体而言,新旧知识关联性越强,模型效果的提升幅度越大。

总结

在这篇论文中,我们深入探索了大语言模型的持续预训练(CPT)问题,系统分析了其基本原理、影响因素和最佳实践。通过对不同规模、语言分布和训练条件的多个大型语言模型(LLMs)进行训练,我们成功推导出了 CPT 的 Scaling Law。研究结果显示,CPT 能够显著提升训练效率,实现更快地达到更低损失的目标,同时节省了 25%到 50%的训练资源。此外,我们还深入探讨了知识迁移量、算力迁移量、解决灾难性遗忘问题的解决方案,以及新旧知识关联性对 CPT 的效果影响。


|澜舟科技公众号后台回复「1017」可查看完整论文。

用户头像

还未添加个人签名 2022-06-09 加入

一起探索自然语言处理(NLP)领域的前沿技术!官网:langboat.com,关注公众号「澜舟科技」加入孟子开源社区。

评论

发布
暂无评论
澜舟科技新突破:大模型实现“持续学习”,应用成本大幅降低_人工智能_澜舟孟子开源社区_InfoQ写作社区