- 引言
- 简介
- FERRET-UI 2
- 数据集构建
- 模型架构
- 实验
- 实验设置
- 实验结果
- 消融研究
- 结论
- 引言 =======
用户界面(UI)是人机交互的核心,随着智能设备和平台的多样化,UI的复杂性不断增加。 然而,现有的UI理解与交互方法在多平台环境中仍有局限。 Ferret-UI(You et al., 2024) 在UI指称与语义理解方面取得了进展,但其固定的分辨率和仅针对移动设备的限制,难以应对多平台的复杂性。 缺乏平台特定的高质量数据,尤其是视觉输入与UI元素之间的空间关系,进一步限制了其性能。
为了解决这些问题,苹果推出了Ferret-UI 2,这是一款针对多平台、多模态的UI理解系统。它通过三大创新增强了UI感知与交互能力:(i) 支持更多平台,包括手机、平板、网页和智能电视;(ii) 动态高分辨率图像编码;(iii) 高质量多模态训练数据生成。特别是,它通过自适应网格化方法提升了视觉元素识别的精度,并利用结合视觉提示的训练数据,改进了对UI空间关系的理解。
Ferret-UI 2在广泛平台上改进了UI理解与交互性能,支持更复杂的用户指令,并展现出跨平台迁移能力。实验表明,其在多项任务和平台上均优于前代模型,并在GUIDE和GUI-World等基准测试中取得了优异表现。
总结:
- Ferret-UI 2 支持多平台、多模态理解,标志着UI交互技术的重要进步。
- 它通过高分辨率编码和改进的训练数据,显著提升了性能和跨平台适用性。
- 实验验证了其在多平台任务中的优越性能,展现了强大的迁移能力。
紧接前文: 苹果发布Ferret-UI 2: 跨平台UI理解多模态大模型(精炼版) 。以下 从各个细节详细解读Ferret-UI 2 这个模型。
- 简介 =======
构建通用的用户界面(UI)理解模型面临着平台多样性、分辨率差异和数据限制等基础性挑战。Ferret-UI 2是一种为广泛平台(包括iPhone、Android、iPad、网页和AppleTV)设计的多模态大型语言模型(MLLM)。在Ferret-UI的基础之上,Ferret-UI 2引入了三项关键创新:
- 支持多种平台类型
- 通过自适应缩放实现高分辨率感知
- 由GPT-4o驱动并采用集合标记视觉提示的高级任务训练数据生成
这些创新使Ferret-UI 2能够执行复杂的以用户为中心的交互,具备高度的通用性和适应性,以应对不断扩展的平台生态系统多样性。大量实证实验表明,在指称、语义理解、以用户为中心的高级任务(包括9个子任务×5个平台)、GUIDE下一步预测数据集和GUI-World多平台基准测试中,Ferret-UI 2显著优于Ferret-UI,并展现出强大的跨平台迁移能力。
- FERRET-UI 2 ================
本节首先描述原始数据注释到训练数据集的整理过程(3.1节),随后介绍模型架构(3.2节)。所以,其实Ferret-UI 2的重点是数据。
3.1 数据集构建
为训练强大的多平台UI理解模型,Ferret-UI 2研究如何构建专门的数据集。图2显示了完整的数据集生成流程图。
针对不同平台采用不同的标注策略 :
- iPhone、iPad和AppleTV :在不同使用场景下收集人工标注的数据,包括控件边界框坐标 和标签 。为节省标注成本,采用0.5的OCR置信度阈值,用屏幕范围内OCR检测到的文本和边界框替换文本边界框。
- 网页 :数据源自WebUI数据集。所有类型UI控件的边界框和非图片控件的文本注释直接解析自源HTML视图层次结构。对于图片控件,通过OCR补充检测图片中的文本。
- Android :屏幕截图、边界框和文本注释数据转化自RICO数据集,同样对仅有图片的控件执行OCR补全文本注释。
对所有收集的数据执行了以下过滤:(i)过滤或缩小超出边界的边界框,删除无剩余边界框的空屏幕截图 (ii)删除文本注释中非ASCII字符超过5%的屏幕截图
为统一不同来源的标签空间,过滤掉相关性较低的标签,将剩余标签映射到13个公共类别:'复选框'、'按钮'、'容器'、'对话框'、'图标'、'页面控制'、'图片'、'分段控制'、'滑块'、'标签栏'、'文本'、'文本框'和'切换开关'。
将上述收集的屏幕截图数据集命名为Core-set ,用于构建基础和高级任务数据。此外,引入第三方训练数据集来丰富数据源,避免过度拟合预定义任务。表1总结了Ferret-UI 2的训练数据集完整统计信息,显示不同平台之间的数据分布极不平衡。特别是iPad和AppleTV屏幕截图的数量明显少于其他平台。为解决此问题,采取两项措施:
- 训练时为不同平台分配不同的损失权重
- 为iPad和AppleTV平台的每个示例生成三种类型的高级任务,而其他平台的每个示例仅生成一种类型的高级任务。
与依赖模型检测边界框 训练的Ferret-UI相比,Ferret-UI 2的训练数据集主要利用人工收集的注释或直接解析源自HTML的边界框,显著提高了注释质量,这一点在4.2节的定量评估中得到了印证。
任务数据生成 分为基础任务和高级任务 两类:
基础任务 (图2)包括3个指代任务和3个交互任务:
- 指代任务 :
- OCR:给定文本边界框识别文本
- 控件分类:预测元素的UI类型
- 可点按性:预测所选控件是否可供交互点按
- 交互任务 :
- 控件列表:列出屏幕中的所有控件
- 查找文本:找到给定文本的位置
- 查找控件:给定控件描述,找到该控件
对于高级任务 ,向GPT-4o提供给定屏幕截图的边框注释 ,要求GPT-4o生成与屏幕截图中UI控件相关的问答任务 。与主要关注空间描述的Ferret-UI不同(因为Ferret-UI只使用文本提示而没有使用图像信息来进行边框注释),Ferret-UI 2利用GPT-4o生成覆盖UI理解各个方面的高级任务数据。这是因为GPT-4o在获得屏幕截图输入时,展现了更好的UI控件空间关系理解能力。具体通过对GPT-4o做提示生成三种类型的高级任务(如图2所示):
- 综合描述:描述屏幕的全局和局部功能
- 多轮感知问答:关于UI感知能力的多轮问答
- 多轮交互问答:基于当前屏幕状态的单步和面向用户的UI交互的多轮问答
在附录B中提供了生成高级任务时gpt - 4o的更详细的要求和提示。感兴趣的小伙伴可以前往查看。
实践表明,以原始屏幕截图作为输入时,GPT-4o在定位所指代的UI控件位置方面存在困难。为解决此问题,在生成多轮感知和交互问答训练样本时,采用Set-of-Mark(SoM)视觉提示(visual prompting)。图3展示了SoM提示及其生成的数据样本示例,每个UI控件都用角状边界框和唯一数字标签标记以便识别。同类UI控件使用相同颜色进行视觉提示,有助于GPT-4o更好地区分空间上临近或嵌套控件的边界框。有关其他平台上的可视化提示,请参阅图5,有关为高级任务生成的其他数据示例,参阅附录C。
图3:set-of-mark提示示例(左)及其生成的高级任务训练示例之一(右)。
图5:使用GPT-4o生成任务数据的视觉提示示例,用于多轮感知问答和多轮交互问答。每个用户界面(UI)小部件都带有角落风格的边界框标注,只有小部件的角落通过小线条突出显示,边框的其余部分保持开放。这种极简风格的边界框配有一个独特的数字标签,放置在其中一个角落附近,便于识别和引用特定的UI小部件,以便进行进一步的交互或感知分析。
3.2 模型架构
如图4所示,Ferret-UI 2的模型架构建立在Ferret-UI基础之上,采用Any-Resolution(AnyRes)方法来增强指代和交互能力,使编码器能够捕获不同分辨率的图像。
图4:Ferret-UI 2模型体系结构概述,它支持无缝的UI理解和以用户为中心的单步交互,并支持高分辨率
具体架构包含以下组件:
- CLIP图像编码器首先从UI屏幕截图中提取全局特征(来自低分辨率概览图像)和局部特征(对应于高分辨率子图像)
- 将这些图像特征展平并送入LLM
- 视觉采样器根据用户指令识别并选择相关的UI区域
- 模型最终输出UI元素的感知或交互的定位描述
自适应网格化 :提出的自适应N网格划分机制,计算出最佳的网格大小,提取局部图像特征,并对每个网格的视觉特征进行调整和编码。相比于Ferret-UI,这是一个关键创新。如算法1所示,最佳网格尺寸和的确定基于以下原则:调整(,)网格大小使得最小化 纵横比变化乘以相对像素数变化,这时候确定最佳网格尺寸和。这个过程同时受的约束,其中N是尺寸极限。在尺寸限制下,网格总数上限为。
与无限制成本的AnyRes模块相比,自适应N网格化的独特之处在于能自动找到最优网格配置,即在预定义的推理成本限制内,实现最小分辨率失真(纵横比变化和像素数变化),既保留信息完整性,又能高效局部编码。通过自适应网格化,Ferret-UI 2能以最优配置理解任意分辨率的UI屏幕并提供以用户为中心的交互,推理成本由尺寸限制指定。
4.1 实验设置
训练数据 可分为两类:
- 自行构建的数据集:包括所有平台上的基础任务数据和高级任务数据
- 公开数据集:包括
- GroundUI-18k:以网页截图为基础的简单用户交互数据集
- GUIDE:以网页截图为基础的下一步行为预测数据集
- Spotlight:Android UI理解与交互数据集
模型配置 :与Ferret-UI相同,Ferret-UI 2采用CLIP ViT-L/14模型作为图像编码器。对于大型语言模型骨干网络,除了使用原始Ferret-UI相同的Vicuna-13B 外,还尝试了两个移动端规模的大语言模型:Gemma-2B和Llama-3-8B。在动态高分辨率图像编码方面,将大小限制N设置为8,因此自适应网格分割的最大网格数为16。
评估方法 分为两类:
- 自行构建的基准测试:
- 在5种平台类型下创建45个测试用例
- 每种平台类型包含6个基础任务和3个高级任务
- 基础任务遵循You等(2023)的评估指标
- 高级任务使用GPT-4o基于给定截图和用户查询生成答案,并配合红色矩形边界框的视觉提示进行评分
- 采用GPT-4o评分和多重IoU作为评估指标
- 公开基准测试:
- 在GUIDE基准测试上进行下一步行为预测测试
- 评估预测答案与参考答案的语义相似度和定位交并比(IoU)
- 在GUI-World基准测试上对支持的平台进行评估,遵循原始评估协议
4.2 实验结果
主要实验结果总结在表2中,展示了不同模型在基础任务、高级任务以及GUIDE基准测试上的对比性能。每个数据项目代表所有平台的平均值,各平台的详细结果见附录A的表6。
表2:在基础任务和高级任务测试基准上的结果,同时也包括GUIDE基准测试的结果。基础任务和高级任务的结果是在所有平台(包括iPhone、Android、iPad、网页和AppleTV)上的平均值。每个平台包含6个基础任务和3个高级任务。(†)在需要指代的任务中,GPT-4o采用了标记集(SoM)提示方法,即在截图中为被指代的控件添加红色矩形框。需要注意的是,Ferret-UI和Ferret-UI 2并未使用SoM视觉提示方法。
主要结论:
- 搭载Llama-3-8B的Ferret-UI 2表现最优:
- 在高级任务上达到89.73的最高GPT-4o评分,超过Ferret-UI 43.92分,超过GPT-4o 12.0分
- 在GUIDE基准测试上达到55.78的最高IoU分数,展现出色的定位能力
- 搭载Vicuna-13B的Ferret-UI 2:
- 表现同样出色,在高级任务上达到41.71的强劲多重IoU分数
- 搭载Gemma-2B的Ferret-UI 2:
- 尽管模型规模仅为Vicuna-13B的六分之一,但在各项指标上仍取得有竞争力的表现
- GPT-4o的表现:
- 在细粒度UI理解方面表现欠佳
- 基础任务的指称(56.47)和定位(12.14)分数较低
- 在高级任务和GUIDE基准测试上的多重IoU和IoU分数也较低
GUI-World基准测试结果 :为验证Ferret-UI 2的零样本能力,在最新发布的GUI-World基准测试上进行了评估。结果显示:
- Ferret-UI 2展现出良好的泛化能力,未出现过度拟合训练数据的情况
- 在所支持的iOS、Android和网页等平台上,性能均优于GUI-World论文中提出的GUI-Vid模型
4.3 消融研究
跨平台迁移能力评估: 表4展示了Ferret-UI 2在不同平台(领域)间的零样本迁移能力,通过在一个平台上训练,在其他平台上测试的方式进行。在指称和定位两种任务上观察到类似的性能模式:
- iPhone平台的迁移效果:
- 在iPad和Android平台上表现优异
- 指称任务分数分别达到68.1和71.2
- 定位任务分数分别达到65.2和63.1
- 优异表现可能源于iPhone平台截图内容的多样性及与其他平台相似的分辨率和纵横比
- iPad和Android平台:
- 对iPhone领域也展现出良好的迁移能力
- 两项任务的分数均在65分左右
- AppleTV和网页平台:
- 向移动端领域(iPhone、Android和iPad)的迁移效果欠佳
- 指称任务最高分数为59.2
- 定位任务最高分数为54.0
- 可能是由于横向截图与移动端纵向截图的差异导致
- AppleTV测试领域:
- 其他领域训练的模型在此表现普遍较弱
- 两项任务得分约40分
- 这一结果合理,因为AppleTV的内容分布与其他领域差异显著
关键小结:
- iPhone、iPad和Android平台因内容分布相似而具有良好的互相迁移能力
- 训练数据内容越丰富(如iPhone数据约10万张),迁移泛化能力越强
- 分辨率和纵横比相似的平台间迁移效果更好
- 部分平台间的良好迁移能力促进了Ferret-UI 2的跨平台表现
架构和数据集改进的消融研究 :表5比较了在不同版本iPhone数据集上训练的Ferret-UI和Ferret-UI 2模型的性能。模型在高级任务测试集上进行评估,结果表明架构改进(特别是自适应N-网格分割)和数据集改进(iPhone v2)都对性能提升有积极影响。
表5:关于 Ferret-UI 2 的架构和数据集改进相对于 FerretUI-anyRes的消融实验结果,即配备了任意分辨率模块的高分辨率版本的 Ferret-UI。iPhone v1 指的是最初由 FerretUI 使用的 iPhone 平台数据集,而 iPhone v2 是 Ferret-UI 2 使用的数据集。模型在高级任务上进行了评估。
具体表现:
- iPhone v1测试集上:
- Ferret-UI 2相比Ferret-UI有小幅提升
- GPT-4o评分从91.3提高到93.7
- 多重IoU分数从36.89提高到37.12
- iPhone v2数据集上:
- 性能提升更为显著
- Ferret-UI 2的GPT-4o评分达到89.7,超过Ferret-UI的85.97
- 多重IoU分数从39.81大幅提升到41.73
这些结果表明,虽然架构改进和数据集改进都促进了整体性能提升,但新数据集在推动性能改进(特别是在更具挑战性的任务上)方面发挥了更为关键的作用。
- 总结 =======
Ferret-UI 2作为一种创新的多模态大型语言模型,显著改进了跨多平台的UI理解和交互能力。通过引入:
- 多平台支持
- 高分辨率图像编码与自适应网格分割
- 改进的数据生成方法
该模型在所有测试基准上均优于Ferret-UI,并展现出强大的零样本跨平台迁移能力,为通用UI理解奠定了坚实基础。
未来研究方向:
- 整合更多平台类型
- 构建通用UI导航智能体
这些进展将进一步推动UI理解和交互技术的发展,为更广泛的应用场景提供支持。