xlstm: 一种扩展 LSTM 以在在语言建模中与 Transformers 竞争的循环神经网络架构

xlstm: 一种扩展 LSTM 以在语言建模中与 Transformers 竞争的循环神经网络架构

它解决了什么问题

xLSTM (Extended Long Short-Term Memory) 旨在克服原始 LSTM 架构的局限性,以便在语言建模中与 Transformers 和 State Space Models (SSMs) 竞争。其目标是提供一种循环神经网络 (RNN) 替代方案,在训练和推理方面都具有高效性,特别是对于大规模语言模型。

它是如何工作的

该架构在原始 LSTM 之上引入了两个主要的增强功能:

  1. Exponential Gating: 使用归一化和稳定技术来改进网络管理信息流的方式。
  2. Matrix Memory: 一种新的记忆结构,允许网络更好地处理复杂的数据模式。

该项目提供了两个主要组件:xLSTMBlockStack (通用应用的主干网络) 和 xLSTMLMModel (用于基于 token 的语言建模的封装器)。它还包括一个专门的 xLSTMLarge 架构,针对训练吞吐量和稳定性进行了优化,该架构已被用于在 2.3 万亿个 token 上训练一个 7B 参数的模型。

它是为谁准备的

  • AI Researchers: 正在寻找序列建模中 Transformer 架构替代方案的人员。
  • ML Engineers: 正在实现用于快速高效推理的循环模型的开发人员。
  • Developers: 希望将 xLSTM 主干网络集成到现有项目中,作为 Transformer 模块的替代方案的用户。

亮点

  • 7B Parameter Model: 在 2.3T token 上训练的大规模循环 LLM。
  • Optimized Kernels: 通过 mlstm_kernels 包支持 Triton 和 CUDA 内核,以便在 NVIDIA 和 AMD GPU 上进行高性能执行。
  • Flexible Architecture: 支持 sLSTM 和 mLSTM 模块,两者可以结合使用以平衡状态跟踪和记忆能力。
  • Hardware Compatibility: 为 Apple Metal 等平台提供原生 PyTorch 实现(带有针对 MLX 的社区移植版本)。

Sources