本节内容包含对论文《 Attention is All You Need 》中原始 Transformer 的解释与PyTorch 实现,以及对其衍生和增强版本的解释与实现。
这是使用相对多头注意力的 Transformer XL 模型的实现。
这是旋转式位置编码( ROPE )的实现。
这是线性偏差注意力( ALIBI )的实现。
这是对检索增强 Transformer ( RETRO )的实现。
这是一个压缩transformer的实现,它在Transformer XL 的基础上,通过压缩最早期的记忆来延长注意力跨度。
这是 GPT-2 结构的实现。
这是论文 《 GLU Variants Improve Transformer 》的实现。
这是论文《 Generalization through Memorization: Nearest Neighbor Language Models 》的实现。
这是论文《 Accessing Higher-level Representations in Sequential Transformers with Feedback Memory 》的实现。
这是论文《 Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity 》的一个简化实现。我们的实现仅包含几百万个参数,并且只在单 GPU 上进行训练,不涉及并行分布式训练,但我们仍然实现了论文中描述的 Switch 概念。
这是论文 《 Linear Transformers Are Secretly Fast Weight Memory Systems in PyTorch 》的实现。
这是论文《 FNet: Mixing Tokens with Fourier Transforms 》的实现。
这是论文《 An Attention Free Transformer 》的实现。
这是论文《 BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding 》中用于预训练的掩码语言模型的实现
这是论文 《 MLP-Mixer: An all-MLP Architecture for Vision 》的实现。
这是论文《 Pay Attention to MLPs 》的实现。
这是论文《 An Image Is Worth 16x16 Words: Transformers For Image Recognition At Scale 》的实现。
这是论文《 Primer: Searching for Efficient Transformers for Language Modeling 》的实现。
这是论文《 Hierarchical Transformers Are More Efficient Language Models 》的实现
112from .configs import TransformerConfigs
113from .models import TransformerLayer, Encoder, Decoder, Generator, EncoderDecoder
114from .mha import MultiHeadAttention
115from labml_nn.transformers.xl.relative_mha import RelativeMultiHeadAttention