MobileLLM:优化适用于设备上使用的十亿参数以下语言模型

论文《MobileLLM:优化适用于设备上使用的十亿参数以下语言模型》(MobileLLM: Optimizing Sub-billion Parameter Language Models for On-Device Use Cases)探讨了在移动设备上部署大语言模型(LLM)的需求不断增加的问题,这主要是由于云成本增加和延迟问题所致。论文的重点是设计参数少于十亿的高质量LLM,这对移动设备部署来说是一个实际的选择。研究发现,对于十亿参数以下的模型,模型架构的重要性超过了数据和参数数量。通过采用深层和细化的架构、嵌入共享和分组查询注意机制,本文建立了一个强大的基础网络,称为MobileLLM,该网络在零样本任务上比现有的125M和350M模型分别提高了2.7%和4.3%的准确率。此外,提出了一种即时块级权重共享的方法,在不增加模型大小的情况下实现了进一步的准确率提升。MobileLLM模型家族在聊天基准测试中表现出显著的改进,并在API调用任务中表现出接近LLaMA-v2 7B的正确性,表明小模型在常见的设备上用例中具有很强的适应性。

论文作者为Zechun Liu, Changsheng Zhao, Forrest Iandola, Chen Lai, Yuandong Tian, Igor Fedorov, Yunyang Xiong, Ernie Chang, Yangyang Shi, Raghuraman Krishnamoorthi, Liangzhen Lai, Vikas Chandra。论文作者均来自Meta。

论文内容概要如下:

一、主要贡献:

  1. 证明了对于小规模LLM,深度比宽度更重要。深层细化的模型结构在捕捉抽象概念方面表现出色,最终性能更优。
  2. 重新审视了嵌入共享方法,并在小型LLM中实施了分组查询注意机制,以最大限度地利用权重。
  3. 提出了即时块级权重共享方法,这种方法在内存移动成为延迟瓶颈的情况下,通过在两个相邻块之间共享权重,避免了权重移动,仅需计算块两次,带来极小的延迟开销。
  4. 构建了新的模型家族MobileLLM,展示了在零样本任务上的SOTA(最先进)表现。
  5. 在下游任务(如聊天和API调用)中,MobileLLM模型家族显著优于同等规模的模型。在API调用任务中,MobileLLM-350M甚至达到了与更大规模的LLaMA-v2 7B模型相当的准确率。

二、实验设置:

  • 使用32个A100 GPU进行实验,每个GPU的批处理大小为32。
  • 探索性实验进行了120k次迭代,使用了0.25T个token。
  • 最优模型经过480k次迭代,使用了1T个token进行训练。
  • 在零样本常识推理任务、问题回答和阅读理解任务中对预训练模型进行了评估。

三、实验结果:

  • 零样本常识推理任务中,MobileLLM-125M和MobileLLM-LS-125M分别比现有的125M模型提高了显著的准确率。
  • 在问题回答和阅读理解任务中,MobileLLM-350M比现有的350M模型有大约10点的性能提升。

四、下游任务的评估:

  • 在聊天任务中,MobileLLM模型在AlpacaEval和MT-Bench基准测试中表现显著优于以前的SOTA模型。
  • 在API调用任务中,MobileLLM-350M的表现与LLaMA-v2 7B相当,在意图匹配和结构匹配方面表现出色。

五、兼容性和量化:

  • 通过W8A8后训练量化,MobileLLM模型在精度上仅有不到0.5点的下降,并且与层共享兼容。
  • 知识蒸馏实验表明,与直接训练相比,知识蒸馏会增加训练时间,但性能并没有显著提升。

总结: 本文在设计和实现适用于设备上的十亿参数以下LLM方面取得了显著进展,展示了深度优先的架构设计和先进的权重共享技术的有效性。最终的MobileLLM模型在各种任务中表现优异,特别是在设备上的聊天和API调用任务中展示了其强大的适应性。

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注