小编:桃子 我困了。
【新致远指南】爆款社区的混合8x7b模型今天终于发布了arxiv**!所有模型细节都已公开。
我还记得一个月前,Mistral AI突然宣布了一个磁力链接,引爆了整个AI社区。
紧接着,mixtral 8x7b 的技术细节被公布,它不仅优于 LLAMA 2 70b,而且推理速度提高了整整 6 倍。
甚至,它在 GPT-3 的大多数标准基准测试中也是如此5次平局,甚至稍微好一点。
今天,这家法国初创公司正式推出了 mixtral 8x7b mixtral 专家。
*地址:网友纷纷表示,最好的开源模型**终于发布了。
对于具体的技术细节,我们是第一个去的。
建筑
Mixtral 是一个由混合专家组成的稀疏网络,也是一个纯解码器模型。 前馈模块从一组 8 个不同的参数组中进行选择。
在每一层,对于每个令牌,路由网络选择其中两个专家来处理令牌,并将其输出相加。
该技术不仅增加了模型的参数数量,而且还控制了成本和延迟,因为模型仅使用每个处理的令牌的参数子集。
具体来说,mixtral 在使用 32,000 个令牌的上下文信息时进行了预训练。 它在多个基准测试中达到或超过了 LLAMA 2 70B 和 GPT-35。
特别是,Mictral 在数学、生成和多语言理解任务方面表现出色,在这些领域的表现明显优于 Llama 2 70b。
研究表明,无论序列长度和信息在序列中的位置如何,mixtral 都能够成功地从 32k 令牌的上下文窗口中检索信息。
建筑细节
Mixtra 建立在 Transformer 架构之上,并使用了 Mistral 7B 中的一些模型修改方法。
但明显的区别在于,Mixtral 完全支持 32k 代币的完整密集上下文长度,前馈区块被混合专家层取代。 下面我们来看一下表1,总结一下模型架构的具体参数。
稀疏混合专家
如下图所示,研究人员专门描述了混合专家层。
这是一个处理输入数据的特殊层,其中每个输入数据点被分配给 8 个处理单元中的 2 个(称为专家)。
这个分发过程是由路由完成的,但这里的路由不是我们通常所说的网络设备,而是神经网络中的一个组件,负责决定哪些专家处理特定的数据点。
每个EA实际上都是一个处理模块,他们各自独立处理分配的数据,并输出结果。
最终,该层的输出来自两个选定专家在特定权重计算后的输出。
在混合系统中,每个专家实际上都是一个标准的前馈网络模块,它也用于我们所说的标准 Transformer 模型架构中。
专家层的混合
MOE 层可以在具有高性能专用内核的单个 GPU 上高效运行。
例如,MegaBlocks 将 MOE 层的前馈网络 (FFN) 操作转换为大型稀疏矩阵乘法,从而显着提高执行速度,并自然地处理不同专家获得分配给他们的可变数量的代币的情况。
此外,MOE 层可以通过标准模型并行技术以及称为专家并行 (EP) 的特殊分区策略分布在多个 GPU 上。
在 MOE 层执行期间,本应由特定专家处理的令牌将被路由到相应的 GPU 进行处理,专家的输出将返回到原始令牌位置。
结果
研究人员对混血儿和骆驼进行了比较研究,为了确保比较的公平性,所有基准都重新运行,这次使用内部开发的评估过程。
研究人员对许多不同的任务进行了性能评估,这些任务可以分为以下几类:
- 常识推理(零样本):其中包括 Hellaswag、Winogrande、PiQA、SIQA、OpenBookQA、Arc-Easy、Arc-Challenge 和 CommonsenseQA
- 世界知识(少量样本,5 个样本):涵盖 NaturalQuestions 和 TriviaQA
- 阅读理解(零样本):Boolq 和 Quac
-数学:GSM8K(少样本,8 样本)使用多数投票 (maj@8),MATH(少样本,4 样本)也使用多数投票 (maj@4)。
-编程**:Humaneval(零样本)和 MBPP(少量样本,3 个样本)。
- 综合测试:MMLU(少样本,5 样本)、BBH(少样本,3 样本)和 AGI Eval(少样本,3 至 5 个样本,仅限多项选择英语)。
正如你所看到的,在所有基准测试中,混合性能都优于或至少等于LLAMA 2 70B。 值得一提的是,在数学和生成两个领域,mixtral 明显优于 LLAMA 2 70b。
在一系列基准测试中,Mistral 与具有不同参数的 Llama 模型的性能比较。
Mistral 8x7b、Mistral 7b 和 LLAMA 2 7B、13B 70B 和 LLAMA 1 34B 的详细结果如下表 2 所示。
模型参数大小和效率的比较
研究人员将混合模型的性能与 LLAMA 2 系列进行了比较,以提高混合模型在性价比方面的效率(图 3)。
作为一个稀疏的专家混合模型,mixtral 只需要激活每个处理的代币的 13b 个参数。 尽管活性参数降低了 5 倍,但 Mixtral 在大多数领域的表现仍然优于 LLAMA 2 70B。
此外,需要注意的是,此分析侧重于活动参数的数量,这与推理阶段的计算成本直接相关,但并未解决内存成本或硬件使用效率。
运行 mixtral 的内存成本与其稀疏参数总数有关,总共为 47b,仍小于 llama 2 70b 参数。
关于硬件的利用,研究人员指出,由于专家模型的路由机制,SMES层引入了额外的计算成本。
当每个硬件设备运行多个专家模型时,由于内存需求增加,成本也会更高。 该模型更适合于能够实现高计算密度的批处理任务。
使用 LLAMA 2 70B 和 GPT-35 性能比较
在表 3 中,研究人员显示了混合 8x7b 与骆驼 2 70b、GPT-35. 性能方面的比较结果。
相比之下,研究人员还发现,Mictral在几个方面与另外两个模型相当甚至超过。
在多模态学习理解 (MMLU) 的评估中,尽管 Mixtral 的模型参数数量较少(47B 个标记对 70b 个标记),但表现更好。
至于 MT Bench,研究人员报告了最新的 GPT-35-Turbo 型号,即 GPT-35- turbo-1106 版本的性能数据。
正如你所看到的,Mixtral 在所有基准测试中的表现通常都优于 Llama 2 70b,唯一的例外是在阅读理解基准测试中,当激活参数的数量仅为 llama 2 70b 的 1 5 个时。
特别是在**和数学领域,mixtral明显优于llama 2 70b。
混合 (7b 8x7b) 与骆驼 2 (7b 13b 70b) 在 MMLU、常识推理、世界知识、阅读理解、数学和**中的比较。
与Mistral 7b相比,研究人员在模型的预训练阶段显著增加了多语言数据的比例。
这种增加的模型参数使 Mistral 能够在不牺牲英语准确性的情况下在多语言性能评估中表现出色。
特别是,如表4所示,Mictral在法语、德语、西班牙语和意大利语中的表现明显优于Llama 2 70b。
为了测试mixtral在涉及广泛信息的情况下的表现,研究人员还提出了一项名为passkey retrieval的任务来测试它。
此任务专门用于评估模型在面对包含随机插入的密钥的长提示时恢复密钥的能力。
图 4(左)中的结果显示,无论上下文有多长或密钥在文本序列中出现的位置,mixtral 都能保持 100% 的恢复精度。
图 4(右)显示了 mixtral 在证明堆数据集子集上的困惑度,随着上下文量的增加,该子集的复杂性会单调降低。
指令微调
此外,研究人员还开发了 Mixtral Instruct 模型,首先在一个指令数据集上使用监督微调 (SFT),然后在配对反馈数据集上使用直接偏好优化 (DPO)。
在 MT-bench 评估中,mixtral 指令达到 8截至 2023 年 12 月,30 分(表 2)的高分使其成为表现最好的开源加权模型。
LMSYS进行的人工评估结果如图6所示,结果表明,混合指令的性能超过了GPT-35-turbo、gemini pro、claude-2.1 以及 Llama 2 70B 聊天模型。
路径分析
最后,研究人员简要分析了专家如何选择路由器。 特别是在培训期间,是否会有专家选择专攻某些特定领域(如数学、生物学、哲学等)。
为此,研究人员对PILE验证数据集的不同子集上的选择分布进行了专家测量,结果如图7所示。 涉及模型的第 0、15 和 31 层(最后一层)。
令人惊讶的是,这里没有明显的基于主题的专家分配模式。
例如,专家的分布在所有层中都非常相似,无论是arxiv**(用Lalatex编写)、生物学(PubMed)还是哲学(Phil***s文件)。
只有在数学领域(dm数学),专家的分布才略有不同。
研究人员认为,这种差异可能是由于数据集本身是合成的,并且对自然语言的覆盖范围有限,尤其是在模型的第一层和最后一层,其中隐藏状态分别与输入和输出嵌入高度相关。
这也表明路由器确实表现出一些结构化的句法行为。
图 8 显示了不同领域(Python、数学和英语)中的文本示例。 其中,每个令牌都标有不同的背景颜色,很容易看到相应的分配专家。
可以发现,像 Python 中的 self 和英语中的 question 这样的词,虽然包含多个标记,但往往被分配给同一个专家。 同样,相邻的代币将被分配给同一专家。
在**中,缩进的令牌也总是分配给同一个EA,这在模型的第一层和最后一层尤为明显,因为这些层的隐藏状态与模型的输入和输出更密切相关。
此外,基于Pile数据集,研究人员还发现了一些位置局部性。
表 5 显示了同一专家在不同域和网络层中连续选择的代币比例。
在网络的上层,这种连续重复分配的概率远高于随机分配的概率。 这种现象对模型的优化具有重要意义,从而加速了训练和推理过程。
例如,在专家并行性中,这些位置高度接近的情况更有可能导致某些专家被过度使用。 但是,这种接近性也可用于缓存技术。
关于选择这些专家的频率,图 10 提供了更全面的视图,涵盖了所有网络层和不同的数据集。
结论
在本文中,研究人员介绍了第一个具有SOTA性能的开源专家混合网络,即mixtral 8x7b。
在人类评估基准测试中,混合 8x7b 指令优于 claude-21. Gemini Pro 和 GPT-35-turbo。
Mixtral 的一大特点是它在处理每个令牌时只激活 13b 参数,这比 Llama 2 70b 使用的 70b 参数要低得多。
现在,研究人员已经将经过训练和微调的模型放入Apache 2中0 开源许可证,以便社区成员可以自由使用。
参考文献:优质作者名单