英文

T5-Efficient-XL(深窄版本)

T5-Efficient-XL是 Google's original T5 的变体,遵循 T5 model architecture 的方式。它是一个仅供预训练的检查点,并且是由Yi Tay、Mostafa Dehghani、Jinfeng Rao、William Fedus、Samira Abnar、Hyung Won Chung、Sharan Narang、Dani Yogatama、Ashish Vaswani和Donald Metzler在 Scale Efficiently: Insights from Pre-training and Fine-tuning Transformers 中发布的。

简而言之,该论文指出,与相似参数数量的其他模型结构相比,深窄模型架构对下游性能更有利。

引用该论文的话:

我们一般建议在考虑其他形式的统一缩放之前,优先增加模型的深度,采用深窄策略。这主要是因为深度在前面部分所示的Pareto前沿中的影响有多大。具体来说,在所有小型(深而窄)模型中,通常相对于基础模型而言效率更高。同样,较高的基础模型通常相对于较大的模型而言效率更高。我们通常发现,无论尺寸如何,即使继续堆叠层可能使绝对性能提高,但Pareto效率的相对增益随着层数的增加而减少,在32到36层时趋于收敛。最后,我们指出这里的效率概念与任何一个计算维度有关,即参数、FLOPs或吞吐量(速度)。我们报告了所有三个关键效率指标(参数数量、FLOPS和速度),并将决定留给从业者决定考虑哪个计算维度。

为了更加准确,模型的深度被定义为按顺序堆叠的transformer块的数量。因此,每个transformer块依次处理一个词嵌入序列。

详细的模型架构

该模型检查点—t5-efficient-xl—是Xl型的模型,没有变体。它有2851.66亿个参数,因此完整精度(fp32)需要约11406.62 MB的内存,半精度(fp16或bf16)需要约5703.31 MB的内存。

原始T5模型架构的摘要可以在此处看到:

Model nl (el/dl) ff dm kv nh #Params
Tiny 4/4 1024 256 32 4 16M
Mini 4/4 1536 384 32 8 31M
Small 6/6 2048 512 32 8 60M
Base 12/12 3072 768 64 12 220M
Large 24/24 4096 1024 64 16 738M
Xl 24/24 16384 1024 128 32 3B
XXl 24/24 65536 1024 128 128 11B

使用了以下缩写:

Abbreviation Definition
nl Number of transformer blocks (depth)
dm Dimension of embedding vector (output vector of transformers block)
kv Dimension of key/value projection matrix
nh Number of attention heads
ff Dimension of intermediate vector within transformer block (size of feed-forward projection matrix)
el Number of transformer blocks in the encoder (encoder depth)
dl Number of transformer blocks in the decoder (decoder depth)
sh Signifies that attention heads are shared
skv Signifies that key-values projection matrices are tied

如果一个模型检查点没有特定的el或dl,那么编码器层和解码器层的数量都对应于nl。

预训练

该检查点在 Colossal, Cleaned version of Common Crawl (C4) 上使用基于跨度的屏蔽语言模型(MLM)目标进行了524288步的预训练。

微调

注意:这个模型是一个预训练的检查点,必须经过微调才能实际使用。该检查点是用英语预训练的,因此仅适用于英文NLP任务。您可以参考以下示例来进行微调:

PyTorch:

Tensorflow:

JAX/Flax:

下游性能

待办事项:如有可用表格,请添加。

计算复杂度

待办事项:如有可用表格,请添加。

更多信息

我们强烈推荐读者仔细阅读原始论文 Scale Efficiently: Insights from Pre-training and Fine-tuning Transformers ,以更全面地了解该模型检查点。如下所述,包括sh或skv模型架构变体的检查点尚未移植到Transformers,因为它们可能在实际使用中有限,并且缺乏更详细的描述。这些检查点被保留下来,因为它们可能将来可能被移植。