您的当前位置:首页 > 时尚 > 清华宣告SmartMoE:一键实现高功能MoE浓密大模子扩散式磨炼 正文

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

时间:2024-11-05 15:55:37 来源:网络整理 编辑:时尚

核心提示

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 后在大模子扩散式磨炼零星上的又一次探究  。