主要观点总结
本文主要介绍了Show Lab和微软推出的开源UI Agent模型ShowUI。该模型在中文APP定位和导航能力上表现出色,具有一些创新特性,包括UI-Guided Visual Token Selection、Interleaved Vision-Language-Action Streaming等。文章还介绍了模型的训练数据构建方法和微调过程。
关键观点总结
关键观点1: ShowUI模型特点
ShowUI是一个开源的UI Agent模型,基于Qwen2-VL-2B模型进行微调,模型和代码都开源。它在中文APP上的效果表现出色,是当前UI Agent开源模型中最好的之一。
关键观点2: 论文贡献
论文主要包括三个大的贡献:UI-Guided Visual Token Selection、Interleaved Vision-Language-Action Streaming和Small-scale High quality GUI Instruction-following Datasets。
关键观点3: 训练方法
训练时使用了两种组织不同训练数据的方法:Action-Visual和Action-Query,结合使用效果更佳。预训练阶段使用了GUIAct的Navigation数据,以及包含三类数据的Grounding数据。
关键观点4: 数据抽样
数据平衡抽样非常重要,带来了精度的提升。控制好抽样比例,可以在预训练中加入navigation数据而不降低模型的grounding能力。
关键观点5: 模型微调
模型在AITW数据集上微调后效果更佳,使用历史的截图可以提高模型效果。
正文
:按指定比例构建高质量预训练数据集。
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
作者使用了两种组织不同训练数据的方法,对应图中的两种:
-
1.
Action-Visual
:把每一步的截图和动作串起来,图片和动作交织组成一个长序列,训练时只使用动作 tokens 对应的 loss。这样一个任务理论上可以作为一个样本。
-
2.
Action-Query
:对于一些单步性质的任务,比如对应一个截图中的多个元素的 grounding 任务,可以把这些多个单步任务拼成多轮对话的形式进行训练,也就变成上面那种交织的形式了,以便提升训练效率。
作者的结论是这两种训练方式都用的话,效果会更好(见下图黄色曲线):
GUI Instructional Tuning (预训练)