GPT-4使用混合大模型?研究证明MoE+指令调优确实让大模型性能超群

405 阅读5分钟

谷歌、UC 伯克利等证明 MoE + 指令调优起到了 1 + 1 > 2 的效果。

自 GPT-4 问世以来,人们一直惊艳于它强大的涌现能力,包括出色的语言理解能力、生成能力、逻辑推理能力等等。这些能力让 GPT-4 成为机器学习领域最前沿的模型之一。然而,OpenAI 至今未公开 GPT-4 的任何技术细节。
上个月,「天才黑客」乔治・霍兹(George Hotz)在接受一家名为 Latent Space 的 AI 技术播客的采访时提到了 GPT-4,并称 GPT-4 其实是一个混合模型。具体来说,乔治・霍兹称 GPT-4 采用由 8 个专家模型组成的集成系统,每个专家模型都有 2200 亿个参数(比 GPT-3 的 1750 亿参数量略多一些),并且这些模型经过了针对不同数据和任务分布的训练。

图片

Latent Space 的采访内容。
这或许只是乔治・霍兹的一种推测,但这种模式确实有一定的合理性。最近,由来自谷歌、UC 伯克利、MIT 等机构的研究者联合发表的一篇论文证实:混合专家模型(MoE)与指令调优的结合能够让大型语言模型(LLM)的性能大幅提升。

图片

论文地址:arxiv.org/pdf/2305.14…
稀疏混合专家模型是一种特殊的神经网络架构,可以在不增加推理成本的情况下,为大型语言模型(LLM)增加可学习的参数。指令调优(instruction tuning)是一种训练 LLM 遵循指令的技术。该研究发现 MoE 模型比密集模型更能从指令调优中获益,因此提出将 MoE 和指令调优结合起来。
该研究在三种实验设置下进行了实证研究,包括

  • 在没有指令调优的情况下在单个下游任务进行直接微调;

  • 指令调优后对下游任务进行 in-context 少样本或零样本泛化;

  • 指令调优后对单个下游任务进行进一步微调。

在第一种情况下,MoE 模型总体上不如具有相同计算能力的密集模型。然而,随着指令调优的引入(第二和第三种情况),FLAN-MoE_32B(Fine-tuned LAnguage Net,简写为 Flan,是一种经过指令调优的模型,Flan-MoE 即为指令调优 MoE)在四个基准任务上性能超过了 FLAN-PALM_62B,却只用了三分之一的 FLOPs。
如下图所示,在使用指令调优前,MoE→FT 不如 T5→FT。指令调优后,Flan-MoE→FT 优于 Flan-T5→FT。MoE 从指令调优中获得的收益 (+15.6) 大于密集模型 (+10.2):

图片

看来 GPT-4 采用混合模型还是有点根据的,MoE 确实能够从指令调优中获得更大的收益:

图片

方法概述
研究者在 FLAN-MOE (是一组经过指令微调的稀疏混合专家模型)模型中使用了稀疏激活 MoE(Mixture-of-Experts)。此外,他们还用 MoE 层替换了其他 Transformer 层的前馈组件。
每个 MoE 层可理解为一个「专家」,然后,使用 softmax 激活函数对这些专家进行建模,得到一个概率分布。
尽管每个 MoE 层有很多参数,但专家是稀疏激活的。这意味着对于给定的输入 token,只使用有限的专家子集就能完成任务,从而为模型提供了更大的容量。
对于具有 E 个专家的 MoE 层,这实际上提供了 O (E^2) 种不同的前馈网络组合,从而实现了更大的计算灵活性。
由于 FLAN-MoE 是经过指令调优的模型,因而指令调优非常重要,该研究在 FLAN 集合数据集的基础上对 FLAN-MOE 进行微调。此外,该研究将每个 FLAN-MOE 的输入序列长度调整为 2048,输出长度调整为 512。
实验与分析
平均而言,在不增加任何额外计算的情况下,Flan-MoE 在所有模型尺度上都优于密集的同类产品 (Flan-T5)。

图片

专家数量。图 4 显示,随着专家数量的增加,初始时,模型受益于更丰富的专门子网络,每个子网络能够处理问题空间中的不同任务或方面。这种方式使得 MoE 在处理复杂任务时具有很强的适应性和效率,从而整体上改善性能。然而,随着专家数量的不断增加,模型性能增益开始减少,最终达到饱和点。

图片

图 3 和表 1 详细研究了不同的路由决策如何影响指令调优性能:通过 FLAN-Switch 和 FLAN-GS 策略之间的比较可以得出,激活更多的专家会在四个基准测试中提高性能。在这些基准测试中,MMLU-Direct 模型显示出最显著的改进,对于 BASE/LARGE 尺寸的模型,从 38.0% 增加到 39.9%。
值得注意的是,与等效容量的密集模型相比,指令调优显著放大了 MoE 模型在保留 MMLU、BBH 和内部 QA 和推理基准测试方面的性能。对于较大的 MoE 模型,这些优势进一步放大。例如,指令调优使 ST_32B 的性能提升了 45.2%,而对于 FLAN-PALM_62B,这种改进相对较小,约为 6.6%。

图片

当进行模型扩展时,Flan-MoE (Flan-ST-32B) 优于 Flan-PaLM-62B 。

图片

此外,该研究通过 freeze 给定模型的门控函数(gating function)、专家模块和 MoE 参数进行了一些分析实验。如下表 2 所示,实验结果表明,freeze 专家模块或 MoE 组件对模型性能有负面影响。

图片

相反,freeze 门控函数会使模型性能略有改善,尽管并不明显。研究者推测这一观察结果与 FLAN-MOE 的欠拟合有关。该研究还进行了消融实验来探究下图 5 描述了微调数据效率消融研究。

图片

最后,为了比较直接对 MoE 进行微调和 FLAN-MOE 之间的差距,该研究对单任务微调的 MoE、单任务微调的 FLAN-MoE 和密集模型进行了实验,结果如下图 6 所示:

图片

感兴趣的读者可以阅读论文原文,了解更多研究内容。