GUI Agent with SFT 学习

news2024/9/20 8:02:34

grounding指的是基础训练,定位之类的意思,sft指的是监督微调,也就是用带有标签的数据集对与训练完毕的模型进行微调(因为是带标签的,所以叫监督)

ui理解能力分为两个部分:Static UI understanding,Dynamic UI understanding

其中Static UI understanding分为以下三种:

OCR:指的是识别图像中的文字

ui grounding:是确定ui元素位置的能力

UI_domain knowledge:是ui领域的知识,就是要明白红心是收藏之类的

Dynamic UI understanding则是模型理解某个按钮点击之后会发生什么的能力。因为GUI场景具备的user interaction特点,也就是界面的element是抽象的高级语义表示。例如一个三条横线的图标,其实是menu的表示,点击后会出现菜单的内容。

以上是有关ui agent训练目标的介绍(model需要具有以上提到的这些能力)

下面是cogagent项目的学习:

cogagent预训练的重点放在以下几个方面:

识别高分辨率图像中各种大小、方向和字体的文本的能力:这部分使用了一些开源数据集,并且加上了各种高斯模糊,图像颠倒翻转之类的狠活,提高模型鲁棒性。

图片中文本和object的定位能力:follow CogVLM,使用从LAION-115M中采样的40M图像的构建的自然场景数据集,该数据集将caption中的实体与bounding boxes相关联,以指示它们的位置。

对GUI图像(如网页)的专业理解能力:用两种任务训练该能力:

  1. GUI Referring Expression Generation (REG):其中模型的任务是基于屏幕截图中的指定区域为DOM(文档对象模型)元素生成HTML代码
  2. GUI Referring Expression Comprehension (REC):涉及为给定的DOM元素生成bbox

可以看到这个是最重要的能力。这两个任务使用的是构建的CCS400K(Common Crawl Screenshot 400K)数据集。这个数据集是通过从最新的Common Crawl数据中提取URL,然后捕获400000个网页截图而形成的。除了这些屏幕截图,还使用Playwright1编译了所有可见的DOM元素及其相应的渲染框,为数据集补充了1.4亿个REC和REG问答对。

除了数据集,训练项目的部份外,cog agent的模型结构也很有意思。为了处理高分辨率的截图,cog agent使用了这样的结构:

右边就是普通的vlm,使用的也是分辨率减小之后的截图,但是左边大有学问。左边使用了一个体量较小的vision encoder(cog agent团队使用的是0.3B的)然后把获取到的特征一层一层的用cross attention塞到右边的decoder部分里(不是一口气放进去的,一层一层放的)这样就可以使用到高分辨率的照片的特征还不用考虑tokens太多的问题。

OdysseyAgent学习:

就是之前做mutil app任务的时候看的样板论文,那些任务分类就是从这里来的。除此之外其主要贡献是提出了多app任务要记住模型之前干过什么,历史截图是什么,然后再将这些信息输入到LLM中去获取下一步操作。

Static UI understanding Data

UI场景下的开源数据集,主要分为Caption、QA和Grounding三个任务形式,也就是描述图像,你问我答,定位元素

以上是预训练需要达到的要求,接下来是sft的要求

Sequence execution:序列生成,与之前的Dynamic UI understanding只需要一步预测不同,这个要多步。

下面是一些数据集的调研:

我现在要看notion里面绪睿给出的预训练的dataset和监督微调的dataset,还要看OdysseyAgent、CogAgent

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2036644.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

离线安装部署springboot+vue系统到服务器

注意:首先服务器会有多个网卡,这些服务器的网卡连接所需要的文件可能不是我们默认的ifcfg-eth0/ifcfgens33,可以试着切换一下服务器网线插入的接口,要保证服务器网线插入的接口和网卡对应的文件一致 说明,在一些政府(保…

lvs的相关应用2

lvs 安装lvs 配置规则,查看所有的规则,如果已经配置好规则,重启之后就没了 [rootds01 ~]# ipvsadm -Ln IP Virtual Server version 1.2.1 (size4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forwa…

react的setState中为什么不能用++?

背景: 在使用react的过程中产生了一些困惑,handleClick函数的功能是记录点击次数,handleClick函数被绑定到按钮中,每点击一次将通过this.state.counter将累计的点击次数显示在页面上 困惑: 为什么不能直接写prevStat…

为什么要学习AI大模型?

AI大模型正在以惊人的速度改变着各行各业。正如移动互联网时代造就了无数成功的开发者,今天的大模型技术也为我们带来了前所未有的机遇。学习和掌握这项技术,不仅能让你站在行业前沿,还能为你的职业生涯带来巨大的回报。 01 企业为什么需要…

Linux shell编程学习笔记70: curl 命令行网络数据传输工具 选项数量雷人(下)

0 前言 curl是一款综合性网络传输工具&#xff0c;既可以上传也可以下载&#xff0c;支持HTTP、HTTPS、FTP等30余种常见协‍议。 Linux和Windows都提供了curl命令。 D:\>curl --help Usage: curl [options...] <url>-d, --data <data> HTTP POST da…

sql实战

这里写自定义目录标题 sql实战cmseasy daiqile全局污染 RCE限制16字符传入参数限制传入字符7个限制35字符&#xff0c;并过滤所有英文数字 sql实战 cmseasy 1、/lib/admin/admin.php和/lib/admin/tool/front_class.php源代码中发现&#xff0c;可以伪造IP并且传入ishtml1&…

Leetcode JAVA刷刷站(26)删除有序数组中的重复项

一、题目概述 二、思路方向 为了原地删除重复出现的元素&#xff0c;并保持元素的相对顺序一致&#xff0c;我们可以使用双指针的方法来解决这个问题。这种方法通常被称为“快慢指针”法。在这个问题中&#xff0c;快指针&#xff08;fast&#xff09;用于遍历数组&#xff0…

计算机的错误计算(六十一)

摘要 解释计算机的错误计算&#xff08;六十&#xff09;中的错误计算原因。 计算机的错误计算&#xff08;六十&#xff09;中的计算可以归纳为 因此&#xff0c;我们只需要分析该算式。 例1. 已知 分析如何计算 首先&#xff0c;一个数乘以一个2&#xff0c;一般不会…

[Megagon Labs] Annotating Columns with Pre-trained Language Models

Annotating Columns with Pre-trained Language Models 任务定义 输入&#xff1a;一张数据表&#xff0c;但没有表头&#xff0c;只有表中的数据。 输出&#xff1a;每一列数据的数据类型&#xff0c;以及两列数据之间的关系。 数据类型和数据关系都是由训练数据决定的固定…

docker部署Prometheus、Grafana

docker部署Prometheus 1、 拉取prometheus镜像 docler pull prom/prometheus 遇到问题&#xff1a;注意下科学上网。 2、将prometheus配置文件放在外面管理 prometheus.yml global:scrape_interval: 15sevaluation_interval: 15salerting:alertmanagers:- static_configs:-…

聚合平台项目之数据抓取

首先先记录一下我自己对这个数据抓取的一些心得&#xff1a; 数据抓取也就是常说的爬虫。 在我没真正去做的时候&#xff0c;我还想爬虫好高大上。 现在学完之后也就怯魅了 其实本质就是在自己的代码中模拟浏览器给后端发请求&#xff0c;后端收到响应之后&#xff0c;返回…

Redis知识进阶-私人定制组

Redis 目录 RedisRedis 简介关键特征Redis不同操作系统安装在Linux上的安装&#xff1a;在macOS上的安装&#xff1a;在Windows上的安装&#xff1a; Redis 数据结构及特点常用5种及示例&#xff1a;其他结构 主要功能总结 Redis 简介 Redis是一个开源的高性能键值对数据库&am…

酶促4+2和2+2环加成反应(有机合成与生物合成)-文献精读38

酶促42和22环加成反应&#xff1a;区域与立体选择性的理解与应用 01 有机合成 类似有机化学&#xff1a;狄尔斯–阿尔德反应 狄尔斯–阿尔德反应是[42]环加成反应中最具代表的&#xff0c;由共轭双烯与亲双烯体构建环己烯骨架的经典反应。反应有良好的立体、位置选择性。 该…

3.类和对象(中)

1. 类的默认成员函数 默认成员函数就是用户没有显式实现&#xff0c;编译器会自动生成的成员函数称为默认成员函数&#xff08;就是我们不写&#xff0c;编译器会默认生成一份&#xff09;。一个类&#xff0c;我们不写的情况下编译器会默认生成以下6个默认成员函数&#xff0…

江协科技STM32学习笔记(第09章 I2C通信)

第09章 I2C通信 9.1 I2C通信协议 9.1.1 I2C通信 串口通信没有时钟线的异步全双工的协议。 案例&#xff1a;通信协议设计&#xff1a; 某个公司开发了一款芯片&#xff0c;可以干很多事情,比如AD转换、温湿度测量、姿态测量等等。这个芯片里的众多外设也是通过读写寄存器来…

InCDE论文翻译

InCDE论文翻译 Towards Continual Knowledge Graph Embedding via Incremental Distillation 通过增量蒸馏实现持续知识图嵌入 Abstract 传统的知识图嵌入(KGE)方法通常需要在新知识出现时保留整个知识图(KG)&#xff0c;这会带来巨大的训练成本。为了解决这个问题&#xf…

掌握网络数据的钥匙:Python Requests-HTML库深度解析

文章目录 掌握网络数据的钥匙&#xff1a;Python Requests-HTML库深度解析背景&#xff1a;为何选择Requests-HTML&#xff1f;什么是Requests-HTML&#xff1f;如何安装Requests-HTML&#xff1f;5个简单库函数的使用方法3个场景下库的使用示例常见Bug及解决方案总结 掌握网络…

[C++][opencv]基于opencv实现photoshop算法可选颜色调整

【测试环境】 vs2019 opencv4.8.0 【效果演示】 【核心实现代码】 SelectiveColor.hpp #ifndef OPENCV2_PS_SELECTIVECOLOR_HPP_ #define OPENCV2_PS_SELECTIVECOLOR_HPP_#include "opencv2/core.hpp" #include "opencv2/imgproc.hpp" #include "…

笔记:在WPF中OverridesDefaultStyle属性如何使用

一、目的&#xff1a;介绍下在WPF中OverridesDefaultStyle属性如何使用 OverridesDefaultStyle 属性在 WPF 中用于控制控件是否使用默认的主题样式。将其设置为 True 时&#xff0c;控件将不会应用默认的主题样式&#xff0c;而是完全依赖于你在 Style 中定义的样式。以下是如何…

代码随想录算法训练营day39||动态规划07:多重背包+打家劫舍

多重背包理论 描述&#xff1a; 有N种物品和一个容量为V 的背包。 第i种物品最多有Mi件可用&#xff0c;每件耗费的空间是Ci &#xff0c;价值是Wi 。 求解将哪些物品装入背包可使这些物品的耗费的空间 总和不超过背包容量&#xff0c;且价值总和最大。 本质&#xff1a; …