type
status
date
slug
summary
tags
category
icon
password
URL
Rating
本文介绍下最近刚刚开源的 UI Agent 模型 ShowUI。ShowUI 是在 Qwen2-VL-2B 基础上做的 Lora 微调,模型和代码都开源。ShowUI 在中文 App 上的效果应该是当前 UI Agent 开源模型中最好的👍 🔥🔥。
ShowUI 的一些信息:
接下来介绍 ShowUI 论文中提到的一些关键信息。
论文详解
论文主要包括 3 个大的贡献:
- UI-Guided Visual Token Selection:对图片分 patch 后,去掉一些重复的 patch 以降低计算量。可以提速到原来的 1.5 倍,但效果会略降。
- Interleaved Vision-Language-Action Streaming:训练时把多个单步任务拼成多轮对话的形式进行训练,提升效率。navigation 生成动作时不仅使用当前的 UI 截图,也使用前面步骤的 UI 截图(N=2)。
- Small-scale High quality GUI Instruction-following Datasets:按指定比例构建高质量预训练数据集。
UI-Guided Visual Token Selection
先把图片划分成指定大小(patch 大小按照基模的配置即可,比如 Qwen2-VL 可以是 28x28)换分成不同的 patch,然后把临近相同颜色的 patch 连成一个Graph。属于同一个 graph 里的 patches 可以认为高度重复,所以训练时就从里面按比例随机抽取一些即可(对于只包含一个 patch 的 graph,抽取时必须包含此 patch),不需要全用。通过这种方式降低代表一个图片所需的 token 数量,提升训练/推理效率。
使用时作者保留抽取出来的每个 patch 的原始 position 位置信息,然后像如下右边那样输入模型即可(作者做了实验发现左边的处理方式效果更差)。
Interleaved Vision-Language-Action Streaming
作者使用了两种组织不同训练数据的方法,对应图中的两种:
- Action-Visual:把每一步的截图和动作串起来,图片和动作交织组成一个长序列,训练时只使用动作 tokens 对应的 loss。这样一个任务理论上可以作为一个样本。
- Action-Query:对于一些单步性质的任务,比如对应一个截图中的多个元素的 grounding 任务,可以把这些多个单步任务拼成多轮对话的形式进行训练,也就变成上面那种交织的形式了,以便提升训练效率。
作者的结论是这两种训练方式都用的话,效果会更好(见下图黄色曲线):
GUI Instructional Tuning (预训练)
这一步其实就是预训练。
Navigation 数据就是来自 GUIAct。
Grounding 数据包含了三类数据:
- Web–visual elements:作者自己收集的数据,包含 22k 的 web 截图,主要是针对 Button 或者 Checkbox 类型的元素。
- Desktop–diverse query:来自 OmniAct 的 100 张图片,作者说这个数据集质量很高。作者针对其中的 2k 个元素制定了 3 个新的 query:appearance, spatial and intention,获得了 6k 个样本,加上之前的 2k(可能是 grounding),有大概 8k 个样本。这个数据集作者已开源:https://huggingface.co/datasets/showlab/ShowUI-desktop-8K
- Mobile–Functionality:用的就是 AMEX 数据集。
整个数据集时 256k 个样本,其中 grounding 占一半少一些,navigation 占一半多一些。训练时每个 batch 中通过随机抽样获得,其中 grounding 和 navigation 各占一半,而 grounding 的三类数据同样随机抽样,保证在每个 batch 中它们的占比是
1:1:1
。以下是使用不同的数据训练模型后在 Screenspot grounding 测试集上的效果,可见 OmniAct 数据的效果真好。
数据平衡抽样非常重要,它带来了 3.7% 的精度提升。
作者的实验发现,如果控制好采样比例,预训练中加入 navigation 数据并不会降低模型的 grounding 能力。
微调
以下应该是模型在 AITW 数据集上微调后的模型效果。其中的 ShowUI-ZS 应该是没在 AITW 做过微调,而 ShowUI ✝︎ 表示只使用动作历史,但不使用历史的截图。而 ShowUI 则是使用了历史的 2 张截图加上当前的截图。
在使用了历史截图后,ShowUI 获得了更好的效果。
UI Agents 知识星球
UI Agents 技术发展迅猛,想紧跟 UI agents 技术前沿?我们的知识星球每周以视频方式解读最新论文,为你开启技术新视野,快来加入吧!
加入知识星球,每周获取会员专享视频👇
扫码加微信小助手为好友,备注「agent」,小助手会定期邀请入群👇
当前星球包含的专享视频包括:
- 【2024.11.24】UI Agent 论文分享:使用世界模型提升 UI Agents 效果?
- 【2024.11.17】UI Agent 论文分享:来自华为诺亚方舟实验室的 LiMAC
- 【2024.11.11】UI Agent 论文分享:来自 LG AI Research 的 Auto-Intent
<ins/>
- 作者:Breezedeus
- 链接:https://www.breezedeus.com/article/ui-agent-showui
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章