返回顶部
热门问答 更多热门问答
技术文章 更多技术文章

Ferret系列之Ferret-UI:用多模态大模型给手机UI理解插上翅膀

[复制链接]
链载Ai 显示全部楼层 发表于 2 小时前 |阅读模式 打印 上一主题 下一主题

ingFang SC", Cambria, Cochin, Georgia, Times, "Times New Roman", serif;letter-spacing: 2px;text-align: left;background-color: rgb(255, 255, 255);margin-bottom: 16px;line-height: 1.75em;">导读

ingFang SC", miui, "Hiragino Sans GB", "Microsoft Yahei", sans-serif;font-size: 14px;letter-spacing: 0.5px;text-align: start;background-color: rgb(255, 255, 255);white-space-collapse: preserve !important;word-break: break-word !important;">Ferret-UI 是一个针对手机用户界面(UI)的多模态大模型,它旨在解决以下问题:

    ingFang SC", miui, "Hiragino Sans GB", "Microsoft Yahei", sans-serif;font-size: 14px;letter-spacing: 0.5px;text-align: start;text-wrap: wrap;background-color: rgb(255, 255, 255);" class="list-paddingleft-1">
  1. UI屏幕理解与交互的自动化:手机UI屏幕包含多种元素,如图标和文本,需要模型能够理解并与之交互以实现用户目标。

  2. 现有方法的局限性:现有的MLLM主要针对自然图像,直接应用于UI屏幕可能会受到限制,因为UI屏幕具有不同的纵横比和更小的兴趣对象。

ingFang SC", miui, "Hiragino Sans GB", "Microsoft Yahei", sans-serif;font-size: 14px;letter-spacing: 0.5px;text-align: start;background-color: rgb(255, 255, 255);white-space-collapse: preserve !important;word-break: break-word !important;">Ferret-UI 提出的贡献包括:

    ingFang SC", miui, "Hiragino Sans GB", "Microsoft Yahei", sans-serif;font-size: 14px;letter-spacing: 0.5px;text-align: start;text-wrap: wrap;background-color: rgb(255, 255, 255);" class="list-paddingleft-1">
  1. 模型架构改进:基于Ferret模型,集成了“任何分辨率”(anyres)功能,以适应不同纵横比的UI屏幕,并通过预定义的网格配置来划分全图像为子图像,增强细节识别。

  2. UI任务构建:涵盖了从基本到高级的14种不同的移动UI任务,并为模型训练收集了详细的训练样本。
  • 论文名称:Ferret-UI:Grounded Mobile UI Understanding with Multimodal LLMs
  • ingFang SC", miui, "Hiragino Sans GB", "Microsoft Yahei", sans-serif;letter-spacing: 0.5px;text-align: start;background-color: rgb(255, 255, 255);line-height: 1.75em;margin-bottom: 0px;white-space-collapse: preserve !important;word-break: break-word !important;">论文地址:https://arxiv.org/abs/2404.05719

  • ingFang SC", miui, "Hiragino Sans GB", "Microsoft Yahei", sans-serif;letter-spacing: 0.5px;text-align: start;background-color: rgb(255, 255, 255);line-height: 1.75em;margin-bottom: 0px;white-space-collapse: preserve !important;word-break: break-word !important;">代码:无

ingFang SC", Cambria, Cochin, Georgia, Times, "Times New Roman", serif;letter-spacing: 2px;text-align: left;text-wrap: wrap;background-color: rgb(255, 255, 255);margin-bottom: 16px;line-height: 1.75em;">Introduction

ingFang SC", miui, "Hiragino Sans GB", "Microsoft Yahei", sans-serif;font-size: 14px;letter-spacing: 0.5px;text-align: start;background-color: rgb(255, 255, 255);white-space-collapse: preserve !important;word-break: break-word !important;">为了将 UI 专家知识植入 Ferret,Ferret-UI 进行了两项扩展:

    ingFang SC", miui, "Hiragino Sans GB", "Microsoft Yahei", sans-serif;font-size: 14px;letter-spacing: 0.5px;text-align: start;background-color: rgb(255, 255, 255);">
  1. 调整模型架构以更好地处理屏幕数据

  2. 构建 UI 指代和定位任务数据集

#模型架构

考虑到两点:

  1. UI 屏幕图像与自然图像相比有更延伸的纵横比,如表 1a 所示;

  2. 本任务涉及许多感兴趣的对象(即 UI 部件,如图标和文本)比自然图像中通常观察到的对象要小得多。例如,许多问题集中在占据整个屏幕不到 0.1% 的图标上。

直接使用Ferret模型的输入会导致视觉细节的显著丢失。为了解决这个问题,参考SPHINX、LLaVA-NeXT 和 Monkey 中的 "任何分辨率"(anyres)概念,选择了两种网格配置,1x2 和 2x1,这些配置基于原始屏幕的纵横比选择,如表 1a 所示。

#UI 数据收集

本研究考察了 iPhone 和 Android 设备的屏幕截图。数据总结在表 1 中。

# 任务设计

我们详细阐述了为构建数据集而设计的三种不同方法。

重新格式化 Spotlight 任务。我们首先从现有的 Spotlight 任务中获取 screen2words、widgetcaptions 和 taperception,并将它们格式化为对话式问答对。具体来说,我们使用 GPT-3.5 Turbo 根据我们为相应任务编写的基础提示创建多种提示:

  • Screen2words:为这个屏幕截图提供一个摘要;

  • Widget Captions:对于交互元素 [bbox],提供一个最能描述其功能的短语;

  • Taperception:预测 UI 元素 [bbox] 是否可点击。

对于每个训练示例,我们为相应任务采样一个提示,并将其与原始源图像和真实答案配对。

基础任务。设计了 7 项任务,这些任务被分为两类:指代任务(referring tasks)和定位任务(grounding tasks)。

  1. 指代任务(Referring Tasks):这类任务涉及识别输入中的特定元素,并通常使用边界框(bounding boxes)来标识这些元素。具体来说,包括:

  • OCR:识别图像中的文字并将其转换为文本。

  • 图标识别(Icon Recognition):识别界面中的图标并确定其功能或含义。

  • 控件分类(Widget Classification):将界面中的控件(如按钮、文本框等)分类到预定义的类别。

  • 定位任务(Grounding Tasks):与指代任务相对,关注的是确定输出中特定元素的位置,同样使用边界框来标识。这些任务要求模型不仅要理解元素的语义,还要能够在图像上精确地定位它们。具体任务包括:

    • 控件列表(Widget Listing):列出界面上所有可识别的控件。

    • 查找文本(Find Text):根据文本内容在界面上找到对应的文本区域。

    • 查找图标(Find Icon):根据描述或功能找到对应的图标。

    • 查找控件(Find Widget):根据控件的类型或功能找到特定的控件。

    下图概述了基础任务的训练数据生成过程:

    高级任务。设计了四个任务:详细描述、对话感知、对话交互和功能推理

    1. 详细描述(Detailed Description):这个任务要求模型生成对用户界面元素的详细描述。

    2. 功能推理(Function Inference):这个任务涉及对用户界面元素功能的推断。

    3. 对话感知(Conversation Perception) 和 对话交互(Conversation Interaction):这两个任务与对话相关,要求模型能够理解和生成与用户界面相关的多轮对话。

    下图概述了高级任务的训练数据生成过程。

    Experiments

    Ferret-UI-anyres 指的是集成了任何分辨率的版本。在训练期间,解码器和投影层被更新,而视觉编码器保持冻结。所有训练数据都格式化为指令跟随格式,训练目标与 Ferret 中的相同。训练总共有 250K 个样本。Ferret-UI-base 需要 1 天的训练时间,而 Ferret-UI-anyres 在 8 个 A100 GPU 上大约需要 3 天的训练时间。

    # 实验结果

    Analysis

    以下是主要的比较结果和发现:

    1. 公共基准测试(Spotlight)和基础 UI 任务上:Ferret-UI 优于 GPT-4V

    2. 高级任务:高级任务上虽然超过同期的Fuyu和CogAgent,但还是比不过GPT-4V

    3. 分辨率调整的影响:将 anyres 添加到 Ferret-UI-base 后,iPhone 的指代和定位任务性能提高了 2 个百分点。对于高级任务,使用 Ferret-UI-anyres,iPhone 的性能大幅提升了 20 个百分点,而 Android 的性能有所下降。由于 Android 高级任务数据未包含在训练混合中,随着模型对 iPhone 屏幕理解的知识丰富,它可能失去了一些泛化能力。

    消融实验表明:基础任务为模型提供了增强的视觉和空间理解能力,有助于执行高级任务。

    Ferret-UI的二作是Ferret-V2的一作,两篇文章几乎同时上传到arxiv上,从上面的模型整体框架图上可以看到,Ferret-UI和Ferret-V2类似,都是在Ferret的基础上引入任意分辨率,但Ferret-UI利用了手机截屏的先验知识:竖屏或者横屏,可以通过垂直方向或者水平方向切图将原图切成2个方块(不过如果遇到长截屏,仅靠1:2或者2:1应该还是不够的),也就不需要引入DINOv2这种细粒度的Visual encoder了。


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

链载AI是专业的生成式人工智能教程平台。提供Stable Diffusion、Midjourney AI绘画教程,Suno AI音乐生成指南,以及Runway、Pika等AI视频制作与动画生成实战案例。从提示词编写到参数调整,手把手助您从入门到精通。
  • 官方手机版

  • 微信公众号

  • 商务合作

  • Powered by Discuz! X3.5 | Copyright © 2025-2025. | 链载Ai
  • 桂ICP备2024021734号 | 营业执照 | |广西笔趣文化传媒有限公司|| QQ