清华宣告SmartMoE:一键实现高功能MoE浓密大模子扩散式磨炼

  发布时间:2024-10-26 02:40:15   作者:玩站小弟   我要评论
PACMAN 试验室探究大模子扩散式磨炼零星再出新下场。2023 年 7 月,清华大学合计机系 PACMAN 试验室宣告浓密大模子磨炼零星 SmartMoE,反对于用户一键实现 MoE 模子扩散式磨炼 。

PACMAN 试验室探究大模子扩散式磨炼零星再出新下场 。清华

2023 年 7 月 ,宣告现高清华大学合计机系 PACMAN 试验室宣告浓密大模子磨炼零星 SmartMoE,键实反对于用户一键实现 MoE 模子扩散式磨炼,密大模扩磨炼经由自动搜查重大并行策略  ,散式抵达开源 MoE 磨炼零星争先功能 。清华同时,宣告现高PACMAN 试验室在国内顶级零星团聚 USENIX ATC’23 宣告长文  ,键实作者搜罗博士生翟明书、密大模扩磨炼何家傲等,散式通讯作者为翟季冬教授 。清华PACMAN 试验室在机械学习零星规模不断深入钻研 ,宣告现高SmartMoE 是键实继 FastMoE, FasterMoE 以及 “八卦炉” 后在大模子扩散式磨炼零星上的又一次探究 。欲清晰更多相关下场可魔难翟季冬教授首页 :https://pacman.cs.tsinghua.edu.cn/~zjd

Mixture-of-Experts (MoE) 是密大模扩磨炼一种模子浓密化技术  ,因其高效扩展大模子参数目的散式特色而备受钻研者关注。为了后退 MoE 模子的易用性 、优化 MoE 模子磨炼功能 ,PACMAN 试验室在 MoE 大模子磨炼零星上妨碍了零星深入的钻研。2021 年初,开源宣告了 FastMoE 零星,它是第一个基于 PyTorch 的 MoE 扩散式磨炼零星开源实现 ,在业界发生了较大的影响力。进一步,为了处置专家并行的浓密、动态合计方式带来的严正功能下场 ,FasterMoE 零星地合成 、优化了专家并行策略  。FasterMoE 中妄想的「影子专家」技术清晰缓解了负载不均下场、通讯 - 合计协同调解算法实用潜在了 all-to-all 通讯的高延迟 。FasterMoE 下场宣告在 PPoPP’22 国内团聚。

  • 论文地址:https://www.usenix.org/system/files/atc23-zhai.pdf

  • 名目地址:https://github.com/zms1999/SmartMoE

MoE 模子碰着的难题

差距于浓密模子直接经由增大模子尺寸实现扩展,如图一所示 ,MoE 技术经由将一个小模子转变为多个浓密激活的小模子实现参数扩展。由于各个专家在磨炼时浓密激活 ,MoE 模子患上以在不削减每一轮迭代合计量的条件下削减模子参数目;从而有望在相同磨炼光阴内取患上更强的模子能耐 。

图一:经由 MoE 技术扩展模子规模

为了实现 MoE 大模子的扩散式磨炼,业界提出了专家并行(Expert Parallelism)技术 。如图二所示 ,各个专家被扩散式地存储在差距节点上 ,在磨炼历程中经由 all-to-all 通讯将磨炼数据发送至对于应专家地址节点。专家并行相较于数据并行(Data Parallelism)有更小的内存开销 ,由于专家参数无冗余存储。可能以为专家并行是一种针对于 MoE 妄想的模子并行(Model Parallelism)。

图二:专家并行展现图

可是 ,运用纯朴的专家并行技术磨炼 MoE 模子有严正的功能下场 ,其根因是 MoE 模子的浓密激活方式。它会导致节点间发生大批不法则 all-to-all 通讯削减延迟 、合计量负载不均组成硬件运用率低 。如图三所示的着实模子磨炼历程中的专家抉择扩散,可能审核到专家间清晰的负载不均天气,且扩散随磨炼进行动态变更。

图三	:着实磨炼中的专家抉择扩散

随着学界对于各并行策略的深入钻研 ,运用各并行策略的重大组合(称为混并吞行)妨碍大模子磨炼成为需要方式。混并吞行的策略调优历程颇为重大 ,为了后退可用性,学界提出了自动并行算法自动搜查、调优混并吞行策略 。可是,现有混并吞行 、自动并行零星无奈高效处置 MoE 大模子 ,他们缺少对于 MoE 模子磨炼浓密激活 、合计负载不均且动态变更的特色的针对于性妄想 。

SmartMoE 带来处置妄想

为了实现 MoE 模子的高效磨炼 ,SmartMoE 零星对于 MoE 模子的扩散式磨炼策略妨碍了周全的反对于。对于罕用的四种并行策略(数据并行、流水线并行 、模子并行以及专家并行),SmartMoE 零星做出了周全的反对于,应承用户对于它们恣意组合;在论文投稿时(2023 年 1 月) ,尚未有其余零星能做到这一点(如图四所示) 。

为了处置 MoE 的动态合计负载,SmartMoE 配合妄想了专家部署(Expert Placement)策略,在典型并行策略组合的根基上,实现为了动态负载失调。如图五所示 ,MoE 模子差距的合计负载(workload)会组成差距专家的过载;运用差距的专家部署挨次,能在特定负载下实现节点间负载失调 。

图四:开源扩散式零星对于各并行策略的反对于情景比力图五�:差距 MoE 磨炼负载需要差距专家部署策略

为了后退 MoE 模子重大混并吞行策略的易用性 ,SmartMoE 妄想了一套轻量级且实用的两阶段自动并行算法 。现有自动并行零星只能在磨炼开始行妨碍策略搜查,无奈凭证负载情景动态调解策略 。重大的将现有自动并行搜查算法在磨炼历程中周期性运用亦不可行,由于磨炼历程中的并行策略搜查以及调解对于延迟要求很高 ,现有算法的开销过大。

SmartMoE 初创性地将自动并行搜查历程分为两阶段  :

  • 磨炼开始前 ,运用典型算法搜查,取患上一个较小的候选策略会集

  • 磨炼历程中 ,凭证之后负载 ,在候选策略会集合动态调解 ,由于候选策略会集巨细有限,此历程的开销可能患上到操作。

最终,SmartMoE 实现为了轻量级且实用的自动并行,抵达了业界争先的功能 。

在功能测试中 ,SmartMoE 在差距模子妄想、集讨论景以及规模下均有优异的展现  。好比,在 GPT-MoE 模子的磨炼功能测试中,相较于 FasterMoE ,SmartMoE 有最高 1.88x 的减速比  。值患上留意的,在对于每一轮迭代的功能审核中发现  ,动态的并行策略调解是需要的 ,且需要运用适宜的调解频率,如图六所示 。更多试验细节请参考论文原文。

图六:MoE 模子在差距迭代的运行光阴 。”dyn.X” 展现每一 X 轮妨碍一次策略调解。

图七:SmartMoE 在 GPT-MoE 模子端到端磨炼中的功能提升

结语

SmartMoE 现已经开源,开拓者呵护沉闷,且仍在不断优化迭代 ,助力 MoE 大模子的睁开 。这是 PACMAN 试验室继 FastMoE,[PPoPP’22] FasterMoE  ,[PPoPP’22] BaGuaLu 后在大模子扩散式磨炼零星上的又一次探究。

  • Tag:

相关文章

最新评论