xlstm: 一種擴展 LSTM 以在語言建模中與 Transformers 競爭的遞歸神經網絡架構
xlstm: 一種擴展 LSTM 以在語言建模中與 Transformers 競爭的遞歸神經網絡架構
它解決了什麼問題
xLSTM (Extended Long Short-Term Memory) 旨在克服原始 LSTM 架構的限制,以便在語言建模中與 Transformers 和 State Space Models (SSMs) 競爭。其目標是提供一種遞歸神經網絡 (RNN) 的替代方案,在訓練和推理方面都具有效率,特別是針對大規模語言模型。
運作原理
該架構相較於原始 LSTM 引入了兩項主要增強功能:
- Exponential Gating: 使用歸一化和穩定化技術來改善網絡管理信息流的方式。
- Matrix Memory: 一種新的記憶結構,允許網絡更好地處理複雜的數據模式。
該項目提供了兩個主要組件:xLSTMBlockStack (通用應用的骨幹網絡) 和 xLSTMLMModel (用於基於 token 的語言建模的封裝器)。它還包括一個專門的 xLSTMLarge 架構,針對訓練吞吐量和穩定性進行了優化,該架構已被用於在 2.3 兆個 token 上訓練一個 7B 參數模型。
對象是誰
- AI 研究人員: 尋找序列建模中 Transformer 架構替代方案的人士。
- ML 工程師: 實施遞歸模型以實現快速且高效推理的開發者。
- 開發者: 希望將 xLSTM 骨幹網絡集成到現有項目中,作為 Transformer 塊的替代方案的用戶。
重點摘要
- 7B Parameter Model: 在 2.3T tokens 上訓練的大規模遞歸 LLM。
- Optimized Kernels: 透過
mlstm_kernels套件支援 Triton 和 CUDA kernels,以便在 NVIDIA 和 AMD GPU 上進行高性能執行。 - Flexible Architecture: 支援 sLSTM 和 mLSTM 塊,兩者可以結合使用以平衡狀態追蹤和記憶能力。
- Hardware Compatibility: 提供適用於 Apple Metal (包含用於 MLX 的社群移植版本) 等平台的原生 PyTorch 實作。
Sources
- undefinedNX-AI/xlstm