近期,阿里巴巴开源了多语言大模型Babel,旨在弥合语言鸿沟,让AI能够理解并使用全球九成以上人口的语言进行交流。该模型支持豪萨语、波斯语、印地语、西班牙语、阿拉伯语、孟加拉语、葡萄牙语、乌尔都语、印尼语、斯瓦希里语等25种主流语言,覆盖全球90%以上的人口。
与传统的持续预训练方法不同,Babel采用了独特的层扩展技术来提升模型的能力。这种方法可以理解为在模型原有的基础上,以一种更精巧的方式增加“知识储备”,从而在提升性能的同时,也保证了计算效率。研究团队推出了两款各具特色的模型,Babel-9B和Babel-83B,Babel-9B专为高效的多语言大模型推理和微调设计,适合研究和本地部署;而Babel-83B性能更好,但消耗的资源也更多。
层扩展技术的核心在于如何在不破坏现有模型结构和性能的前提下,增加模型的深度和复杂性。研究人员在实验中发现,模型的中间层和后层对编辑较为不敏感,因此选择在模型的后半部分插入新的层。这些新层与原模型的结构完全一致,不会影响模型的关键组件,如注意力头、隐藏嵌入或嵌入层等。
研究人员还探索了多种不同的设置,包括新层的插入位置和初始化方法。例如,尝试了在原有层之间插入新层或直接在模型末尾追加新层,并对比了不同的初始化策略,如复制原始参数、引入高斯噪声或直接初始化为零等。实验结果显示,直接复制原始参数而不引入噪声的方法在性能上表现最佳,因为这种方式能够最大程度地保留原始模型的特征表示。
预训练方面,Babel采用了两阶段预训练策略。
第一阶段是恢复阶段,目标是恢复模型在扩展过程中可能损失的性能。由于层扩展技术会对模型的参数协作产生一定的干扰,因此在这一阶段,研究人员使用了一个包含所有支持语言的大规模多样化语料库进行训练。这种语料库的设计旨在帮助模型重新学习不同语言之间的关系,并恢复其在原始模型基础上的性能。研究人员特别强调了语料库的平衡性,尽可能地为每种语言分配相等的训练数据。然而,由于某些语言的语料库资源有限,实现完美的平衡并非易事。因此,采用了英语和中文的高质量预训练数据集(如RedPajama和YAYI 2)作为补充,以帮助模型更快地恢复性能。
第二阶段是持续训练阶段。在恢复了模型的基本性能后,将重点转向提升模型的多语言能力,尤其是那些低资源语言。在预训练语料库中增加了低资源语言的比例,并提高了教材在训练语料库中的占比。这种策略的依据是,教材通常包含更为系统和结构化的知识,能够帮助模型更好地学习和理解不同语言的语法、词汇和语义特征。通过这种方式,Babel不仅提升了对低资源语言的支持,还增强了其在多语言任务中的整体表现。
为了验证Babel的实力,研究团队在多个多语言任务上进行了严格的评估。结果令人振奋:无论是90亿参数的Babel-9B,还是830亿参数的Babel-83B,在多项基准测试中均超越了同等规模的其他开源模型。