AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


MLLM+MoE!UIUC联合字节提出视觉编码器稀疏门控MOE!
发布日期:2024-05-14 22:25:53 浏览次数: 2074 来源:数源AI



数源AI 最新论文解读系列


论文名:CuMo: Scaling Multimodal LLM with Co-Upcycled Mixture-of-Experts

论文链接:https://arxiv.org/pdf/2405.05949.pdf

开源代码:https://github.com/SHI-Labs/CuMo




引言

GPT-4V的出现引发了开源社区的兴奋,他们 希望将大型语言模型(LLM)转变为多模态LLM。最 近的多模态LLM通常将预训练的视觉编码器 和LLM与视觉指导调整数据整合在一起,以微调预训 练的LLM,增强其视觉理解能力。为了进一步扩展多 模态LLM,先前的努力主要集中在 用更广泛的文本-图像配对数据训练模型,并采用更强 大的LLM,显著增加了训练工作量。在视觉方面,最 近的工作集中在利用多个视觉编码器来丰富视 觉内容,采用更大的视觉编码器,并使用先进的 视觉-语言连接器来提高多模态任务的性能。然而, 这些技术导致了额外参数的增加,并为LLM生成了额 外的视觉标记,使得扩展变得低效。



简介

受到在LLMs中成功应用的专家 混合(Mixture-of-Experts,MoE)的启发,该方法在 训练过程中提高了模型的可扩展性,同时保持了 推理成本与较小模型相似,我们提出了CuMo,它 将Co-upcycled Top-K稀疏门控Mixture-of-experts块融入视觉编码器和MLP连接器中,从而通过在推理过程 中激活的参数可以忽略不计地增强了多模态LLMs。 CuMo首先对MLP块进行预训练,然后在视觉指导调 整阶段,从预训练的MLP块中初始化MoE块中的每个 专家,通过辅助损失确保专家的平衡负载。CuMo在 各种VQA和视觉指导跟随基准测试中的各个模型大 小组内均优于最先进的多模态LLMs,同时仅在开 源数据集上进行训练。



方法与模型


,我们首先回顾了先前研究中使用的稀 疏MoE块结构和循环利用策略。随后,我们描述了如 何利用共同循环利用策略将这些稀疏门控MoE块集成 到多模态LLM的每个模块中。然后,我们介绍了用于 稳定训练和平衡专家负载的三阶段训练过程和辅助损 失函数。

0Revisit Sparse MoE

(1) 稀疏的MoE结构

先前的主流做法[60]是用稀疏门控的 专家混合块替换密集的MLP块。给定输入X∈RN×Cin 和一个MLP块,

为了扩展具有多个MLP块的模型,稀疏的MoE块包括 一个路由网络,以从总共S个专家中选择前K个专家。 该路由网络具有一个线性层,根据输入X计算归一化 权重矩阵以进行投票,结果为

对于每个标记,基于W选择前K个专家,并使用重 新归一化的权重WK∈RN× K进行计算

每个选定的专家由一个MLP块表示,并通过重新加权 求和获得最终输出。

输出Xout 保持与单个密集MLP块输出相同的维度。

    (2) 稀疏升级

    从头开始训练基于MoE的设计可能不稳定且 成本高昂。稀疏升级[33]通过从预训练的密集检查点 中的相应MLP块初始化每个MoE块中的专家来解决 这一挑战。这种初始化方法为训练基于MoE的模型提 供了更好的起点,并降低了与从头开始训练相比的训 练成本。




0CuMo Architecture

(1) MLP连接器中的稀疏MoE

MLP连接器将视觉标记转 换为词嵌入空间,对齐视觉和文本标记之间的维度。 用于视觉-语言连接器的有效架构是一个包含两个线性 层的MLP块[46]。我们从单个MLP块开始,并将其 替换为一个Top-K稀疏MoE块,其中包括一个Top-K 路由器和一组专家,用于将视觉标记投影到词嵌入空 间中。

(2) 视觉编码器中的稀疏MoE

视觉编码器将图像特征提 取为视觉标记序列,用于在LLM中进行推理。CLIP [57] 是最受欢迎的预训练视觉编码器之一,用于多模 态LLM,因为它在大规模图像-文本对上进行了预训 练,适用于处理图像以供多模态使用。CLIP的视觉编 码部分是一个ViT[15]模型,其中在transformer 编码 器中有连续的MLP块。我们用一个Top-K稀疏MoE 块替换每个MLP块,保留MoE块输出旁边的跳跃连接。

(3)LLM中的稀疏MoE

在使用MoE进行LLM时,我们 将协同升级的LLM与基于预训练MoE的LLM进行比 较。我们从Mistral-7B开始,升级后的Mistral-7B-MoE 在某些基准测试中略优于Mistral-7B。然而,考虑到来 自Mistral-7B 的升级专家的受限知识库,我们将其与 具有多样化知识库的预训练专家的预训练Mixtral8x7B 进行比较。实验结果表明,预训练Mixtral8x7B明显优 于Mistral-7B-MoE。因此,LLM 未与CLIP和MLP连 接器协同升级,因为它带来了微小的改进,但增加了 大量的额外参数。


0Training Recipe


(1)共同升级再利用MoE模块

我们从头开始训练添加的 MoE模块,同时模型正在努力收敛。尝试通过降低学 习率来解决这个问题的做法与基准相比效果更差。因 此,我们采用了一种共同升级再利用的方法,将每个 集成稀疏门MoE模块的模块与预训练的MLP替换相 应的MLP模块,如图3所示。这种策略始终提高了训 练稳定性和模型性能。

    (2)三阶段训练

为了进一步增强训练稳定性,我们为 CuMo模型采用了三阶段训练策略,如图4所示。在 第一阶段,我们仅对MLP连接器进行预训练,考虑到 视觉编码器和LLM已经在大规模数据上进行了预训 练。在第二个预微调阶段,我们使用高质量的字幕数 据训练所有参数,以在引入MoE模块的后续阶段之前 预热整个模型。第三阶段涉及视觉指导微调,其中多 模态LLM通过再利用的MoE模块进行扩展,并在视 觉指导微调数据上进行训练。

    (3)损失函数

为了在每个MoE模块中维持专家之间的负载 平衡,我们采用基于语言建模交叉熵损失的辅助损失。 辅助损失包括负载平衡损失和路由器z-损失[77]。因 此,总损失为

在这里,Lce代表语言建模损失,计算下一个标记预 测的交叉熵。αb和αz分别表示加载平衡损失Lb和路由 器z损失Lz的系数,设置为0.1和0.01,在所有实验中保 持不变。这些辅助损失,在第4节中简称为bzloss,分 别应用于MLP连接器、视觉编码器和LLM,以简化处 理。



实验与结果

我们在一系列开源数据集上训练CuMo模型,这 些数据集被转换为视觉指令调整格式。然后,我们 对CuMo模型在各种竞争性VQA和基于指令跟随的基 准测试中的性能进行全面评估。此外,我们对每个模 块进行消融研究,使用升级的MoE块,并对结果进行 定性分析。


CuMo与其他最先进的多模态LLM在竞争基准上的比较




用户与多模态LLM在具有挑战性的图像上的对话





53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询