Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity

1. JAX code for Switch Transformer and all model checkpoints are available at https://github.com/google-research/t5x

2. Tensorflow code for Switch Transformer is available at https://github.com/tensorflow/mesh/blob/master/mesh_tensorflow/transformer/moe.py

Abstract

专家混合(MoE)模型则不同,它针对每个输入示例选择不同的参数。

其结果是一个稀疏激活的模型--参数数量多得离谱--但计算成本不变。

然而,尽管 MoE 取得了一些显著的成功,其广泛应用仍受到复杂性、通信成本和训练不稳定性的阻碍。

我们通过引入Switch Transformers来解决这些问题。

我们简化了 MoE 路由算法,设计了直观的改进模型,降低了通信和计算成本。

我们提出的训练技术可减轻不稳定性,并首次展示了可使用较低精度(bfloat16)格式训练大型稀疏模型。

Introduction

稀疏训练是一个活跃的研究和工程领域,但时至今日,机器学习库和硬件加速器仍然迎合密集矩阵乘法。

复杂性、通信成本和训练不稳定性阻碍了MoE发展。

Switch Transformers架构不仅在超级计算机领域表现出色,而且即使只有几个计算内核也是有益的。

此外,我们的大型稀疏模型可以蒸馏成小型密集版本,同时保留 30% 的稀疏模型质量增益。

贡献:

- Switch Transformer 架构,简化并改进了MoE。

- 我们在该模型中测出了 7 x 的预训练速度提升,而每个令牌的 FLOPS 却保持不变。我们还进一步证明,即使计算资源有限,只使用两名专家,也能实现改进。

- 成功地将稀疏的预训练和专业微调模型提炼为小型密集模型。我们将模型大小减少了 99 %,同时保留了 30 %的大型稀疏教师质量收益。

- 改进的预训练和微调技术:(1) 选择性精度训练,可以用较低的 bfloat16 精度进行训练;(2) 初始化方案,可以扩展到更多专家;(3) 增加专家正则化,改进稀疏模型微调和多任务训练。

Switch Transformer

Kaplan 等人对规模效益进行了详尽研究,发现了模型大小、数据集大小和计算预算的幂律缩放关系。

重要的是,这项研究主张在相对较小的数据量上训练大型模型,以此作为计算最优方法。

我们研究了第四个轴:增加参数数,同时保持每个示例的浮点运算(FLOPs)不变。

我们的假设是,与总计算量无关的参数数是一个单独的重要扩展轴。

Switch Transformer 的缩放和采样效率。左图:越来越稀疏(更多专家)的 Switch Transformer 的缩放特性。右图:在计算预算相同的情况下,Switch Transformer 与 T5(Raffel 等人,2019 年)模型的负对数复杂度比较。

在我们的分布式训练设置中,我们的稀疏激活层会在不同的设备上分配独特的权重。

因此,模型的权重会随着设备数量的增加而增加,同时在每个设备上保持可管理的内存和计算足迹。

Simplifying Sparse Routing

图 2:Switch 变换器编码器模块示意图。开关 FFN 层返回所选 FFN 的输出乘以路由器门值(虚线)。

Switch Routing: Rethinking Mixture-of-Experts.

Shazeer等人(2017年)提出了这样的猜想,即需要将路由到k > 1个专家才能获得对路由函数的非平凡梯度。作者直觉地认为,如果没有能力比较至少两个专家,学习路由将无法成功。

Ramachandran和Le(2018年)进一步研究了前k个决策,并发现在具有多个路由层的模型中,较低层中的较高k值是重要的。

与这些观点相反,我们采用了一个简化的策略,只将路由到一个单一的专家

我们展示了这种简化可以保持模型质量,减少路由计算并表现更好。这k = 1的路由策略后来被称为Switch层。

请注意,在MoE和Switch Routing中,允许路由具有可微性。

单一可微路由

Switch layer的好处有三点:

(1) 减少了路由的计算量,因为我们只将令牌路由到单个专家。

(2) 每个专家的批量大小(专家容量)至少可以减半,因为每个令牌只路由到一个专家。

(3) 路由执行得到简化,通信成本降低。

图 3 显示了不同专家容量系数下的路由选择示例。

图3:令牌路由动态的图示。每个专家的批量大小为(总令牌数 / 专家数量)× 扩容因子。如果令牌分配不均匀,那么某些专家会溢出(用虚线红线表示),导致这些令牌不会被该层处理。较大的扩容因子可以减轻这种溢出问题,但也会增加计算和通信成本(由填充的白色/空白插槽表示)。

专家容量是Gshard提出,用于平衡专家负载。

Efficient Sparse Routing

Distributed Switch Implementation. 我们所有的张量形状都是在编译时静态确定的,但是由于训练和推理时的路由决定,我们的计算是动态的。因此,如何设置专家能力是一个重要的技术问题。

根据经验,我们发现确保较低的token丢弃率对稀疏专家模型的缩放非常重要。(insight)

在整个实验过程中,我们没有注意到令牌下降的数量与专家数量有任何依赖关系(通常小于1%)。

A Differentiable Load Balancing Loss.

为了鼓励专家之间的平衡负载,我们增加了一个辅助损失。

对于每个交换层,这个辅助损失都被添加到训练过程中的总模型损失中。

,,loss=�⋅�⋅∑�=1���⋅��,  ��=1�∑�∈�1{argmax⁡�(�)=�},  ��=1�∑�∈���(�)

专家总数 * (每个专家i被分到token的占比 * 所有token分到该专家i的概率占比)的总和。

均匀路由下,loss=α,hyper-parameter α is a multiplicative coefficient for these auxiliary losses

辅助损失在均匀分布下最小,有利于均匀路由。

目标也可以被微分,因为向量是可微分的,但f向量是不可微分的。

Putting It All Together: The Switch Transformer

开关变压器和MoE变压器的比较如表1所示。

Switch与MoE的基准比较。针对Switch Transformer和MoE Transformer以及T5密集基准进行的一对一比较(Head-to-head comparison)。对于Switch-Base+,我们通过将模型隐藏层大小从768增加到896,将头的数量从14增加到16,以使其与MoE模型的速度匹配。

使用top-2路由的MoE Transformer有两个专家,每个专家对每个令牌应用一个单独的FFN,因此其失败概率更大。

请注意,速度测量是算法和实现细节的函数。Switch Transformer相对于MoE(算法)减少了必要的计算量,但最终的速度差异受到低级优化(实现)的影响。

我们从表1中突出了三个关键发现:

(1) Switch Transformers在速度和质量方面均胜过精心调整的密集模型和MoE Transformers。在相同的计算量和挂钟时间内,Switch Transformers取得了最佳结果。

(2) Switch Transformer的计算占用比MoE Transformer更小。如果我们增加其大小以匹配MoE Transformer的训练速度,我们发现它在每个步骤的性能也胜过所有MoE和密集模型。

(3) Switch Transformers在较低的容量因子(1.0,1.25)下表现更好。较小的专家容量预示着在大型模型领域,模型内存非常有限,容量因子将需要尽量降低。

Improved Training and Fine-Tuning Techniques

稀疏专家模型可能会在普通的Transformer上引入训练困难。每个层的硬交换(路由)决策可能会导致不稳定性。

此外,像bfloat16这样的低精度格式会加剧我们路由器的softmax计算问题。

Selective precision with large sparse models.

模型不稳定性妨碍了使用高效的bfloat16精度进行训练,因此,Lepikhin等人(2020)在其MoE Transformer中始终使用float32精度进行训练。

然而,我们表明,通过在模型的局部部分选择性地将精度转换为float32,可以实现稳定性,而不会产生昂贵的float32张量通信成本。

这种技术与现代混合精度训练策略一致,其中模型的某些部分和梯度更新是以更高的精度进行的,Micikevicius等人(2017)也提到了这一点。

表2显示,我们的方法允许几乎与bfloat16训练相同的速度,同时赋予了float32训练的稳定性。

我们将本地路由操作强制转换为float32,同时在其他地方保留了bfloat16的精度,以稳定我们的模型,同时实现与(不稳定的)bfloat16-precision训练几乎相同的速度

重要的是,float32精度只在router函数体中使用——在该设备的本地计算中。

意思是router的结果无需通信

Smaller parameter initialization for stability.

我们通过从截断正态分布中抽取元素来初始化我们的权重矩阵,其中均值为 �=0 ,标准差为 �=�/� ,其中 � 是一个尺度超参数, � 是权重张量中的输入单元数(例如,fan-in)。

大于平均值两个标准差的值将被重新采样。

作为应对模型不稳定性的额外措施,我们建议将默认的Transformer初始化s=1.0减小10倍。

这既提高了模型的质量,也减少了在我们的实验中出现训练不稳定的可能性。

表3衡量了模型质量的改善以及训练初期方差的减小。

我们记录了一个32专家模型在进行3,500步(每个有3个随机种子)后,模型质量的平均值和标准差,通过负对数困惑度(negative log perplexity)来衡量。

我们发现,通过负对数困惑度(Neg. Log Perp.)来衡量的平均模型质量得到了显著的改善,运行之间的方差大大减小。

此外,这种初始化方案对于涵盖了多个数量级的模型都广泛有效。

Regularizing large sparse models.

在标准Transformer的微调过程中,Raffel等人在每一层使用dropout以防止过拟合。

我们的Switch Transformer比flops匹配密集基线有更多的参数,这可能导致在这些较小的下游任务上更严重的过拟合。

因此,我们提出了一种简单的方法来缓解微调过程中的这个问题:

增加专家内部的dropout,我们称之为专家dropout。

在微调过程中,我们只是在每个专家层的过渡前馈计算时将dropout率显著增加。

表4给出了我们的专家退出协议的结果。

我们观察到,在所有层中增加dropout会导致更糟糕的性能。然而,在非专家层设置较小的dropout率(0.1),在专家层设置较大的dropout率(0.4),可以在四个较小的下游任务上提高性能。

Scaling Properties

增加专家的数量是扩展我们模型最有效的维度。

增加专家保持了计算成本大致不变,因为模型每个标记只选择一个专家,无论可供选择的专家数量如何。

然而,路由器必须计算更多专家之间的概率分布,不过这是一项轻量级的计算,成本为O(dmodel × num experts),其中dmodel是在层之间传递的标记的嵌入维度。

在本节中,我们考虑在固定的计算预算下,基于步骤和时间两种方式来考察模型的规模特性。

Scaling Results on a Step-Basis

Scaling Results on a Time-Basis

对于固定的训练持续时间和计算预算,应该训练密集模型还是稀疏模型?(考虑了通信时延。)

Scaling Versus a Larger Dense Model

缩放变压器模型与开关层或标准密集模型缩放。左图:Switch-Base比T5-Base和T5-Large变种的采样效率更高,每个令牌应用3.5倍的FLOPS。右图:和以前一样,在墙上时钟的基础上,我们发现Switch-Base仍然更快,并且比T5-Large有2.5倍的加速。

Downstream Results

我们研究如何将稀疏模型的内存占用减少90%以上,方法是将稀疏模型分解成小而易于部署的密集基线。

Fine-Tuning

Distillation

在表6中,我们研究了各种蒸馏技术。

这些技术是在DistilBERT的基础上建立起来的,他们研究BERT模型的蒸馏方法。

我们发现用非专家权值初始化密集模型可以得到适度的改进。

这是可能的,因为所有的模型都是flops匹配的,所以非专业层将有相同的尺寸。

由于专家层通常只在Transformer中的每一个或每一个其他FFN层中添加,这允许使用训练过的参数初始化许多权值。

此外,我们观察到蒸馏改进,使用教师概率为0.25,ground truth标签为0.75的混合物。

通过结合这两种技术,我们保留了约30%的质量增益,从较大的稀疏模型只有约1/20的参数。

质量增益是指Switch-Base(教师)与T5-Base(学生)质量差的百分比。

因此,100%的质量收益意味着学生等于教师的表现。

一种潜在的未来方法(这里没有考虑到)可能会检查用于微调任务的特定专家,并提取他们以实现更好的模型压缩。

Multilingual Learning

在97%的压缩模型中,我们再次实现了教师成绩的30%。

Designing Models with Data, Model, and Expert-Parallelism

任意增加专家数量会导致收益递减。

这里我们描述了互补的缩放策略。

将Transformer模型进行扩展的常见方法是同时增加维度,例如dmodel或dff。这会增加参数和计算量,但最终受制于每个加速器的内存容量。

一旦超过加速器内存的大小,可以采用单程序多数据(SPMD)模型并行处理。

Reviewing the Feed-Forward Network (FFN) Layer.

FFN 的输入(x)和输出(y)都具有大小 [B, dmodel],而中间层(h)的大小为 [B, dff],其中 dff 通常是 dmodel 的数倍。

,ℎ=����,  �=Re⁡��(ℎ)�out 

因此,Win 和 Wout 独立应用于每个token,并且它们的大小分别为 [dmodel, dff] 和 [dff, dmodel]。

这里我们创建了一个二维逻辑网格,其中一个维度表示数据并行分片(n)的方式数量,另一个维度表示模型并行分片(m)的方式数量。

包含那批B令牌的张量被分片到n个数据并行核上,所以每个核包含B/n令牌。

然后,使用dff的张量和变量被分片到m个模型并行核中。

对于具有专家层的变体,我们考虑E专家,每个专家最多可以处理C令牌。

我们描述了分区的两个方面:数据的权重和批量如何在核上划分,如图9所示。

数据和权重划分策略。每个4×4虚线网格表示16个核心,阴影正方形是包含在该核心上的数据(模型权重或一批令牌)。

第一行:阴影正方形的每一种颜色标识一个唯一的权重矩阵。每个核的参数数量是固定的,但是更大的权重矩阵将对每个标记应用更多的计算。

第二行:每个核心持有相同数量的令牌,这些令牌在所有策略中维持固定的内存使用量。分区策略具有不同的属性,允许每个核拥有相同的标记或不同的标记,这就是不同颜色所代表的含义。

我们将所有可用的核都表示为N,然后Mesh Tensorflow可以重新映射为处理器的逻辑多维网格。

Data Parallelism

在训练数据并行模型时,将所有核都分配到数据并行维上,即n = n,m = 1。这是分布式训练的标准。

这样做的好处是,在整个向前和向后传递完成之前,不需要通信,然后需要在所有核心上聚合梯度。

这对应于图9最左侧的列。

Model Parallelism

我们现在考虑这样一个场景,所有的核都被分配给模型并行维度,因此n = 1,m = n。

现在所有的核都必须保留完整的B标记,每个核将包含一个唯一的权重片。

对于每一次向前和向后传递,都会产生一个通信开销。

每个核发送一个张量[B, dmodel]来计算第二个矩阵乘法ReLU(h)Wout,因为dff维数被划分,必须求和。

一般的规则是,每当跨核划分的维度必须求和时,就添加一个all-reduce操作包括向前和向后传播。

这与纯数据并行性不同,纯数据并行性只在整个向前和向后传递的末尾发生全reduce。

Model and Data Parallelism

由于总共有 N = n ×m 个核心,现在每个核心将负责 B/n 个标记以及 dff/m 个权重和中间激活。

在前向和后向传递中,每个内核在all-reduce操作中传递一个大小为 [B/n, dmodel] 的张量。

只是张量小,但是都发送到N = n ×m 个核心上

接下来小节相当关键,需要仔细理解。

Expert and Data Parallelism

Switch Transformers将分配所有的核心到数据分区维度n,这也对应于模型中的专家数量。

对于每个核心的每个标记,路由器在本地计算分配给专家的任务。

输出是一个大小为[n, B/n, E, C]的二进制矩阵,它跨越第一维进行分区并确定专家的分配。

然后,这个二进制矩阵被用来通过矩阵乘法与输入张量[n, B/n, dmodel]进行gather。

einsum([n, B/n, dmodel], [n, B/n, E, C], dimension = [B/n])

得到最终形状为[n, E, C, dmodel]的张量,它跨越第一维进行分区。

因为每个核心都有自己的专家,所以在前向传播中需要进行大小为[E, C, dmodel]的bfloat16张量的all to all通信,以分区E维而不是n维。

在前向传播中还有额外的通信成本,以模拟地从位于不同核心上的每个专家接收标记。

Expert, Model and Data Parallelism

在我们的最佳模型设计中,我们试图平衡每个令牌的FLOPS和参数计数。

为了计算强度。

当我们扩展专家的数量时,我们增加了参数的数量,但不改变每个令牌的FLOPs。

为了增加FLOPs,我们还必须增加dff维度(这也会增加参数,但速度较慢)。

这带来了一种权衡:当我们增加dff时,我们将耗尽每个核的内存,这就需要增加m。

但由于我们有固定数量的核N,并且N = n × m,我们必须减少n,这就迫使使用更小的批处理大小(为了保持每个核常量)。

当结合模型并行和专家并行时,我们将有从路由令牌到正确专家的所有到所有通信成本,以及从模型并行的内部all-reduce通信。

当结合这三种方法(最佳映射是通过经验确定的)时,平衡FLOPS、通信成本和每个核的内存变得相当复杂。

Towards Trillion Parameter Models

表9列出了两种不同型号的参数、每个序列的FLOPs和超参数。

最后两列分别记录了250k和500k步长后C4数据集上的训练前模型质量。

描述了Transformer的标准超参数,包括dmodel、dff、dkv、头数和层数,以及一个不太常见的特征FFNGEGLU,它指的是FFN层的一个变化,其中扩展矩阵被两组非线性组合的权值替换。

Switch-C模型设计时只使用专家并行,而不使用模型并行。

相比之下,Switch-XXL与T5-XXL模型是flop匹配的,它允许更大尺寸的超参数,但以模型并行性导致的额外通信成本为代价。

Training instability.

当Switch-C模型较大,参数为1.6T,专家数为2048时,完全没有训练不稳定性。

相反,Switch XXL版本,每个序列有近10倍大的FLOPs,有时是不稳定的。

Reasoning fine-tuning performance.

我们注意到,虽然SwitchXXL在上游的培训前任务上有最先进的Neg. Log Perp.,但其收益尚未完全转化为SOTA下游的表现。

Knowledge-based fine-tuning performance.

Switch Transformer将大规模上游收益更好地转化为基于知识的任务,而不是推理任务。

基于知识的任务要求模型在已知的信息中查找答案,而推理任务则要求模型在给定信息的基础上进行逻辑推断和推理以生成答案。

Related Work

神经网络规模的重要性被广泛认可,已经提出了多种方法。最近的研究通过使用模型并行化(例如,在多个核心之间分割权重和张量)将模型扩展到数十亿参数(Shazeer等人,2018;Rajbhandari等人,2019;Raffel等人,2019;Brown等人,2020;Shoeybi等人,2019)。此外,Harlap等人(2018);Huang等人(2019)提出使用基于流水线的模型并行化,其中不同层被分割到不同设备上,并且微批次被流水线传递到不同层。最后,Lample等人(2019)提出了基于产品键网络(Product Key networks),通过查找基于传入令牌表示的可学习嵌入,来扩展神经网络的容量。

我们的工作研究了一类方法中的特定模型,这些方法进行有条件的计算,即根据输入动态地做出计算决策。Cho和Bengio(2014)提出了根据模型隐藏状态中出现的特定位模式自适应选择权重的方法。Eigen等人(2013)构建了具有密集矩阵乘法和ReLU激活的堆叠专家层,并在抖动的MNIST和单调语音方面取得了有希望的结果。在计算机视觉领域,Puigcerver等人(2020)在上游预训练期间手动根据语义类别路由令牌,然后根据下游任务选择要使用的相关专家。

在现代深度学习架构的背景下,混合专家(MoE)在Shazeer等人(2017)中被证明是有效的。该研究添加了一个MoE层,它位于LSTM(Hochreiter和Schmidhuber,1997)层之间,令牌被分别路由到专家的组合。这导致在语言建模和机器翻译基准测试中取得了最先进的结果。MoE层被引入到了Transformer架构中,由Mesh Tensorflow库(Shazeer等人,2018)实现,其中MoE层被用作FFN层的替代,然而,没有伴随着NLP结果。更近期,通过机器学习基础设施的进展,GShard(Lepikhin等人,2020)扩展了XLA编译器,使用MoE Transformer显著改进了跨100种语言的机器翻译。最后,Fan等人(2021)选择了一种不同的确定性MoE策略,将模型参数分割成不重叠的语言组。

在Transformer的注意力模式中,沿着序列长度维度(L)的稀疏性已经被证明是一种成功的技术,可以减少注意力复杂度从O(L2)(Child等人,2019;Correia等人,2019;Sukhbaatar等人,2019;Kitaev等人,2020;Zaheer等人,2020;Beltagy等人,2020)。这使得学习比以前更长的序列成为可能。这个版本的Switch Transformer没有采用注意力稀疏性,但这些技术是互补的,作为未来的工作,它们可以结合在一起,潜在地改进需要长上下文的任务的学习。

Discussion

  • Switch Transformer是否更好仅仅因为参数数量更多?是的,而且这是设计上的选择!参数,与总FLOPs的使用无关,是一个用于扩展神经语言模型的有用维度。大型模型已被广泛证明性能更好(Kaplan等人,2020)。但在这种情况下,我们的模型在使用相同的计算资源的同时更加样本高效和快速。
  • 我没有超级计算机,这对我还有用吗?尽管这项工作侧重于极大型模型,但我们也发现,即使有两个专家,模型的性能也会提高,同时轻松适应了常用GPU或TPU的内存约束(详细信息请参见附录D)。因此,我们认为我们的技术在小规模环境中也很有用。
  • 稀疏模型在速度和准确性的Pareto曲线上表现优于密集模型吗?是的。在各种不同的模型规模上,稀疏模型在每步和挂钟时间上都优于密集模型。我们的控制实验表明,在固定的计算量和时间内,稀疏模型优于密集模型。
  • 我无法部署万亿参数模型,我们能缩小这些模型吗?我们无法完全保持模型质量,但将我们的稀疏模型提炼成密集模型可以实现10到100倍的压缩率,同时获得专家模型质量提升的约30%。
  • 为什么使用Switch Transformer而不是模型并行的密集模型?从时间的角度来看,Switch Transformer比具有分片参数的密集模型效率要高得多。此外,我们指出,这个决定并不是相互排斥的——我们可以在Switch Transformer中使用模型并行,增加每个标记的FLOP,但会导致传统模型并行的减速。
  • 为什么稀疏模型还没有广泛使用?尝试稀疏模型的动机受到了密集模型扩展的巨大成功的阻碍(部分成功是由于与深度学习硬件的协同适应,正如Hooker(2020)所讨论的那样)。此外,稀疏模型一直面临多个问题,包括(1)模型复杂性,(2)训练困难,和(3)通信成本。Switch Transformer采取措施缓解这些问题。

Future Work

本文提出了一种简化的架构、改进的训练程序以及稀疏模型扩展的研究。然而,仍然有许多未来的方向,我们在这里简要描述一下:

  • 进一步提高最大模型的训练稳定性是一个重要挑战。虽然我们的稳定性技术对于Switch-Base、Switch-Large和Switch-C模型非常有效(没有观察到不稳定性),但对于Switch-XXL模型来说还不够。我们已经采取了初步措施来稳定这些模型,我们认为这些措施可能对大型模型普遍有用,包括使用正则化来提高稳定性和适应的渐变剪裁形式,但这个问题仍未解决。
  • 通常情况下,我们发现改进的预训练质量会导致更好的下游结果(附录E),尽管有时会遇到引人注目的异常情况。例如,尽管模型对C4数据集的困惑度相似,但具有1.6T参数的Switch-C在SQuAD中只能获得87.7的精确匹配分数,与较小的Switch-XXL模型的89.6相比表现不佳。一个显著的差异是,Switch-XXL模型每个标记应用了大约10倍的FLOPS,即使它拥有约4倍较少的唯一参数(395B vs 1.6T)。这表明了微调质量、每token FLOPS和参数数量之间的依赖关系尚未充分理解。
  • 进行全面的研究,以指导数据、模型和专家并行性混合架构的设计的缩放关系。理想情况下,根据硬件配置的规格(计算、内存、通信),可以更快速地设计出最佳模型。反之,这也可能有助于未来硬件的设计。
  • 我们的工作属于自适应计算算法的家族。我们的方法一直使用相同的均匀专家,但未来的设计(通过更灵活的基础设施)可能支持异构专家。这将在需要更多计算的情况下(也许是更难的例子)通过路由到更大的专家来实现更灵活的适应。
  • 调查Transformer中的专家层以外的层。我们发现初步证据表明,这同样可以提高模型质量。在附录A中,我们报告了在Self-Attention层中添加这些层可以提高模型质量的初步证据,其中我们的层替换了生成Q、K、V的权重矩阵。然而,由于bfloat16格式的训练不稳定,我们将这留作未来工作的一个领域。
  • 研究Switch Transformer在新的不同模态和跨模态网络中的应用。到目前为止,我们只考虑了语言,但我们认为模型的稀疏性在新的模态以及多模态网络中也能提供优势。

Router Exploration Strategies

即使专家很少,Switch Transformer也能在基线之上得到改善。

上游的预训练质量到下游的模型质量。对于基线和Switch模型,改进的预训练导致了更好的下游结果。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值