中文

大模型时代分布式深度学习训练的兴起:软件工程视角

软件工程 2023-05-01 v2

摘要

深度学习(DL)已成为现代软件的关键组成部分。在“大模型”时代,基于 DL 的软件的丰富特性在很大程度上依赖于强大的 DL 模型,例如 BERT、GPT-3 以及近期涌现的 GPT-4,这些模型在拥有大规模数据集的强大云平台上训练。因此,训练有效的 DL 模型已成为整个软件生命周期中的关键阶段。在训练深度学习模型(尤其是那些大模型)时,开发者需要在训练过程中于多个设备间并行化并分配计算与内存资源,这被称为分布式深度学习训练,简称分布式训练。然而,开发者在分布式训练过程中遇到的独特挑战尚未在软件工程界得到研究。鉴于当前基于 DL 的软件对分布式训练日益严重的依赖,本文旨在填补这一知识空白,并首次对开发者在分布式训练中的问题进行了全面研究。为此,我们分析了在 Stack Overflow 与 GitHub 上报告的关于使用这些框架的 1,131 个真实开发者问题。我们构建了一个包含 30 个类别的细粒度分类体系,涉及故障症状,并总结了针对不同症状的常见修复模式。基于结果,我们提出了可操作的启示,指向潜在促进基于 DL 的软件进行分布式训练的研究途径,例如:在设计测试或调试工具时关注频繁且常见的修复模式,开发针对通信配置的高效测试与调试技术并结合网络配置分析的综合,设计新的多设备检查点-重放技术以辅助复现,以及为云平台设计无服务器 API。

关键词

引用

@article{arxiv.2112.06222,
  title  = {Rise of Distributed Deep Learning Training in the Big Model Era: From a Software Engineering Perspective},
  author = {Xuanzhe Liu and Diandian Gu and Zhenpeng Chen and Jinfeng Wen and Zili Zhang and Yun Ma and Haoyu Wang and Xin Jin},
  journal= {arXiv preprint arXiv:2112.06222},
  year   = {2023}
}

备注

Accepted by ACM Transactions on Software Engineering and Methodology (TOSEM 2023). Please include TOSEM in any citations