人工智能
BlackMamba: 状态空间模型的专家混合
大型语言模型(LLM)的发展,特别是基于解码器仅的Transformer模型的发展,在自然语言处理(NLP)领域以及各种深度学习应用中发挥了至关重要的作用,包括强化学习、时间序列分析、图像处理等。然而,尽管它们具有可扩展性和强大的性能,但基于解码器仅的Transformer模型仍然面临着显著的缺陷。虽然它们具有表达性,但Transformer模型中的注意力机制需要在推理和训练过程中消耗大量的计算资源,需要大量的内存来存储序列长度和二次浮点运算。这种高计算需求限制了Transformer模型的上下文长度,使得自回归生成任务的成本随着模型的规模而增加,并阻碍了模型从连续数据流中学习和处理无限序列的能力。
近年来,状态空间模型(SSM)已经展示了其卓越的能力和性能,与Transformer模型相比,在大规模建模基准测试中具有竞争力,同时实现了线性时间复杂度和序列长度的内存复杂度。最近发布的Mamba状态空间模型已经在一系列语言建模和长序列处理任务中展示了其出色的性能。同时,专家混合(MoE)模型也展示了其出色的性能,同时显著降低了推理和计算成本,尽管需要更大的内存占用。MoE模型通过仅激活一部分参数来实现推理和训练的高效性。通过结合Mamba和MoE模型,本文将讨论BlackMamba,一种新型的架构,它结合了Mamba状态空间模型和MoE模型来利用两种框架的优势。实验结果表明,BlackMamba能够在训练和推理方面超越现有的Mamba框架和Transformer基准。
本文旨在深入探讨BlackMamba框架,包括其机制、方法论和架构,以及与最先进的图像和视频生成框架的比较。让我们开始吧。
BlackMamba:状态空间模型的专家混合介绍
大型语言模型(LLM)的发展,特别是基于解码器仅的Transformer模型的发展,已经显著影响了自然语言处理(NLP)领域,并扩展到各种深度学习应用,包括强化学习、时间序列分析、图像处理等。然而,尽管它们具有可扩展性和强大的性能,但基于解码器仅的Transformer模型仍然面临着显著的缺陷。Transformer模型中的注意力机制需要在推理和训练过程中消耗大量的计算资源,需要大量的内存来存储序列长度和二次浮点运算。这种高计算需求限制了Transformer模型的上下文长度,使得自回归生成任务的成本随着模型的规模而增加,并阻碍了模型从连续数据流中学习和处理无限序列的能力。
近年来,人们已经将注意力转向开发替代性的架构来解决这些限制,状态空间模型(SSM)和专家混合(MoE)模型是最有前途的候选架构。状态空间模型相对于Transformer模型的主要优势在于其线性计算复杂度。理论上,线性计算复杂度使得状态空间模型能够处理更长的序列,而Transformer模型需要更大的计算资源。最近开发的状态空间模型,包括Mamba、RetNet等,已经展示了其在长序列推理和训练方面的高效性和竞争力。另一方面,专家混合模型也展示了其出色的性能,同时显著降低了推理和计算成本,尽管需要更大的内存占用。MoE模型通过仅激活一部分参数来实现推理和训练的高效性。通过结合Mamba和MoE模型,本文将讨论BlackMamba,一种新型的架构,它结合了Mamba状态空间模型和MoE模型来利用两种框架的优势。
这种架构的进步为传统的Transformer模型提供了显著的优势,并代表了一个令人兴奋的发展方向。我们认为,将这些增强功能集成到一个结合Mamba和MoE模型的框架中,可以显著提高语言建模的能力和效率,超越传统的Transformer模型。预期的优势包括:
Mamba:实现了相对于输入序列长度的线性计算复杂度,能够在常数时间内进行自回归生成和训练。
MoE:提供了与较小的密集基准模型相似的推理速度和训练计算效率,同时保持了与密集模型相似的模型质量。
尽管Transformer模型仍然是最先进的,并且在语言建模任务和序列处理任务中展示了强大的性能,但BlackMamba框架能够结合Mamba和MoE模型的优势,提供快速和高效的推理和训练能力。
BlackMamba:架构和方法论
状态空间模型
状态空间模型属于序列模型的一种,具有相对于输入序列长度的线性复杂度。状态空间模型的架构更类似于循环神经网络和卷积神经网络,而不是注意力机制。状态空间模型的核心思想是使用一个隐式的潜在空间来映射一个一维函数。这种架构使得并行计算变得高效,可以使用关联或卷积扫描来实现。然而,状态空间模型的递归性质使得其难以在高度并行的AI硬件上实现,如GPU。然而,最近的状态空间模型,如RWKV和Mamba,已经使用并行扫描内核来高效地映射递归操作到GPU上,使得训练新型架构成为可能。
Transformer模型中的二次复杂度限制了其在长序列上的推理和训练能力。最近的创新已经引入了扩展上下文长度的概念,使得Transformer模型能够在更长的序列上进行训练和推理。然而,推理过程仍然需要大量的计算资源和内存,特别是维护Key-Value缓存。最近的研究已经集中在增强状态空间模型的表达能力,通过引入输入依赖的门控机制,类似于注意力机制中的Query、Key、Value矩阵。
这些努力旨在保留状态空间模型的线性递归性质,使得其能够通过卷积或选择性扫描来高效地执行。这种方法显著地缩小了状态空间模型与Transformer模型之间的性能差距。在这些进步中,Mamba模型已经展示了其出色的性能,达到与Transformer模型相似的水平,具有高达28亿参数的规模。Mamba模型通过将输入依赖的门控应用于状态空间模型的递归输入,实现了高效的计算和训练。
专家混合模型
专家混合模型通过仅激活一部分参数来实现推理和训练的高效性。MoE模型使用一个路由机制来确定哪些专家应该被激活,基于输入的上下文。这种方法创建了一个计算成本和参数总数之间的分离,使得模型能够在固定推理预算内实现更好的性能,尽管需要更大的内存占用。MoE模型通常使用一个紧凑的神经网络来实现路由机制,通过将输入映射到专家索引上。然而,开发者仍然需要找到最佳的训练方法来优化路由机制,因为专家分配问题是非可微的,MoE模型通常难以实现负载平衡和训练稳定性。
架构
BlackMamba框架的核心是一个标准的Transformer模型,包括交替的MLP块和注意力块。然而,BlackMamba框架不仅仅是用路由专家层替换MLP块,还用Mamba状态空间模型层替换注意力层。BlackMamba框架的架构如下图所示。
训练和数据集
BlackMamba模型在超过3000亿个标记的自定义数据集上进行训练,使用SwiGLU激活函数来训练专家MLP。开发者发现,使用8个专家是一个合适的平衡点,能够在内存占用和推理成本之间实现良好的权衡。自定义数据集包括Starcoder、SlimPajama、Pile等多个开源数据集。以下表格展示了每个数据集的权重,总共有1.8万亿个标记。
BlackMamba:结果
为了确保公平的比较,开发者已经使用相同的训练参数和数据集来训练Mamba和BlackMamba模型。BlackMamba框架能够在推理和训练方面超越Mamba和Transformer模型,具有相同的前向传播模型大小。以下图表展示了自回归生成序列的时间,作为序列长度的函数。结果表明,BlackMamba框架能够实现更快的推理速度和更低的训练成本,特别是在长序列生成任务中。

此外,BlackMamba框架能够结合Mixture of Expert和Mamba模型的优势,实现更快的推理速度和更低的训练成本。以下图表展示了BlackMamba模型的专家分配情况,具有340万和640万个参数。结果表明,BlackMamba模型能够实现更好的专家平衡和训练稳定性。以下表格展示了BlackMamba框架的评估结果,相比其他开源预训练语言模型,BlackMamba框架能够实现更好的性能,尽管参数数量较少。


总结
在本文中,我们讨论了BlackMamba,一种新型的架构,它结合了Mamba状态空间模型和MoE模型来利用两种框架的优势。实验结果表明,BlackMamba框架能够在推理和训练方面超越Mamba和Transformer模型,具有相同的前向传播模型大小。BlackMamba框架能够结合Mixture of Expert和Mamba模型的优势,实现更快的推理速度和更低的训练成本。我们已经讨论了BlackMamba框架的架构、方法论和结果,展示了其在长序列生成任务中的优势。BlackMamba框架能够实现更好的专家平衡和训练稳定性,相比其他开源预训练语言模型,BlackMamba框架能够实现更好的性能,尽管参数数量较少。












