微软具身智能感知交互多面手!Magma:基于基础模型的多模态AI智能体

ops/2025/3/4 5:59:15/

  • 作者: Jianwei Yang, Reuben Tan, Qianhui Wu, Ruijie Zheng, Baolin Peng, Yongyuan Liang, Yu Gu, MuCai, SeonghyeonYe, JoelJang, Yuquan Deng, Lars Liden, Jianfeng Gao

  • 单位:微软研究院,马里兰大学,威斯康星大学麦迪逊分校,KAIST,华盛顿大学

  • 论文标题:Magma: A Foundation Model for Multimodal AI Agents

  • 论文链接:https://www.arxiv.org/pdf/2502.13130

  • 项目主页:https://microsoft.github.io/Magma/

  • 代码链接:https://github.com/microsoft/Magma

主要贡献

图片

  • Magma不仅具备多模态理解能力,还具备在数字和物理环境中进行智能体任务所需的时空推理能力的模型,能够处理来自不同领域(包括数字和物理)的多模态输入。

  • 提出Set-of-Mark(SoM)和Trace-of-Mark(ToM)来显著增强模型的时空智能,以便进行动作对齐和规划,使得Magma能够在大量异构数据集上进行有效预训练。

  • 创建了大规模的预训练数据集,包含来自开源视觉语言数据集、UI数据、机器人数据和人类教学视频的多样化样本,为模型的广泛任务适应提供了基础。

  • 通过广泛的实验验证,Magma在多个任务上表现出色,特别是在UI导航和机器人操作任务上达到了SOTA。

研究背景

研究问题

近年来,基于视觉-语言-动作(VLA)模型的AI智能体引起了广泛关注,但这些模型通常针对特定任务进行训练,导致在不同环境和任务之间的泛化能力有限。

本文的任务是开发能够感知视觉刺激、语言输入和其他环境数据的自主智能体,并在物理和数字环境中产生有意义的具身动作以完成特定任务。

研究难点

该问题的研究难点包括:

  • 不同环境(如2D数字世界和3D物理世界)之间的固有差异;

  • 如何有效地将视觉语言理解能力(言语智能)与视觉空间世界中的规划和行动能力(时空智能)结合起来。

相关工作

  • 大模型(LMMs)

    • 论文介绍了LLMs和结合视觉数据的模型,如GPT-4V(ision)和LLaVA等。

    • 这些模型通过结合视觉数据和语言模型的能力,在多模态任务上取得了显著进展。

    • 近年来,研究人员开发了多种LMMs来处理更广泛的任务和模态。

  • 数字世界中的UI智能体

    • 讨论了设计自主GUI智能体以代替人类用户执行任务的研究。这方面的工作包括训练端到端模型直接预测下一个动作,以及利用现有的多模态模型(如GPT-4V)来执行用户任务。

    • 这些方法通常依赖于DOM信息或视图层次结构来获取屏幕上可交互元素的精确位置。

  • 机器人领域的视觉-语言-动作(VLA)

    • 探讨了几项研究,这些研究调查了LMMs在机器人中的应用。这些研究包括在机器人轨迹数据上微调LMMs,以输出离散的机器人动作token。

    • RT-2、OpenVLA、LLARVA和TraceVLA等工作展示了如何通过视觉轨迹预测和视觉轨迹提示来提高机器人的时空感知能力。

图片

多模态智能体建模

问题定义

定义了一个通用的多模态AI智能体的问题框架,能够处理过去视觉观察和文本任务描述,并输出一组token作为其响应。多模态AI智能体的定义如下:

其中:

  • 是过去的一系列视觉观察(例如图像序列)。

  • 是一个文本描述的任务。

  • 表示上下文信息。

  • 表示第 个token 是语言token还是空间token。

该框架适用于不同的任务,具体如下:

  • UI导航:在2D屏幕截图中,任务可能是“预订酒店”,输出应包括表示动作语义类型的token(例如“type”、“click”等)以及动作应用的位置( 或 )。

  • 机器人操作:在3D世界中,任务可能是“关闭抽屉”,输出包括末端执行器的6-DoF位移(),在某些情况下还包括一个额外的维度来指示夹持器是否打开。

  • 多模态理解任务:当任务仅涉及时(例如VQA任务),问题被简化为生成输入图像/视频的文本描述和/或对象位置的多模态理解任务。

输出表示

  • 为了便于模型学习,论文将所有输出转换为文本token。具体来说,他们将2D动作转换为文本字典,并使用LLMs中很少使用的最后256个离散语言token来表示机器人动作。

  • 尽管如此,不同任务之间仍存在显著的冲突,并在实验中展示了如何缓解这些挑战以在广泛的训练数据上训练智能体。

方法

该部分讨论了构建多模态AI智能体基础模型的两个关键挑战:预训练目标(Pretraining objectives)和数据扩展(Data scaling-up)。

  • 预训练目标(Pretraining Objectives)

    • 论文面临如何创建统一的预训练接口以促进联合训练的挑战。直接预测UI导航的2D坐标和机器人任务的3D位置存在领域差距。

    • 为了解决这个问题,提出使用Set-of-Mark(SoM)提示。SoM用于在图像上实现动作对齐,简化了任务并帮助模型预测可操作点的数值token。

  • 数据扩展(Data Scaling-up)

    • 现有的视觉-语言-动作数据集数量有限且缺乏多样性。

    • 论文提出使用Trace-of-Mark(ToM)来扩展数据集。ToM通过在视频中预测未来轨迹来增强模型的能力,帮助模型理解时间动态并从原始视频中获取动作监督。

通过结合SoM和ToM,能够在不同类型的任务之间实现无缝协同,并有效地扩展数据集。

Set-of-Mark (SoM)

SoM 是一种提示策略,用于增强模型在图像上的动作对齐能力。

  • 输入处理:给定一个图像观察值 和任务描述 ,模型首先提取一组候选区域或点 ,这些区域或点是可操作的(例如,可点击的按钮或机器人手臂的位置)。

  • token叠加:在图像上叠加token和框(如果有的话),并用数值标签token这些位置,形成一个新的token图像 。

  • 输出生成:模型需要选择候选token并给出原始坐标,以便于动作对齐。公式表示为: 其中, 是 的子集。

  • 应用场景:SoM适用于UI截图、机器人操作和人类视频等多种场景。通过使用不同的网络(如图像分割模型、目标检测模型)来获取候选区域,模型可以有效地进行动作对齐。

Trace-of-Mark (ToM)

ToM 是一种从视频中学习动作规划的方法,通过预测未来的动作轨迹来增强模型的时间动态理解能力。具体方法如下:

  • 输入处理:给定一个视频序列的视觉观察值 ,模型沿时间轴扩展到未来 帧,形成未来帧序列 。

  • 轨迹提取:在当前帧 的 个token中,提取未来 帧中对应位置的轨迹 。

  • 输出生成:模型不仅需要预测动作类型和有效token,还需要预测有效token的未来轨迹: 其中, 是 的轨迹序列的子集。

  • 应用场景:ToM通过预测未来的动作轨迹,帮助模型在视频数据中学习动作规划。这种方法不仅减少了token的数量,还能捕捉更长的时间动态和动作相关的对象动态。

智能体模型

  • 为了保留Magma所需的多模态理解能力,视觉观察通过视觉编码器编码后,与语言token一起输入到一个解码器中。

  • 视觉编码器采用ConvNeXt,支持任意图像分辨率的编码。

  • 最终的智能体建模被描述为一个自回归解码过程,模型根据视觉输入和语言任务描述生成输出token。

多模态智能体预训练

数据集

为了开发一个具有语言和空间智能的基础模型,能够处理多种智能体任务,论文从广泛的图像、视频和机器人领域中收集了一个综合的预训练数据集。

机器人操作数据
  • 来源:遵循OpenVLA的研究方法,使用Open-X-Embodiment的数据集。

  • 内容:包含用于机器人任务的9.4百万个图像-语言-动作三元组,这些三元组是从326K条轨迹中提取的。

UI导航数据
  • 来源:利用两个预训练数据集,SeeClick和Vision2UI。

  • 内容:包括用于UI导航的屏幕截图和相关标注。

指导性视频
  • 来源:编辑ic-Kitchen、Ego4d、Something-Something v2和其他相关指导性视频,这些视频提供丰富的粗粒度目标驱动的人类动作。

  • 内容:包含大量的人类日常活动视频片段,用于学习智能体模型的执行能力。

多模态理解数据
  • 来源:包括ShareGPT4V的1.2百万个合成图像-文本对,以及LLaVA-1.5的665K图像指令调整数据。

  • 内容:用于保留基础模型的通用多模态理解能力。

SoM和ToM生成

SoM用于UI导航
  • 应用:应用于所有UI数据以学习统一的动作定位。

  • 生成:基于DOM树和Android视图层次结构提取边界框,并在图像上绘制token。

SoM和ToM用于视频和机器人数据
  • 应用:使用token和轨迹作为替代动作监督来预训练Magma模型,用于动作定位和规划。

  • 生成:使用点跟踪模型CoTracker从视频段中提取未来轨迹,并应用同源变换去除全局运动。

预训练

通过上述数据集和标注,创建了一个全面的预训练套件,涵盖了不同的数字和物理环境、语言和空间标注以及各种多模态理解和智能体任务。

数据集规模
  • UI导航:约2.7百万个UI导航屏幕截图。

  • 机器人操作:970K条轨迹,包含9.4百万个图像-语言-动作三元组。

  • 视频:超过25百万个样本,来自约4百万个一致的短视频片段。

  • 多模态理解:1.2百万个图像和文本对。

预训练架构
  • 默认设置:使用LLaMA-3-8B作为语言骨干网络,ConvNext-XXlarge作为视觉骨干网络。

  • 训练:使用Magma-SFT(820K)进行最多三轮预训练,学习率为1e-5。

实验

zero-shot评估

zero-shot评估旨在验证Magma模型在不经过特定任务微调的情况下,能否在多种智能体任务上表现出色。研究者们在不同的基准测试上评估了Magma的zero-shot迁移能力。

UI导航
  • 数据集:使用ScreenSpot和VisualWebBench评估UI动作定位和导航。
    • ScreenSpot:用于评估UI动作定位,包含iOS、Android、macOS、Windows和网页的屏幕截图。

    • VisualWebBench:用于评估网页UI的理解和导航。

  • 结果:Magma在UI导航任务上显著优于其他通用领域的多模态模型和特定领域的智能体模型。特别是,Magma在屏幕截图上的表现比使用GPT-4V和OmniParser的方法更好。

机器人操作
  • 数据集:使用SimplerEnv评估机器人操作。
    • SimplerEnv:包含多个机器人操作任务,用于评估机器人在模拟环境中的操作能力。

  • 结果:Magma在机器人操作任务上表现出色,成功率显著高于其他模型,尤其是在复杂任务中。

多模态理解
  • 数据集:在VQA任务上评估模型的通用性和文本丰富性。
    • VQAv2:用于评估视觉问答任务。

    • POPE:用于评估对象幻觉任务。

  • 结果:Magma在多模态理解任务上也表现出色,优于其他模型。

高效微调

高效微调部分展示了通过适度微调,预训练的Magma模型如何轻松转移到各种下游智能体任务。

UI导航
  • 数据集:在Mind2Web和AITW上微调,评估网页和移动UI导航能力。
    • Mind2Web:用于评估文本驱动的网页UI导航。

    • AITW:用于评估Android UI导航。

  • 结果:Magma在UI导航任务上优于开源或商业模型,显示出其在实际应用中的强大能力。

机器人操作
  • 数据集:在真实机器人数据和模拟环境中微调,评估任务适应能力和泛化能力。
    • 真实机器人:在WidowX机器人上评估复杂的多任务操作。

    • 模拟环境:在LIBERO基准测试上评估任务适应能力。

  • 结果:Magma在真实机器人操作任务中表现出色,能够处理复杂的日常对象操作任务,并且在未见过的任务上也能保持良好的泛化能力。

空间推理能力

论文认为,Magma模型在UI导航和机器人操作任务上表现出的改进性能,主要是由于其空间推理能力的提高。

为了验证这一点,论文在几个具有挑战性的空间推理基准测试上评估了Magma模型的效果。

基准测试

使用了几个基准测试来评估Magma模型的空间推理能力:

  • VSR:是评估模型在视觉场景中进行空间推理的能力的基准测试。在zero-shot设置下评估了Magma模型,并与其他方法进行了比较。

  • BLINK:是多模态语言模型基准测试,专注于评估模型在视觉-语言任务中的感知能力。论文展示了Magma模型在没有特定指令微调的情况下,在BLINK数据集上的表现。

  • SpatialEval:是综合性的空间推理基准测试,涵盖了多种空间推理任务。论文在zero-shot设置下评估了Magma模型,并与其他方法进行了比较。

结果分析

  • Magma的表现

    • 在VSR和SpatialEval基准测试上,Magma模型显著优于现有的方法,显示出其在空间推理任务上的强大能力。

    • 尽管Magma模型在预训练时只使用了大约2900万张图像,但在这些基准测试上的表现与使用1.5亿张图像进行预训练的CogVLM相当。

  • 消融研究

    • 论文还进行了消融研究,以验证SoM和ToM预训练任务对提高Magma模型空间推理能力的效果。

    • 结果表明,使用SoM和ToM进行预训练显著提高了Magma模型在空间推理任务上的表现。

    • 此外,论文还发现,去除训练数据中的视频会导致BLINK任务上的性能下降约8%,这进一步证明了视频数据在预训练中的重要性。

结论
  • 通过这些评估,证明Magma模型在空间推理任务上的优异表现主要归功于其在预训练过程中通过SoM和ToM任务获得的空间推理能力的提升。

  • 这些结果表明,Magma模型不仅在多模态理解任务上表现出色,而且在需要复杂空间推理的任务上也具有强大的能力。

接下来主要关注评估Magma模型在多模态理解任务上的表现,通过一系列基准测试来验证Magma在处理多模态输入(如图像和视频)时的能力。

图像理解任务

论文通过连续微调的方式,评估Magma在图像理解任务上的表现,并将其与其他现有的多模态模型进行比较。

数据集
  • MME(Multimodal Multiple Choice):用于评估模型在多模态选择题任务上的表现。

  • GQA(Generic Question Answering):用于评估模型在通用视觉问答任务上的表现。

  • ChartQA:用于评估模型在图表理解任务上的表现。

结果
  • MME和GQA:Magma在大多数任务上优于最近提出的多模态模型,显示出其在多模态理解任务上的优势。

  • ChartQA:Magma在图表理解任务上取得了显著的提升,特别是在需要复杂逻辑推理的任务上。

预训练任务的影响
  • SoM和ToM的贡献:研究者的消融实验表明,使用SoM和ToM进行预训练任务有助于提高Magma在多模态理解任务上的表现,特别是在图表理解任务上。

视频理解任务

在多个视频理解任务上评估了Magma的表现,以验证其在处理动态多模态输入时的能力。

数据集
  • IntentQA:用于评估模型在视频意图识别任务上的表现。

  • NextQA:用于评估模型在视频上下文理解任务上的表现。

  • VideoMME:用于评估模型在视频多模态任务上的表现。

  • MVBench:用于评估模型在多模态视频理解任务上的表现。

结果
  • 视频任务:Magma在大多数视频任务上优于现有的最先进模型,显示出其在处理视频数据时的竞争力。

  • 视频任务的优势:Magma在视频任务上的表现优于LongVA等模型,尽管其使用的视频和文本数据量较小。

预训练任务的影响
  • ToM的贡献:研究者的实验表明,ToM预训练任务有助于提高Magma在视频任务上的表现,特别是在动作预测和序列生成任务上。

讨论

该部分讨论了Magma模型的社会影响、局限性以及负责任的人工智能(Responsible AI)方面的考虑。

社会影响和局限性

为了开发一个具有语言和空间智能的多模态基础模型,能够处理数字和物理环境中的多样化任务,论文从广泛的图像、视频和机器人领域中整理了一个综合的预训练数据集。具体来说:

  • UI导航数据:使用了两个预训练数据集SeeClick和Vision2UI。

  • 教学视频:为了学习能够执行日常任务的智能体模型,论文编译了来自Epic Kitchen、Ego4d、Something-Something v2和其他教学视频的数据。

  • 机器人操作数据:遵循OpenVLA的方法,利用Open-X-Embodiment中的机器人数据。

  • 多模态理解数据:包括少量的多模态预训练数据ShareGPT4V,以及LLaVA-1.5和其他特定领域的指令调整数据,以保留预训练模型的通用多模态理解能力。

尽管如此,教学视频中的人物身份和活动分布并不代表全球人类人口和社会的多样性。意识到使用这些数据进行训练可能会引入无意的性别、种族和其他偏见。因此,论文将在发布模型时确保有必要的免责声明,并强调模型的使用场景和预期用途。

负责任的AI

  • 论文强调,模型专门设计用于在受控的Web UI和Android模拟器中进行UI导航,以及在机器人操作任务中使用。

  • 建议的使用场景应限于被训练的环境,即配备有机器人臂和日常物品的封闭环境,以及运行在计算机上的Android模拟器进行UI操作。

  • 对于UI导航任务,研究人员应确保人类始终在控制中,对智能体系统生成的每个动作进行监督。由于模型本身不能自行行动,研究人员使用的子模块在执行UI导航动作时应确保不会因执行模型提出的UI动作而导致意外后果。

  • 论文还提到,尽管模型在UI导航和机器人操作方面表现出色,但作为产品不可用于剥削性场景。恐怖威胁者可能将模型作为自动化UI导航的基础,利用特定的训练数据来针对特定恶意任务进行训练。这是与智能体模型相关的通用风险。

总结

  • 论文提出了Magma,第一个能够在数字和物理世界中理解和执行多模态输入的基础模型。

  • 通过引入SoM和ToM技术,Magma显著增强了时空智能,并在多个任务上取得了新的SOTA结果。

  • 该模型的训练数据集广泛且多样,涵盖了图像、视频和机器人领域的多种数据类型,确保了模型的泛化能力。

  • 总体而言,Magma为多模态AI智能体的发展提供了一个强大的基础模型。


http://www.ppmy.cn/ops/162968.html

相关文章

第十三届蓝桥杯大赛软件赛决赛C/C++ 大学 B 组

A 【2022——暴力DP / 优雅背包】-CSDN博客 B 【钟表——类日期问题】-CSDN博客 C 【卡牌——二分】-CSDN博客 D 【最大数字——DFS】-CSDN博客 E 【出差——Dijkstra】-CSDN博客 F 【费用报销——01背包】-CSDN博客 G 【故障——条件概率】-CSDN博客 H 【机房—…

Oracle数据库的启动与关闭

一、启动数据库的语法 结论放前头: startup nomount/mount/open/force/restrict pfilefilename 参数释义: nomount/mount/open/force/restrict是5种启动方式 pfilefilename是指定初始化参数文件,通常是不需要的。 1.startup nomount pf…

求职之路:如何打造一份出色的简历

去年的裁员潮中,我也不幸成为了一名“光荣”的被裁者(笑)。在家休息了两三个月后,我决定重新出发,寻找新的职业机会。在这段时间里,我深入研究了如何撰写一份出色的简历,并希望将我的学习心得分…

深入探索 STM32 微控制器:从基础到实践

一、引言 在当今的嵌入式系统领域,STM32 系列微控制器凭借其高性能、低功耗、丰富的外设以及广泛的应用场景,成为了众多开发者的首选。无论是在工业控制、智能家居、医疗设备,还是在消费电子等领域,STM32 都展现出了强大的生命力…

C++小课堂——引用和指针的区别

在C中,引用(reference)和指针(pointer)都是用于处理内存地址的概念,但它们有几个关键的区别。 前提概念:对象——可以存储数据并具有类型的内存空间。 1. 初始化和赋值:引用在声明时…

C# Lambda表达式

概述 名称的由来 来自微积分数学中的 λ,其涵义是声明为了表达一个函数具体需要什么。 说明 1、使用 Lambda 表达式来创建匿名函数,可以高效简化代码。 2、若要创建 Lambda 表达式,需要在 Lambda 运算符左侧指定输入参数(如果…

DeepSeek如何快速开发PDF转Word软件

一、引言 如今,在线工具的普及让PDF转Word成为了一个常见需求,常见的PDF转Word工具有收费的WPS,免费的有PDFGear,以及在线工具SmallPDF、iLovePDF、24PDF等。然而,大多数免费在线转换工具存在严重隐私风险——文件需上…

计算机视觉(opencv-python)入门之图像的读取,显示,与保存

在计算机视觉领域,Python的cv2库是一个不可或缺的工具,它提供了丰富的图像处理功能。作为OpenCV的Python接口,cv2使得图像处理的实现变得简单而高效。 示例图片 目录 opencv获取方式 图像基本知识 颜色空间 RGB HSV 图像格式 BMP格式 …