首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GPT2如何在MegatronLM中实现模型并行?

GPT2如何在MegatronLM中实现模型并行?
EN

Stack Overflow用户
提问于 2020-09-24 05:29:01
回答 1查看 215关注 0票数 2

我试图了解MegatronLM的实现细节,它具有模型和数据并行。在他们的站点或他们的研究中,他们提到了他们是如何使用层内并行的,这类似于网格TensorFlow。我对一些细节感到困惑。

如下图所示,我的理解是,四个红色圆圈内部的计算可以通过层内分裂并行化,但是MLP必须在自我关注之后发生,因此只能同时并行两个红色圈块。文中说,模型平行为8路.我的第一个问题是,是否表明它们将每个块分成4个层内部分(8/2)?

(8条路除以2块)

论文中也提到了

为了在自关注层中保持一致的GEMM尺寸,每个注意头的隐藏尺寸保持在96,而头和层的数目变化,以获得10亿到80亿个参数之间的配置。

我的第二个问题是,96隐藏大小指的是什么?

我对分布式训练完全陌生,我可能误解了什么。如对此问题有任何澄清,将不胜感激!谢谢!

EN

回答 1

Stack Overflow用户

发布于 2020-12-04 11:49:23

GPT2模型的模型并行化实现。根据我的理解,并行实现如下图所示。标记块是并行计算的。

图(a)MLP

F和g是共轭的,f是前过的恒等算子,在后传是全约的,g是前推的全约,后的是恒等式。

类似地,自我注意块的工作如下所示

的实验结果来看,12亿个参数适合于单个GPU,其中80亿个参数需要8个GPU(8种方式)。

96是常量,用作每个头的隐藏大小。根据中的表2,隐藏大小可能基于参数计数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64040071

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档