Uni-MoE:基于混合专家模型扩展统一多模态大语言模型

论文链接:https://arxiv.org/abs/2405.11273
开源代码:https://github.com/HITsz-TMG/UMOE-Scaling-Unified-Multimodal-LLMs

摘要

针对多模态大语言模型(MLLM)扩展过程中计算成本高、模态支持有限的问题,本文提出基于混合专家(MoE)架构的统一多模态大语言模型Uni-MoE。通过引入特定模态编码器与连接器,模型实现了文本、图像、音频、视频等多种模态的统一表征,并在密集型语言模型中嵌入稀疏MoE架构,仅需激活部分参数即可完成高效训练与推理。本文设计了三阶段渐进式训练策略:跨模态对齐(通过多模态数据训练连接器)、模态专家训练(利用交叉模态数据优化专家网络)和联合调优(基于混合多模态指令数据微调整体模型)。实验表明,Uni-MoE在图像-文本、视频、长语音等基准测试中均优于传统密集模型,尤其在复杂长语音理解任务(如高中英语听力测试)中表现突出。此外,模型通过引入更多模态信息(如图像-文本数据)提升了视频问答等单模态任务的性能,验证了其跨模态协同能力。本文方法无需依赖辅助平衡损失即可实现多专家协作,且随着专家数量增加,模型稳定性与泛化性进一步增强。

引言

近年来,开源多模态大语言模型(MLLMs)在视觉-语言、语音-语言等任务中取得显著进展。然而,随着模型规模与数据维度的扩展,其计算成本呈指数级增长,严重限制了实际应用。尽管混合专家(Mixture of Experts, MoE)架构已被证明能有效提升模型效率(如GShard、Switch Transformer),但现有研究多聚焦于文本或图像-文本任务,且专家数量与模态覆盖范围受限。

本文提出Uni-MoE,首个基于MoE架构的统一多模态大语言模型,能够高效处理音频、语音、图像、视频和文本等多模态输入。通过引入模态特定编码器(modality-specific encoders)与统一语言空间连接器(connectors),Uni-MoE实现了跨模态表征的无缝对齐。
![[Pasted image 20250506111333.png]]

其核心创新在于:

  1. 稀疏MoE架构:在LLM内部块中部署共享自注意力层与多专家网络,仅激活部分参数进行推理,显著降低计算开销。
  2. 三阶段渐进式训练策略
    • 跨模态对齐:通过大量图像/语音/音频-语言对训练连接器,建立统一语言空间表征。
    • 模态专家训练:利用交叉模态数据集分别优化各专家的模态处理能力。
    • 联合微调:结合LoRA技术,在混合多模态指令数据上训练完整Uni-MoE框架。

实验表明,Uni-MoE在多个基准测试中超越传统密集模型,尤其在复杂视频理解和长语音推理任务中表现突出(如英语高中听力测试)。此外,通过引入更多模态信息(如图像-文本数据),模型单模态任务性能也得到提升。

本文进一步验证了MoE框架在多模态建模中的潜力:当专家数量扩展至8个时,辅助损失(auxiliary loss)能有效促进专家协作;而LoRA微调技术显著降低了训练成本。

Uni-MoE

概述

受限于扩展多模态大模型(如 GPT-4V 和 Gemini)带来的高昂训练和推理成本,以及 MoE 结构的效率优势,本文探索实现了一种高效且强大的统一多模态大语言模型(MLLM),利用了 MoE 架构 。

![[Pasted image 20250506112035.png]]

图 2 展示了 Uni-MoE 的示意图,其中包含用于音频、语音和视觉的编码器,以及各自对应的模态连接器 。这些连接器负责将各种模态输入转换到统一的语言空间中 。随后,本文将 MoE 架构集成到核心 LLM 块中 ,这对于提高训练和推理过程的效率至关重要,因为它仅激活部分参数 。Uni-MoE 的整个训练过程分为三个不同的阶段:跨模态对齐、训练模态特异性专家,以及使用多样化的多模态指令数据集对 Uni-MoE 进行微调 。在接下来的小节中,将详细阐述 Uni-MoE 的复杂架构和渐进式训练方法 。

架构

Connectors

为了促进不同模态输入到语言格式的有效转换,本文的 Uni-MoE 模型基于预训练的视觉-语言框架 LLaVA 。该基础模型集成了 CLIP 作为视觉编码器,以及一个线性投影层,用于将图像特征转换为 Vicuna-LLAMA 语言领域中对应的软图像 token 。
对于视频内容处理,本文从每个视频中选择八帧代表性帧,并通过平均池化聚合它们的基于帧(图像)的表示,将其转换为视频 token 。
在语音/音频领域,本文通过部署两种不同的编码器来增强特征提取:源自 Whisper-small 语音识别模型的 Whisper 编码器 ,以及 BEATs 编码器 ,这是一种复杂的音频处理工具,可从音频 Transformer 生成双向编码器表示 。遵循类似于 Q-former 的方法,本文随后分别提取固定长度的语音/音频特征向量,并通过线性投影层将其映射到软语音/音频 token 中 。
多种模态具体工作流程如下: XInput=[I,V,A,S,T](1) X_{Input}=[I,V,A,S,T] \quad (1)XInput=[I,V,A,S,T](1) I=MLP(CLIP−V(I))(2) \ I=MLP(CLIP-V(I)) \quad (2)  I=MLP(CLIPV(I))(2) V=Mean(CLIP−V([I1,...,I8]))(3)\ V=Mean(CLIP-V([I_{1},...,I_{8}])) \quad (3)  V=Mean(CLIPV([I1,...,I8]))(3) A=Audio−Qformer(BEATs(A)).(4)\ A=Audio-Qformer(BEATs(A)). \quad (4)  A=AudioQformer(BEATs(A)).(4) S=Speech-Qformer (Whisper(S))(5)\ S=\text{Speech-Qformer (Whisper(S))} \quad (5)  S=Speech-Qformer (Whisper(S))(5) T=Word-Embedding(T)(6)\ T=\text{Word-Embedding(T)} \quad (6)  T=Word-Embedding(T)(6)其中 [I,V,A,S,T] 分别代表图像、视频、音频、语音和文本 。“MLP” 是可学习的视觉-语言投影层 。Audio/Speech-Qformer 是一个四层 Transformer 块 ,本文将可学习的查询向量输入其中,并将相应的语音/音频隐藏状态作为交叉注意力层中的Key和Value 。通过这样的四层计算,最终输出可以被视为语音/音频输入的表示 。以 Audio-QFormer 为例,详细的计算过程如以下公式所示 :XQA=(hQ1,...,hQAM)(7) X_{Q}^{A}=(h_{Q}^{1},...,h_{Q}^{AM}) \quad (7) XQA=(hQ1,...,hQAM)(7) hBA=BEATs(A)(8)\ h_{B}^{A}=BEATs(A) \quad (8)  hBA=BEATs(A)(8) hSA=MSA(LN(XQA))+XQA(9)\ h_{S}^{A}=MSA(LN(X_{Q}^{A}))+X_{Q}^{A} \quad (9) hSA=MSA(LN(XQA))+XQA(9)  hCA=MCA(LN(hSA),hBA)+hSA(10)\ h_{C}^{A}=MCA(LN(h_{S}^{A}),h_{B}^{A})+h_{S}^{A} \quad (10)  hCA=MCA(LN(hSA),hBA)+hSA(10) h1A=MLP(hCA)(11)\ h_{1}^{A}=MLP(h_{C}^{A}) \quad (11)  h1A=MLP(hCA)(11) 其中 XQA​X_Q^A​XQA指固定长度查询向量,AM​AM​AM指的是初始向量的总数, hBA​h_B^A​hBA 是预训练音频编码器 BEATs 的顶部输出, hSA​h_S^A​hSA ​ 是对 ​ XQA​X_Q^A​XQA的多头自注意力计算结果,hCA​h_C^A​hCA 表示交叉注意力模块的输出,用于提取输入音频的主要内容 。经过四层相同的操作后,本文应用一个可学习的线性层将最后的输出投影到 LLM 的表示空间中 。

Uni-MoE

通过上述连接器,本文可以获得任何模态的编码 token 。对于任何模态输入,本文将其对应的 token 拼接成一个序列并输入到语言模型中 。本文将图像、视频、文本、音频和语音的嵌入表示分别记为I=(I1​,...,IN​)I=(I_1​,...,I_N​)I=(I1,...,IN)V=(V1​,...,VN​)V=(V_1​,...,V_N​)V=(V1,...,VN)T=(T1​,...,Tz​)T=(T_1​,...,T_z​)T=(T1,...,Tz)A=(A1​,...,Ak​)A=(A_1​,...,A_k​)A=(A1,...,Ak)S=(S1​,...,SL​)S=(S_1​,...,S_L​)S=(S1,...,SL),其中 N、z、k 和 L 分别指代视觉、文本、音频和语音不同模态的编码序列长度 。以理解视频为例,配置了 MoE 的第lll层transformer块的计算过程如下 : x0=[V1,....,VN;T1,...,Tz;A1,...,Ak](12) x_{0}=[V_{1},....,V_{N};T_{1},...,T_{z};A_{1},...,A_{k}] \quad (12) x0=[V1,....,VN;T1,...,Tz;A1,...,Ak](12) Xls=MSA(LN(Xl−1))+Xl−1(13)\ X_{l}^{s}=MSA(LN(X_{l-1}))+X_{l-1} \quad (13)  Xls=MSA(LN(Xl1))+Xl1(13) XlM=MoE(LN(Xls))+Xls(14)\ X_{l}^{M}=MoE(LN(X_{l}^{s}))+X_{l}^{s} \quad (14)  XlM=MoE(LN(Xls))+Xls(14) xl=LN(XlM)(15)\ x_{l}=LN(X_{l}^{M}) \quad (15) xl=LN(XlM)(15)其中 “MSA” 和 “LN” 分别指代多头自注意力和层归一化 。 Xl−1X_{l−1}Xl1​ 表示第l−1l-1l1层的输出 。对于 MoE 层,采用稀疏路由在 token 级别选择相应的Top-k 专家 。专家公式化为E=(e1​,e2​,…,eM​) ,路由是一个线性函数,用于预测每个 token 被分配给每个专家的概率 。被选定专家的输出将根据门控权重相加 。本文将整个计算过程公式化如下 :P(Xls)=ef(Xls)i∑i=1Mef(Xls)j(16) \mathcal{P}(X_l^s) = \frac{e^{f(X_l^s)_i}}{\sum_{i=1}^{M}e^{f(X_l^s)_{j}}} \quad (16) P(Xls)=i=1Mef(Xls)jef(Xls)i(16) MoE(Xls)=∑i=1kP(Xls)i⋅e(Xls)i(17)\ MoE(X_{l}^{s})=\sum_{i=1}^{k}\mathcal{P}(X_{l}^{s})_{i}\cdot e(X_{l}^{s})_{i} \quad (17)  MoE(Xls)=i=1kP(Xls)ie(Xls)i(17)其中 f(x)=W⋅x 是用于产生专家分配概率的线性路由, W∈Rd×zW∈R^{d×z}WRd×z 。d 是隐藏状态的最后一维,M 是专家总数 。

为了加快训练过程,本文冻结了 LLM 的所有参数,包括添加的专家,并应用低秩适应(LoRA) 来激活每个专家 。本文将输入到 MoE 层中第一个专家的序列 token 表示为 XE1X_{E1}XE1​​ 。该专家的计算过程可以表示为 :

he1=e1(XE1)(18) h_{e_{1}}=e_{1}(X_{E_{1}}) \quad (18) he1=e1(XE1)(18)he1LoRA=LoRA-e1(XE1)(19)\mathbf{h}_{e_1}^{LoRA} = \text{LoRA-}e_1(\mathbf{X}_{E_1}) \quad (19)he1LoRA=LoRA-e1(XE1)(19)  LoRA(W0):=W0X+ΔWX=W0x+BAX(20)\ LoRA(W_{0}):=W_{0}X+\Delta WX=W_{0}x+BAX \quad (20)  LoRA(W0):=W0X+ΔWX=W0x+BAX(20) he1=he1+he1LoRA(21) (22)\ h_{e_{1}}=h_{e_{1}}+h_{e_{1}}^{LoRA} \quad (21) \ \quad (22)  he1=he1+he1LoRA(21) (22) 其中 B、A 是针对专家的线性层权重W0​ 添加的可学习参数 ,该专家的最终输出是 he1h_{e_{1}}he1​​ 。通过对每个专家采用这种方法,训练过程变得高效,因为它不需要更新专家的整体参数 。

下表展示了 Uni-MoE 的详细架构并与视觉-语言模型 MoE-LLaVA 进行了比较 。

Name Experts Top-k MoE Layers Embedding Width Layers FFN FFN Factor Heads Activated Param Total Param
Phi2-2.7B - - - 51200 2560 32 10240 2 32 2.7B 2.7B
MoE-LLAVA-2.7Bx4-Top2 4 2 16 51200 2560 32 10240 2 32 3.6B 5.3B
MoE-LLaVA-2.7Bx4-Top2+ 4 2 32 51200 2560 32 10240 2 32 4.5B 7.8B
OpenChat-7B - - - 32000 4096 32 14336 3 32 6.7B 6.7B
MOE-LLAVA-7Bx4-Top2 4 2 16 32000 4096 32 14336 3 32 9.6B 15.2B
MOE-LLAVA-7Bx4-Top2+ 4 2 32 32000 4096 32 14336 3 32 12.4B 23.7B
Vicuna-7B - - - 32000 4096 32 11008 3 32 6.7B 6.7B
Uni-MoE-7Bx4-Top2 4 2 16 32000 4096 32 11008 3 32 8.9B 13.2B
Uni-MoE-7Bx4-Top2+ 4 2 32 32000 4096 32 11008 3 32 11.1B 19.7B
Uni-MoE-7Bx8-Top2 8 2 16 32000 4096 32 11008 3 32 8.9B 21.9B
Uni-MoE-7Bx8-Top2+ 8 2 32 32000 4096 32 11008 3 32 11.1B 37.0B

训练策略

为了发挥不同专家的独特能力,增强多专家协作的有效性,并提升整个框架的泛化能力,本文引入了一种用于 Uni-MoE 渐进式训练策略 。算法 1 概述了基于 MoE 的集成 MLLM 架构的全面三阶段训练策略 。

![[Pasted image 20250506181639.png]]

Stage 1: Cross-Modality Alignment
初始阶段实现建立不同模态与语言之间的连接 。通过构建连接器来实现,这些连接器将各种模态数据转换为语言空间中的软 token 。此阶段的主要目标是最小化generative entropy loss 。如图 2 的上部所示,只有连接器的参数能更新 。这种方法确保了所有模态在统一的语言框架内的无缝集成,促进了 LLM 对它们的相互理解 。

Stage 2: Training Modality-Specific Experts
此阶段专注于通过在特定跨模态数据上进行专门训练来开发单模态专家 。目标是提升每个专家在其各自领域的能力,从而增强 MoE 系统在各种多模态数据上的整体性能 。训练指标为generative entropy loss,只有FFN的参数能更新。

Stage 3: Tuning Uni-MoE
![[Pasted image 20250506182059.png]]

最后阶段涉及将阶段 2 中经过专家微调的权重集成到 MoE 层中 。随后,本文使用混合多模态指令数据联合微调 MLLM。训练过程的进展,如图 3 所示的损失曲线。结果表明,在涉及视频、音频、图像和文本等复杂混合模态数据的场景中,使用四个专家的模型比使用两个专家的模型表现损失更低,更稳定。与使用辅助平衡损失相比,Uni-MoE 表现出更好的收敛性 。

实验

本文对Uni-MoE模型进行了一系列实验评估,以验证其在处理各种模态数据下的有效性和优势。

Uni-MoE 设置

Uni-MoE的设计和优化遵循表2中列出的训练任务,这些任务有助于提升MLP层的能力。本文进行了八项单模态专家任务,以阐明不同训练方法的影响 。
![[Pasted image 20250506205915.png]]

数据集

训练数据集

为了使模型具备语音识别能力,本文在跨模态对齐训练阶段引入了Common Voice数据集 。该数据集包含时长少于30秒的短语音片段,累计超过170万个实例 。随后,本文从LLaVA-Instruct-150K构建了一个三模态数据集,利用文本到语音(TTS)技术将用户查询转换为音频格式 。此外,原始的LLaVA-Instruct-150K数据集也被用于各种训练任务,以促进比较分析 。为了提高模型理解长语音序列的能力,本文将LibriSpeech数据集中的音频文件与30秒的短语音连接起来,形成时长可达两分钟的长音频文件 。此外,本文还将RACE数据集 (一个包含中国英语考试阅读理解题的综合集合)从原始文本格式转换为长音频文件 。这些转换后的音频文件随后被输入到模型中,使其能够解释长语音输入并准确回答问题 。对于音频字幕生成任务,模型在跨模态对齐和单模态专家训练过程中使用了相同的数据集集合 。WavCaps数据集 (一个由ChatGPT辅助的弱标记音频字幕数据集,分为四个子集)部分用于本文的优化框架 。此外,AudioCaps数据集 (一个包含约46,000对音频片段及其对应人工生成文本描述的综合语料库)也在训练过程中被选择性地使用 。Clotho和ClothoAQA数据集 用于增强模型在音频问答任务中的熟练度 。此外,MELD (一个用于音频情感检测的数据集)被用于增加本文框架中音频相关任务的多样性 。在视频相关任务领域,作为增强模型视觉理解的关键组成部分,Video-ChatGPT中的Video-Instruct-Dataset (包含100,000对视频-文本指令)被用作训练语料库,以提升模型在涉及视频内容场景下的性能 。

评估数据集

本文的模型在一系列基准测试中进行了评估。
为了评估模型在短语音识别和图像理解方面的熟练度,本文采用了A-OKVQA 、OKVQA 和VQAv2 基准测试的修改版本,利用语音合成技术将问题转换为人类语音 。

为了设计长语音任务,本文利用了图像-文本推理数据集MMBench ,并使用TTS将上下文提示转换为长音频,称为MMBench-Audio,同时使用了RACE评估集的语音版本,命名为RACE-Audio,以严格评估模型 。

模型的熟练度还通过它们在中国高考英语听力部分的表现进行评估,以检查其在现实世界中的实际语音识别能力 。这个小型数据集包含150个与平均时长109秒的长音频片段相关的问题,以及50个与平均时长14秒的短音频片段相关的问题 。这些材料的格式与RACE-Audio评估数据集的格式一致 。

此外,环境音频理解能力通过使用Clotho V1/2和ClothoAQA的测试集进行评估 。在视频相关任务方面,Uni-MoE的性能通过ActivityNet-QA 和MSVD-QA 的基准测试进行衡量,这些基准测试有助于评估视频理解和交互能力 。

评估指标

对于包括A-OKVQA、OK-VQA和VQA2在内的视觉问答基准测试,本文采用精确匹配(EM)指标来评估模型的预测答案是否与标准答案完全一致 。对于MMBench、RACE和英语听力测试等多项选择格式,本文采用严格的准确率指标来评估所选答案的正确性 。在Clotho AQA的音频质量评估中,使用EM准确率指标来衡量响应的精确性 。对于评估Clotho中生成字幕的相关性和质量,本文采用CIDEr指标 。此外,对于ActivityNet和MSVD-QA等视频相关基准测试,本文采用了受Video-ChatGPT方法启发的综合准确性验证程序 。

实现细节

本文在所有阶段均采用AdamW优化器,结合余弦学习率调度器来训练模型 。
在跨模态对齐阶段,本文使用2个A100 GPU分别处理170万短语音数据和194K短音频字幕数据,全局批量大小为32,基础学习率为2e-5 。值得注意的是,在此阶段,仅训练音频/语音Q-former和投影层 。
随后,在相同的设备上使用不同的数据组合训练模型以处理特定任务,采用全局批量大小16,基础学习率4e-5 。在使用音频字幕数据对音频连接器进行微调时,本文将LORA学习率设置为4e-4,音频投影层的学习率设置为3e-5 。LORA秩设置为64,alpha设置为16,并且仅将其应用于调整LLM中的MLP 。
进入MoE训练阶段,本文使用单个、八个或十六个A800 GPU来训练模型 。在此阶段,本文将LoRA秩设置为8,alpha设置为16,并保持LoRA参数和投影层参数的学习率均为4e-5 。值得注意的是,本文实现了混合多模态数据的数据并行和专家并行,以及更大模型(拥有超过8个专家)的多节点和多GPU并行训练 。

总体性能

本文评估了不同模型变体在一系列多样化基准测试中的性能,涵盖五项语音相关任务、三项音频理解任务和两项具有挑战性的视频理解任务 。与两个基础统一多模态模型进行了比较:Macaw-LLM ,它代表了多模态语言建模的开创性工作,集成了图像、视频、音频和文本数据 ;以及X-InstructBLIP ,其在同时处理多种模态方面的简洁性和有效性值得关注 。

语音-图像和语音-文本理解

![[Pasted image 20250506210211.png]]

语音识别能力在表3中比较 。首先,观察到先前的基线模型在语音理解方面表现不佳,这会影响了它们在图像-语音推理方面的性能 。此外,引入基于文本-图像指令数据自动生成的音频-图像数据集提高了短语音和图像理解的整体性能,例如,使用Single-Modality-Expert-Task6训练的模型在A-OKVQA、OK-VQ和VQA2的音频-图像设置中显著优于使用Task5(未引入音频-图像训练数据)的模型 。使用Single-Modality-Expert和MoE任务训练的比较模型性能表明:1)引入MoE架构可以提高MLLM在未见过的音频-图像推理任务上的泛化能力,例如MoE-Task2相对于Single-Modality-Expert-Task5在A-OKVQA、OK-VQA、VQAv2和MMBench-Audio上的表现 ;2)与密集模型相比,Uni-MoE在具有挑战性的长语音理解和推理任务上取得了更好的性能,例如Uni-MoE在英语高中听力测试中显著优于其他模型变体 ;3)当指令微调数据混合了长语音和短语音时,与单专家模型相比,Uni-MoE的性能更稳定,例如表3中的Single-Modality-Expert-Task4与MoE-Task1的对比 。随着训练轮次的增加,它专注于提高具有挑战性的长语音理解任务的性能 。

音频-文本理解

![[Pasted image 20250506210309.png]]

在表4中,本文的模型在ClothoV1和ClothoAQA上显著超越了基线模型的最佳性能,分别提高了8.4%和10%,表明其在理解音频相关问题方面具有卓越的能力 。还观察到,与先前的基线模型和使用相同音频相关数据进行微调的单专家模型相比,Uni-MoE在音频字幕和问答任务上取得了改进,这充分揭示了利用MoE进行音频和文本协同推理的优势 。具体来说,MoE-Task3分别在ClothoV1和ClothoV2的微调阶段最佳结果上提升了2.7%和3.5% 。

图像-文本理解

![[Pasted image 20250506210812.png]]

在表5中展示了图像-文本理解的实验结果。本文模型的最佳结果优于所有基线模型,并且比微调任务平均提高了4个点,表明MoE层增强了图像和文本理解能力 。然而,一个值得注意的现象是,包含所有数据集的MoE-Task在图像理解方面的能力低于仅包含图像数据和不包含长语音数据的任务,即MoE-Task1-short和Task2 。本文推测,这种微小的性能下降归因于三种模态数据的混合,提升了对语音和视频的理解以及图像内容的理解 。然而,在存在长语音数据的情况下,本文的模型在选择音频、图像和文本模态的正确专家时感到困惑,这导致性能出现细微下降 。总的来说,本文的模型在保持文本-图像理解能力的同时,展现出与其它模态进行交互的强大能力,这使得混合专家方法在构建多模态模型方面具有优势 。

视频问答

![[Pasted image 20250506211137.png]]

表6展示了本文模型在零样本三模态视频问答任务上的性能 。为了加快训练和推理过程,本文使用从视频中随机提取的8帧的简单平均池化表示作为软视频标记,这通常会导致视觉信息丢失 。与更强大的视频-LLM(如Video-ChatGPT)相比,这可能会导致性能下降,Video-ChatGPT更侧重于视频的细粒度视觉表示及其时间编码 。本文还将通过音频或语音编码器和连接器获得的音频标记输入到LLM中 。实验结果表明,使用MoE-Task3训练的Uni-MoE在Activity-QA上的性能优于强大的视频基线,并且在MSVD-QA数据集上取得了与Video-ChatGPT相当的性能 。这些发现表明,利用MoE方法整合跨模态推理能力(其中专家专注于音频和图像等不同模态)可以有效提高视频理解的整体性能 。

实验分析

可视化分析

本文采用可视化路由分布和token路径的方法来检查不同专家的具体功能 。对于每个跨模态或三模态对,本文从相应数据集中随机选择 200 个样本绘制了图 4、图 5 和图 6。

Routing Distributions

![[Pasted image 20250506211334.png]]

图 4 展示了 MoE-Task3 在遇到不同模态数据的所有组合时的专家负载(最左侧图)和不同专家的模态偏好(右侧四个子图) 。当输入音频-文本对时,专家 2 和 4 几乎主导了所有token的工作负载,而专家 1 和 3 几乎没有负载 。在处理图像-文本对时也出现了类似的趋势,专家 2 扮演了相当重要的角色,并深入参与了图像信息的处理 。直到最后一层,专家 3 的工作才比其他专家更突出 。然而,当输入视频数据时,与其它情况相比,所有层的工作负载似乎变得平衡 。

本文还观察到不同的行为:1)专家 1 在token分布中参与较少,表明可能效率低下 。2)相反,专家 2 在初始层很重要,随着层数变深,分布占比变小 。3)然后,专家 4 开始越来越多地tokentoken,占比增加 。4)随着模型的进展,专家 3 也对token处理做出了贡献,说明了专家之间的协作任务划分 。这些行为表明,Uni-MoE 中的专家已经形成了特定的任务划分模式,专家 2 和 4 之间的划分尤为明显 。它们与各自在图像和音频处理中的预训练专业化相符 。

![[Pasted image 20250506211930.png]]

此外,图 5 展示了 Uni-MoE 模型中不同模态如何在专家之间分布,揭示了不同的偏好 。具体而言,在涉及音频上下文的场景中,文本token主要由专家 4 管理,但在存在图像上下文时会转向专家 2 。在输入视频和音频数据的情况下,在后层中,文本token更均匀地分布在专家之间,表明它们在跨模态推理中的作用 。对于音频和视觉token,存在明显的分布模式:专家 4 在初始层和最后层主要处理音频token,而专家 2 在中间层接管 。这种交替突显了它们在处理不同数据类型方面的专门功能 。此外,文本-图像和文本-音频-视频场景之间的分布变化揭示了图像和视频token的管理方式 。图像token主要由专家 2 处理,反映了其以图像为中心的专业化,而视频token分散在多个专家之间,强调了视频数据需要来自各种模态的集成处理的复杂性 。总而言之,专家在token处理上的这种区分突显了 Uni-MoE 模型强大的多模态交互和学习能力,验证了其在集成视频、语音、文本和图像等多样化数据类型方面的有效性 。

Token Pathways

![[Pasted image 20250506212253.png]]

如图 6 所示,本文检查了专家在token级别的行为 。对于所有激活的路径,本文采用 PCA 获取了前 10 条路径 。值得注意的是,此token路径图中的专家编号与之前路由分布图中的专家标签没有严格对应关系 。与路由分析的结果类似,token的路径显示了不同模态在不同 MoE 层的各种专家中的偏好,这再次有助于更好地理解多模态相关专家的进步以及 Uni-MoE 在多模态学习和推理中的行为 。总体而言,图 4、图 5 和图 6 从专家级别、模态级别和token级别展示了本文 Uni-MoE 模型的工作流程 。上述分析表明,Uni-MoE 学习到了一种特定的模式,使其能够以特定方式划分多模态任务 。

消融研究

Comparative Analysis of Uni-MoE and Dense Models

在之前的表 3-6 中 ,本文比较了密集模型(Single-Expert-Tasks)和 Uni-MoE(w/ MoE-Tasks)的性能 。实验结果表明:1)Uni-MoE 在几乎所有评估基准上都始终优于密集模型 。通过比较 Single-Expert-Modality-Task6 和 Uni-MoE w/ MoE-Task1 在语音-图像、长语音和图像-文本性能上的表现(它们使用相同类型的训练数据集),本文可以看到 Uni-MoE 在所有评估基准上都取得了更好的性能,尤其是在长语音理解任务上 。2)在不平衡的混合模态数据上训练后,Uni-MoE 表现出较少的性能偏差 。例如,与 Single-Modality-Expert-Task6 较大的性能下降相比,用 MoE-Task1 训练的 Uni-MoE 在短语音-图像(表 3 中)和文本-图像理解(表 5 中)任务上表现出较少的性能下降 。它还提高了包括 RACE-Audio 和 English High School Listening Test 在内的长语音理解基准的性能,其中长语音训练数据在训练数据中占很小的比例 。3)Uni-MoE 在经过相同类型的混合跨模态数据训练后,对于域外输入表现出比密集模型更好的泛化能力 。与 Single-Expert-Modality-Task7 相比 ,Task6 在训练期间引入了文本-图像指令和短语音-图像的混合数据 。为密集模型引入更多类型的多模态数据会降低长语音的性能,并且不会提高域外评估基准 MMBench-Audio 的性能 。然而,当引入更多数据类型时,Uni-MoE 不仅保持了长语音理解的性能,还在外推的三模态输入场景中提高了性能 。因此,这些发现表明 Uni-MoE 在复杂多模态数据上的组合泛化能力优于密集模型 。

Impact of the Value of Top-k

![[Pasted image 20250506212910.png]]

本文的消融研究,详情见表 7 (a) ,探讨了在总专家数量相同的情况下,改变激活专家数量 (Top-k) 的影响 。本文观察到,将激活专家数量从一个增加到两个可以提高模型性能,表明激活更多专家可以显著提高 Uni-MoE 的效率 。性能的提高也表明了本文模型中模态特定专家的协作能力 。这与图 4 底部 Uni-MoE 的可视化分析一致,其中 Uni-MoE 在每一层使用更多专家来处理视频内容 。因此,本文将激活专家的最佳数量设置为两个,以最大限度地提高各种跨模态基准(表 3-6 中)的性能 。

Scaling up the Number of Experts

本文研究了在保持激活专家数量不变的情况下专家数量的变化,详情见表 7 (b) 和 © 。结果表明,使用更多稀疏专家的 Uni-MoE 模型优于密集专家配置的性能,特别是在长语音-文本场景中 。这种增强归因于使用了两个经过专门训练的专家,即在 Single-Modality-Tasks 2 和 3 上训练的专家,如表 3 和 5 所示,这表明在视觉和语音任务上取得了显著进展 。路由分布分析进一步证实了这些经过单模态训练的专家在各自领域的关键作用 。对于 Uni-MoE,本文发现将专家数量扩展到四个可以在不同模态上实现更好的综合性能 。相反,如表 7 © 所示,使用更多来自先前配置的标准专家,而没有增加激活专家的数量,对整体性能的提升微乎其微 。这一观察结果强调了策略性专家选择和稀疏专家配置有效性的必要性 。

Analyzing the Architectures of Uni-MoE

在表 7 (d) 中 ,本文评估了 Uni-MoE 框架中四种 MoE 架构配置 。“First-Half”配置仅将 MoE 层应用于模型的初始部分,在后半部分保持传统的密集结构 。“Second-Half”配置则在后半部分包含 MoE 层,同时在初始部分保留密集结构 。“Interval”配置在整个模型中交替使用 MoE 层和密集层 。最后,“All”配置将所有层转换为稀疏 MoE 层 。本文观察到,完全转换为 MoE (“All”) 并没有带来卓越的性能,并且与其它配置相比,训练时间更长 。值得注意的是,“Interval”布局在所有任务中表现出最高的平均效率,被证明是测试过的架构中最有效的 。此外,将 MoE 层放置在模型的后半部分显著增强了模型理解长语音片段的能力,比第二优的配置分别高出 5% 和 6% 。上述分析表明,本文仍然需要探索更鲁棒和高效的 MoE 架构来构建更大的 MLLMs 。

Effectiveness of Training Strategy

![[Pasted image 20250506213225.png]]

本文通过表 8 中的三种不同模型变体来检验不同训练策略对模型性能的影响 。模型变体 (a) 与变体 (b)、© 和 (d) 之间的比较分析首先表明,模型 (a) 中采用的三阶段训练方法在多模态基准范围内取得了显著的改进 。这强调了引入跨模态数据专门训练阶段的好处,肯定了让训练专家参与这一过程的战略优势 。进一步分析表明,用相同配置训练 MoE(见表 8 中的纯模型)与单专家方法相比,性能提升可以忽略不计,模型 (b)、©、(d)、(e) 和 (f) 就证明了这一点 。有趣的是,随着专家来源数量的增加,模型的性能可能会发生变化,这取决于从 LLaMA 或 LLaVA 添加相同专家的不稳定性能 。在多模态数据上训练的专家在协同工作时表现更好 。然而,引入辅助平衡损失是缓解这些不一致性并稳定性能的潜在解决方案 。此外,图 8 和图 10(在附录中提供)中的可视化图示突显了模型 (b) 中专家之间的高度同质性,这表明需要提高任务分配多样性和专家差异性 。总而言之,启动单模态训练被证明对于模型从密集结构向稀疏结构的转变是有益的,正如本文的方法所示 。这种策略增强了初始模型效率,促进了在后续训练阶段更有效和快速的适应,从而验证了本文训练策略的有效性 。

Analysis of Balancing auxiliary Loss

![[Pasted image 20250506213310.png]]

Gshard 中引入的经典平衡损失 鼓励所有专家获得同等的重要性 。这种损失确保所有专家接收大致相同数量的训练样本 。在本文中,本文还探讨了辅助平衡损失对模型性能的影响 。正如表 8 和表 9 中的实验结果所示 ,本文的发现表明:1)当应用于具有相同(纯)专家的模型时,采用辅助损失始终能增强专家之间的协同作用和模型在各种模态上的整体性能 。2)在本文的 Uni-MoE 模型中,随着专家数量扩展到八个,辅助损失显示出其促进专家协作的有效性 。这种改进主要归因于专家数量增加带来的路由搜索空间的扩展 。在此阶段引入辅助损失有助于优化专家组合的选择,从而充分激活专家的能力 。

Comparisons of Uni-MoE and Dense Large Visual-Language Models (LVLMs)

表 9 中呈现的结果 表明,较大的 LVLMs,LLaVA-v1.5-13B 和 LLaMA-VID-13B,在图像-文本基准上的表现优于 Uni-MoE 。这种优越的性能可归因于两个主要因素。首先,这些模型在训练期间专注于视觉和语言数据,并且它们在推理期间激活了比 Uni-MoE(11B)更多的参数(13B),从而增强了它们在图像-文本任务中的有效性 。其次,LLaMA-VID 受益于预训练视频到语言连接时使用的 703K 个视频数据点,Uni-MoE 未使用该数据集,这使其在 ActivityNet-QA 等评估中具有优势 。此外,对于 LLaMA-VID,采样帧的数量大于 Uni-MoE 。尽管存在这些差异,当结合相同的图像-文本指令数据时,Uni-MoE 在图像-文本理解方面仍然优于同等大小的 MLLMs 。此外,它在其他模态能力方面也超越了 X-InstructBLIP 和 Macaw-LLM 等知名统一多模态模型 。有趣的是,对于 Uni-MoE,增加图像-文本数据可以提高其在视频理解方面的性能,这启发本文通过引入额外的图像-文本数据来进一步提高视频-LLMs 的性能 。

案例研究

![[Pasted image 20250506213414.png]]

在图 7 中描绘的分析中 ,本文展示了 Uni-MoE 在不同模态上(使用 MoE-Task3 训练)的性能 。可以看出,Uni-MoE 可以理解任何跨模态输入,并能识别训练数据之外的人类产生的真实长语音和视频中的语音内容,如图 7 底部示例所示 。结合之前的定量评估结果和生成的案例,本文得出结论,Uni-MoE 在处理各种模态方面表现出强大的能力,尽管只使用了少量但多样化的混合多模态数据进行训练 。有趣的是,用 MoE-Task3 训练的 Uni-MoE 可以理解来自视频的音频内容,而指令调优数据几乎不包含相关数据 。这表明了利用 MoE 处理各种模态的鲁棒性和泛化能力,优于之前的密集基线模型,如 X-InstructBLIP,尽管它在多种模态数据上进行了训练,但在语音-图像或视频理解任务上的性能却较差 。

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐