RoDE:食品的多模态专家混合模型

24年7月来自复旦大学和新加坡管理学院的论文“RoDE: Linear Rectified Mixture of Diverse Experts for Food Large Multi-Modal Models”。

大型多模态模型 (LMM) 显著推动各种视觉语言任务的发展。高质量训练数据的可扩展性和可用性对 LMM 的成功起着关键作用。在食品域,虽然诸如 Recipe1M 之类的综合食品数据集提供了丰富的成分和食谱信息,但它们往往无法提供足够的数据进行营养分析。Recipe1M+ 数据集虽然提供了一个用于营养评估的子集,但在营养信息的规模和准确性方面受到限制。为了弥补这一差距,Uni-Food,一个统一的食品数据集,包含超过 100,000 张带有各种食品标签的图像,包括类别、成分、食谱和成分级营养信息。为了缓解 LMM 微调期间由多任务监督引起的冲突,引入一种多样线性校正的专家混合 (RoDE) 方法。 RoDE 利用各种专家来解决不同复杂程度的任务,从而促进可训练参数的协调,即为更复杂的任务分配更多参数,反之,为更简单的任务分配更少的参数。RoDE 实现线性校正联合来改进路由器的功能,从而提高稀疏任务分配的效率。这样的 RoDE 确保 GPU 内存效率,而且易于优化。

该工作构建一个 Uni-Food 的大型数据集。与其他公开的食物数据集(Bossard,Guillaumin & Van Gool 2014;Marin 2019;Chen & Ngo 2016a;Thames 2021)不同,Uni-Food 包含与食物相关的任务中使用的各种属性,包括每个食物图像的食物类别、成分、食谱和营养。这是在一个数据集中提供所有属性的大数据集。如表总结了现有主要数据集和 Uni-Food 数据集的任务和样本大小。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q8keI4DG-1721923877271)(https://i-blog.csdnimg.cn/direct/12a8014b3ee34c84bc161f7e37e4affe.png)]

其目标是构建一个统一、全面的数据集,其中包含与食物相关的丰富信息,包括每张图片的以下关键属性。类别:将每种食物归类到特定的类别中,以方便在数据集内进行组织和分类。配料信息:提供每道菜所用配料的详细分类,包括其名称和数量。烹饪说明:提供每道菜的烹饪分步说明,确保清晰完整,便于复制。营养信息:包含每道菜的详细营养数据,如常量营养素含量(如碳水化合物、蛋白质、脂肪)、微量营养素和总卡路里。如图直观地展示了这些属性。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EFVRFeVJ-1721923877272)(https://i-blog.csdnimg.cn/direct/29a8ab2b8d434b0f924983729e5fb633.png)]
下图直观地展示了各个类别的分布情况:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EarmYp8k-1721923877274)(https://i-blog.csdnimg.cn/direct/c17192b0a22e4ede9d5451a3a180bf01.png)]

RoDE 框架融合了各种专家,每个专家都有不同的能力,以及一个线性校正路由器来整合这些专家的贡献。该框架的整体结构如图所示:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9NZ6HCzE-1721923877275)(https://i-blog.csdnimg.cn/direct/aa9121a3f88a4470a5daa0046a3f76d9.png)]

为了缓解 GPU 内存限制的问题,本文将专家概念化为细粒度的技能模块。关键思想是,一项任务可以激活这些模块的组合,并且这些模块可以在各种任务之间共享。这种模块化设计直观地引导开发具有不同能力的 LoRA 专家,以适应不同复杂程度的任务。从低秩自适应(Hu,2021)中汲取灵感,这表明低秩适配器可能足以完成某些任务,故该工作创建具有不同秩的 LoRA。由此产生的技能空间包括高秩和低秩 LoRA 专家,在解决各种任务时提供了更大的灵活性和效率。

如图显示RoDE 注重与食品相关的 VQA 任务。RoDE 主要针对食品相关的多任务学习,即食品分类、成分识别和营养估计。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JrVdYArz-1721923877275)(https://i-blog.csdnimg.cn/direct/aebd310e14a749afb6292aa5eed8b708.png)]

路由器根据特定任务的需求整合每个专家的贡献。先前的研究(Zhou,2022)表明,在大语言模型的背景下,使用稀疏混合的 LoRA 专家比使用密集专家表现更好。LLaVA-MoLE(Chen、Jie & Ma,2024)提出了一种 top-1 选择策略,确保了 LMM 中专家选择的稀疏性。虽然自然语言处理 (NLP) 领域的一些方法采用“软”方法来组合专家输出——例如,(Dou,2023)利用 softmax 和(Ponti,2023 年)采用 Gumbel softmax——但这些技术并不那么稀疏,并且优化起来可能具有挑战性。相比之下,本文采用校正线性单元 (ReLU) (Nair & Hinton 2010) 来校正路由器的输出,从而鼓励 LoRA 专家激活的稀疏学习。如图显示路由策略的直观说明。利用ReLU的固有属性,该方法受益于简化的优化环境并促进网络内的稀疏性,这使模型能够提高效率和效力。

在这里插入图片描述

这种线性校正机制增强了技能选择的稀疏性,有助于在广泛的任务范围内有效利用专业知识。总体而言,多样化的 LoRA 专家和线性校正排列产生了细粒度的任务技能排列空间,有助于优化模型内资源的分配和利用。

按照以前基于 LMM 的方法(Liu et al. 2023a),输入图像被转换为​​图像tokens并与文本tokens连接以发送到 LLM。训练过程遵循自回归模型,根据输入tokens预测下一个token。采用标准交叉熵损失作为优化目标来训练模型。在推理过程中,对于每个任务,将图像连同相应的问题一起输入模型。然后将模型的输出tokens转换为单词以形成答案。

该方法首先利用 LLaVA-Lightning-7B-v1-1 (Liu et al. 2023a) 模型的预训练权重,随后将 SFT 应用于 Uni-Food 和 Nutrition5k 数据集 (Thames et al. 2021)。在 RoDE 模型中,采用 LoRA 秩为 [2, 4, 8, 16] 的异构专家阵列。主要基线是 FoodLMM (Yin et al. 2023),唯一专门用于食品相关任务的多功能 LMM。此外,将其与 FoodLMM+MoE 进行比较,它用混合专家 (MoE) 模块替代普通的 LoRA 模块。每个 MoE 模块由四个秩为 8 的 LoRA 组成。MoE 模块的路由机制是一个线性层,后跟一个 softmax 操作。重要的是,为了简单起见,省略 FoodLMM 专门用于营养估计的专用token标签和附加头,而是直接将 LMM 的输出tokens转换为文本以生成营养预测。为了标准化成分词汇,采用与 InverseCooking(Salvador,2019)中用于成分的相同聚类协议。

在本研究中,用 LLaVA-7B(Liu,2023a)作为基础 LMM,其中 CLIP ViT-L 模型用作视觉编码器,Llama 7B(Touvron,2023)用作语言模型。对于 CLIP ViT-L 编码器,输入图像分辨率设置为 336x336,然后将其分成 14 个块。随后,使用两层 MLP 将这些图像块转换为 576 个tokens。为了提高效率,在Q和K投影层中添加了 LoRA 模块。除非特别说明,否则 LoRA 的秩设置为 8。超参数 α 设置为 16,LoRA dropout 率设置为 0.05。

在所有实验的训练过程中,视觉编码器和 Llama 的权重保持不变,只有添加的 LoRA 模块可训练。用 AdamW 优化器(Loshchilov & Hutter 2017)并使用 Warmup DecayLR 学习率调度程序。初始学习率设置为 0.0003,权重衰减设置为 0,并执行 100 次预热迭代。在训练阶段,用的批处理大小为 4,每 10 个批处理计算一次梯度更新。训练过程分布在 4 个 RTX4090 GPU 上。训练的 epoch 设置为 1。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值