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 大模子的扩散式磨炼,业界提出了专家并行(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 模子重大混并吞行策略的易用性 ,SmartMoE 妄想了一套轻量级且实用的两阶段自动并行算法。现有自动并行零星只能在磨炼开始行妨碍策略搜查 ,无奈凭证负载情景动态调解策略 。重大的将现有自动并行搜查算法在磨炼历程中周期性运用亦不可行,由于磨炼历程中的并行策略搜查以及调解对于延迟要求很高,现有算法的开销过大。
SmartMoE 初创性地将自动并行搜查历程分为两阶段 :
磨炼开始前,运用典型算法搜查 ,取患上一个较小的候选策略会集
磨炼历程中,凭证之后负载,在候选策略会集合动态调解 ,由于候选策略会集巨细有限 ,此历程的开销可能患上到操作。
最终,SmartMoE 实现为了轻量级且实用的自动并行