Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

Mixtral 8x7B 在大多数基准尝试中都优于 Llama 2 70B 和 GPT-3.5。前段时间,那个爆火整个开源社区的 Mixtral 8x7B MoE 模型论文放出了。此前,由于 OpenAI 团队一直对 GPT-4 的参数量和训练细节守口如瓶。Mistral 8x7B 的放出,无疑给广大开发者提供了一种「非常接近 GPT-4」的开源选项。要知道,很早之前就有人爆料,OpenAI 也是采用了「混同大师模型」(Mixture of Experts,MoE)的构架来搭建 GPT-4。随着论文的放出,一些研究

Mixtral 8x7B 在大多数基准尝试中都优于 Llama 2 70B 和 GPT-3.5。

前段时间,那个爆火整个开源社区的 Mixtral 8x7B MoE 模型论文放出了。

此前,由于 OpenAI 团队一直对 GPT-4 的参数量和训练细节守口如瓶。Mistral 8x7B 的放出,无疑给广大开发者提供了一种「非常接近 GPT-4」的开源选项。要知道,很早之前就有人爆料,OpenAI 也是采用了「混同大师模型」(Mixture of Experts,MoE)的构架来搭建 GPT-4。

随着论文的放出,一些研究细节也被公布出来。

Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

论文地址:https://arxiv.org/pdf/2401.04088.pdf

项目地址:https://github.com/mistralai/mistral-src

论文主页:https://mistral.ai/news/mixtral-of-experts/

Mixtral 8x7B 是一种具有开放权重的稀疏大师混同模型 (SMoE),在大多数基准尝试中都优于 Llama 2 70B 和 GPT-3.5。Mixtral 可以在小批量大小下实现更快的推理速度,并在大批量大小下实现更高的吞吐量。

Mixtral (即 Mixtral 8x7B)与单个 Mistral 7B 架构相同

Mistral 7B 模型同样来自这家法国人工智能初创公司 Mistral AI ,这篇论文发表于去年 10 月,在每一个基准尝试中,Mistral 7B 都优于 Llama 2 13B,并且在代码、数学和推理方面也优于 LLaMA 1 34B。关于这项研究的更多内容,大家可以参考《所有基准尝试都优于 Llama 2 13B,最好的 7B 模型来了,免费用》。

 Mistral 7B 论文地址:https://arxiv.org/pdf/2310.06825.pdf

与 Mistral 7B 不同的是,Mixtral 8x7B 是一种仅包含解码器的模型,每层由 8 个前馈块(即大师)组成。对于每一个 token,在每一层,路由器搜集都会选择两名大师来处理当前状态并组合他们的输入。尽管每一个 token 只看到两个大师,但所选的大师在每一个时间步上都可能不同。因此,每一个 token 可以访问 47B 参数,但在推理过程中仅使用 13B 激活参数

从这里我们也可以看出,Mixtral 8x7B 并不是大家认为的有 8 个 Mistral 7B 模型,名字中的 8 代表 8 个大师。

Mixtral 预训练上下文的大小为 32k,在多项基准尝试中,它的功能达到或超过 Llama 2 70B 和 GPT-3.5。尤其是,Mixtral 在数学、代码生成和需要多语言理解的任务方面表现出了卓越的能力,并在这些领域显著优于 Llama 2 70B。实验表明,Mixtral 能够成功地从 32k token 的上下文窗口中检索信息,无论序列长度和信息在序列中的位置如何。

除了 Mixtral 8x7B,该研究还推出了 Mixtral 8x7B – Instruct 聊天模型,其功能在人类评估基准上明显超过了 GPT-3.5 Turbo、Claude-2.1、Gemini Pro 和 Llama 2 70B 聊天模型。在 BBQ 和 BOLD 等基准中,Mixtral – Instruct 也显示出更少的偏见。

值得一提的是,Mixtral 8x7B 和 Mixtral 8x7B – Instruct 免费供学术和商业使用。

不过,有研究者表示 Mixtral 中的大师似乎专注于语法而不是领域,特别是在初始层和最终层(参见路由分析部分)。

Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

Mixtral 8x7B 如此令人兴奋的原因在于它探索了一种新的架构范式,即「大师混同」的方法,与大多数 LLM 所遵循的方法形成鲜明的对比。

MoE 结合了多个大师模型的优势来解决问题,在 MoE 中,仅使用一名或少数大师就能进行预测。这种方法有两个主要组成部分:

路由器:决定对于给定输入信任哪个大师以及如何权衡每一个大师对于特定输入的结果。

大师:专门研究问题不同方面的个体模型。

在 Mixtral 的案例中,有八位大师,其中两位是被选中的。我们接下来看具体细节。

架构细节

Mixtral 基于 Transformer 架构,支持上下文长度达到 32k token,并且前馈块被 Mixture-of-Expert(MoE)层取代。

Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

稀疏大师混同

大师混同层如图 1 所示。

Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

对于给定的输入 x,MoE 模块的输入由大师搜集输入的加权和决定,其中权重由门控搜集的输入给出。即给定 n 个大师搜集 {E_0, E_i, …, E_(n−1)},则大师层的输入为:

Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

这里,G (x)_i 表示第 i 个大师的门控搜集的 n 维输入,E_i (x) 是第 i 个大师搜集的输入。不过实现 G (x) 有多种替代方案,其中简单且高功能的方法是通过在线性层的 Top-K logits 上采用 softmax 来实现。即:

Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

MoE 层可以在具有高功能专用内核的单个 GPU 上高效运行。例如,Megablocks 将 MoE 层的前馈搜集(FFN)操作转换为大型稀疏矩阵乘法,显著提高了执行速度。此外,MoE 层可以通过标准模型并行技术以及一种称为大师并行 (EP) 的特殊分区策略分布到多个 GPU 上。 

在 MoE 层执行期间,本应由特定大师处理的 token 将被路由到相应的 GPU 进行处理,并且大师的输入将返回到原始 token 位置。

在 Transformer 模型中,MoE 层独立的应用于每一个 token,并取代 Transformer 块的前馈 (FFN) 子块。对于 Mixtral,该研究使用与大师函数 E_i (x) 相同的 SwiGLU 架构,并设置 K = 2。这意味着每一个 token 都被路由到具有不同权重集的两个 SwiGLU 子块。将所有这些放在一起,输入 token x 的输入 y 计算如下:

Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

实验及结果

研究者将 Mixtral 与 Llama 进行了比较,并使用自己的评估 pipeline 重新运行了所有基准,以进行公平比较。该研究对以下各种任务的功能进行了测量:常识推理、世界知识、阅读理解、数学、代码等。具体任务详情见原论文。

表 2 列出了 Mixtral、Mistral 7B 和 Llama 2 7B/13B/70B 以及 Llama 1 34B 的详细结果。

Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

图 2 比较了 Mixtral 和 Llama 在不同类别任务中的功能。在大多数指标上,Mixtral 都超过了 Llama 2 70B。特别是在代码和数学基准尝试中,Mixtral 的表现更胜一筹。

Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

研究者将 Mixtral 与 Llama 2 系列进行了比较。如图 3 所示,作为一个稀疏大师混同模型,Mixtral 每一个 token 仅使用 13B 个激活参数。尽管激活参数减少了 5 倍,Mixtral 在大多数类别中仍然能够胜过 70 亿参数的 Llama 2。

Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

表 3 展示了 Mixtral 8x7B 与 Llama 2 70B 和 GPT-3.5 的功能比较。研究者发现 Mixtral 的功能与其他两个模型相媲美,甚至优于它们。在 MMLU 上,尽管 Mixtral 的容量要小得多,但它的功能更好。

Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

多语言基准尝试

与 Mistral 7B 相比,研究者在预训练时大幅提高了多语言数据的采样比例。额外的容量使 Mixtral 在多语言基准尝试中表现出色,同时保持了较高的英语准确率。如表 4 所示,Mixtral 在法语、德语、西班牙语和意大利语方面的表现明显优于 Llama 2 70B。

Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

长距离功能

图 4(左)结果表明,无论上下文长度或 passkey 在序列中的位置如何,Mixtral 的检索准确率都达到了 100%。图 4(右)显示,随着上下文大小的增加,Mixtral 在 proof-pile 数据集的一个子集上的困惑度单调降低。

Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

偏见基准尝试

研究者使用他们自己的评估框架对 Llama 2 和 Mixtral 在 BBQ 和 BOLD 上进行基准尝试,结果如表 5 所示。与 Llama 2 相比,Mixtral 在 BBQ 基准尝试中展现出较少的偏见。在 BOLD 的中,更高的平均情感得分意味着更积极的情感,而更低的标准差表示该群组内的偏见较少。总体而言,Mixtral 比 Llama 2 显示出更积极的情感,并且各组内的差异类似。

Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

路由分析

研究者对路由器选择大师的情况进行了少量分析,他们尤其想知道在训练过程中,一些大师是否专攻某些特定领域,如数学、生物学、哲学等。

为了研究这一点,研究者测量了在 The Pile 验证数据集的不同子集中所选大师的分布情况。图 7 展示了第 0 层、第 15 层和第 31 层的结果。

Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

令人惊讶的是,研究者在根据主题调配大师时没有观察到明显的模式。例如,在所有层中,ArXiv 论文(用 Latex 编写)、生物学(PubMed Abstracts)和哲学(PhilPapers)文档的大师调配分布非常相似。只有在 DM 数学中,大师的分布略有不同。

这表明路由器表现出一些结构化的语法行为。

图 8 显示了不同领域(Python 代码、数学和英语)的文本示例,其中每一个 token 都用与其所选大师相对应的背景色突出显示。从图 8 中可以看到,连续的 token 往往被调配给相同的大师。

每一个 token 都用第一个大师选择着色。大师的选择似乎更符合语法而不是领域,特别是在初始层和最后层。

Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

表 5 显示了每一个领域和层中连续 token 获得相同大师调配的比例。对于较高的层,重复连续调配的比例明显高于随机调配。

Mixtral 8x7B论文终于来了:架构细节、参数量首次曝光

其实,在论文公开之前,Mixtral 模型就已经放出了,很多研究者都对 Mixtral 8x7B 进行了更深入的研究。比如你有 16 GB 显存 和 11 GB 内存的电脑,就可以在本机运行该模型,或者你也可以在 Google Colab 上运行。

Jupiter Notebook:https://github.com/dvmazur/mixtral-offloading/blob/master/notebooks/demo.ipynb

项目地址:https://github.com/dvmazur/mixtral-offloading/tree/master?tab=readme-ov-file

此外,还有研究者将 Mistral 8x7B 与 Flash Attention 2 结合,不到 10 行代码就能实现快速推理。

随着论文的放出,相信会有更多的改进应用出现。

更多技术详情,请参阅原论文。

参考链接:https://twitter.com/dotey/status/1744237264807350703

给TA打赏
共{{data.count}}人
人已打赏
应用

比A100性价比更高!FlightLLM让大模型推理不再为性能和成本同时发愁

2024-1-10 17:00:00

应用

翻车,才是斯坦福炒菜机器人学习人类的常态

2024-1-10 17:24:00

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
搜索