计算机视觉GPT时刻!UC伯克利三巨头祭出首个纯CV大模型,推理惊现AGI火花

计算机视觉的GPT时刻,来了!

最近,来自UC伯克利的计算机视觉「三巨头」联手推出了第一个无自然语言的纯视觉大模型(Large Vision Models),并且第一次证明了纯视觉模型本身也是可扩展的(scalability)。

除此之外,研究人员还利用超过420B token的数据集让模型可以通过上下文学习来理解并执行下游任务,并且统一了图片/视频、有监督/无监督、合成/真实、2D/3D/4D等几乎所有的数据形式。

论文地址:https://arxiv.org/abs/2312.00785

值得一提的是,让LVM做非语言类智商测试(Raven's Progressive Matrices )中常见的非语言推理问题,它时常能做出正确的推断。

对此,研究人员惊喜地表示,这或许意味着LVM也展现出了「AGI的火花」!

纯视觉模型的逆袭

现在,随着大语言模型的爆发,不管是学术界还是业界,都开始尝试使用「文本」来扩大视觉模型的规模。

包括GPT4-V在内的SOTA模型,都是把视觉和文字组合在一起训练的。

以「苹果」为例,这种方法在训练时不仅会给模型看「苹果的照片」,而且还会配上文字「这是一个苹果」。

然而,在面对更加复杂的图片时,就很容易忽略其中大量的信息。

比如「蒙娜丽莎」应该怎么去描述?或者摆满各种物品的厨房的照片,也很难清晰地被描述出来。

图片

对此,来自UC伯克利和约翰斯·霍普金斯大学的研究人员,提出了一种全新的「视觉序列」建模方法,可以在不使用任何语言数据的情况下,训练大规模视觉模型(Large Vision Model)。

这种名为「视觉序列」的通用格式,可以在其中表征原始图像和视频,以及语义分割、深度重建等带标注的数据源,且不需要超出像素之外的任何元知识。

一旦将如此广泛的视觉数据(包含4200亿个token)表征为序列,就可以进行模型的训练,让下一个token预测的交叉熵损失最小化。

由此得到的LVM模型,不仅可以实现有效地扩展,完成各种各样的视觉任务,甚至还能更进一步地涌现出比如数数、推理、做智力测试等能力。

左:Alexei A Efros;中:Trevor Darrell;右:Jitendra Malik

简单来说就是,大规模视觉模型只需看图训练,就能理解和处理复杂的视觉信息,完全不用依赖语言数据。

纯视觉模型的扩展难题

此前,使用预训练模型的价值 (例如ImageNet预训练的 AlexNet) ,早在2015年就已经在R-CNN中得到了证明。

从此, 它从此成为计算机视觉的标准实践。

而自监督预训练,作为一种大大增加可用于预训练的数据量的方法被提出。

不幸的是,这种方法并不是很成功,可能是因为当时基于CNN的架构没有足够的能力来吸收数据。

随着Transformer的推出,其容量变得高得多,因此研究人员重新审视了自监督预训练,并发现了基于Transformer的掩码图像重建方法,例如BEiT, MAE,SimMIM,它们要比基于CNN的同类方法表现好得多 。

然而,尽管如此,目前预训练的纯视觉模型在扩展到真正大的数据集(例如LAION) 时,还是遇到了困难。

如何构建「大视觉模型」

那构建一个大规模视觉模型(Large Vision Model,LVM),需要哪些要素呢?

动物世界告诉我们,视觉能力并不依赖于语言。而许多实验表明,非人类灵长类动物的视觉世界,和人类的极为相似。

因此,本文走在了LLaVA这种视觉-语言模型不同的方向:仅依靠像素,我们能走多远?

研究人员试图在LVM中,模仿LLM的两个关键特性:(1)在大数据环境下的扩展能力,和(2)通过提示(上下文学习)灵活地指定任务。

为了实现这一目标,需要明确三个主要组件:

数据:研究人员希望,能够充分利用视觉数据显著的多样性。

首先是原始的未经标注的图像和视频。接下来,研究人员计划利用过去几十年中产生的各种带标注的视觉数据资源,如语义分割、深度重建、关键点、3D物体的多个视图等。

为此,他们定义了一种名为「视觉序列」的通用格式,来表示这些不同的标注,而不需要任何超出像素本身的元知识。训练数据集总共包含1.64亿张图像/帧。

架构:研究人员使用了一个具有30亿参数的大型Transformer架构,这个架构在被表征为token序列的视觉数据上进行训练。

通过学习到的tokenizer,将每个图像映射到一个包含256个向量量化token的字符串。

损失函数:研究人员从自然语言处理领域获取了灵感,其中掩码token模型已经演变为顺序自回归预测。

一旦能够将图像/视频/带标注的图像都表征为序列,就可以训练模型来最小化预测下一个token的交叉熵损失。

通过这种极简的设计,研究人员有了一些新颖的发现——

- 随着模型尺寸和数据大小的增加,模型会表现出适当的扩展行为。

- 通过在测试时设计合适的视觉提示,可以解决多种视觉任务。

- 大量无监督数据,对于各种标准视觉任务性能的提升非常明显。

- 模型在处理超出分布外数据和执行新颖任务时,表现出了一般的视觉推理能力,但还需要进一步的调查研究。

数据

数据!数据!数据!没有粘土我就做不了砖头!

——夏洛克·福尔摩斯

任何大型预训练模型的关键,就必须接受大量数据的训练。

对于语言模型来说,获得非常多样化的大数据集,是很容易的事。

比如,流行的 CommonCrawl存储库,就包含扫描了整个网络的2500亿个网页,极其多样化,并且包括语言翻译、问题回答等「自然演示」。

然而在计算机视觉领域,想要拥有同样规模和多样性的数据源,还差得很远。

因此,研究人员的工作核心贡献之一,就是构建这样一个统一视觉数据集(UVDv1)。

为此,研究人员利用了许多不同的视觉数据源:(1)未标注的图像,(2)具有视觉标注的图像,(3)未标注的视频,(4)具有视觉标注的视频,(5)3D合成物体。

其中,未标注的图像占了总数据的80%以上,组成了大部分的视觉世界,也提供了所需的多样性,然而代价就是,数据源质量较低。

带标注的图像分布会更受限制,但通常质量更高。

而视频数据则受到更多限制(一般是以人类为中心的活动),但它们却是时态数据的宝贵来源。

3D合成对象的渲染多样性最低,但可以提供有关3D结构行为的宝贵提示。

而最重要的是,UVDv1是一个纯粹的视觉数据集,不包含文本之类的非视觉元数据。

总之,UVDv1包含16.4亿张图像。

与LLM的另一个重要区别是,语言数据对所有数据都有一个自然的、统一的一维结构——文本流。

然而不幸的是,视觉数据的情况却并非如此,不同的来源都有不同的结构。

因此在这项工作中,研究人员提出视觉序列,作为视觉数据的统一单元,这就使得他们能够从不同的集合源,训练可扩展的模型。

视觉序列只是包含一个或多个图像的序列,后面跟随着一个句尾 (EOS) token。

图1可以显示出,各种数据源是如何划分为视觉序列的。

计算机视觉GPT时刻!UC伯克利三巨头祭出首个纯CV大模型,推理惊现AGI火花-51CTO.COM

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【GIT】.gitignore 在忽略目录中放开某目录

示例:忽略build下面的所有目录,只放开build/ast2500-default/workspace/recipes-phosphor/ 目录 .gitignore 实现文件代码 # 忽略 build 目录下的所有目录 # 并放开build/ast2500-default/workspace/recipes-phosphor/ build/* !build/ast2500-defaul…

微信小程序收款手续费怎么搞成0.2

今天,我将分享如何有效地降低日常中的收款手续费率。我们都知道,不管是微信支付还是支付宝,平台都会从中扣除一定的手续费。但你是否知道,其实手续费率是可以降低的呢?今天介绍如何申请最低手续费率为0.2%的方法&#…

梯度下降(批量梯度下降、随机梯度下降、小批量梯度下降)

在上一篇中我们推导了损失函数 J ( θ ) 1 2 m ∑ i 1 m ( y i − h θ ( x i ) ) 2 J(\theta) \frac{1}{2m} \sum_{i1}^{m} (y^{i} - h_{\theta}(x^{i}))^2 J(θ)2m1​∑i1m​(yi−hθ​(xi))2的由来,结尾讲到最小化这个损失函数来找到最优的参数 θ \theta θ&…

Mysq8l在Centos上安装后忘记root密码如何重新设置

场景 Mysql8在Windows上离线安装时忘记root密码: Mysql8在Windows上离线安装时忘记root密码-CSDN博客 如果是在Windows上忘记密码可以参考上面。 如果在Centos中安装mysql可以参考下面。 CentOS7中安装Mysql8并配置远程连接和修改密码等: CentOS7中…

element中el-table表头通过header-row-style设置样式

文章目录 一、知识点二、设置全部表头2.1、方式一2.2、方式二 三、设置某个表头四、最后 一、知识点 有些时候需要给element-ui表头设置不同样式,比如居中、背景色、字体大小等等,这时就可以用到本文要说的属性header-row-style。官网说明如下所示&…

前后端分离vue+Nodejs社区志愿者招募管理系统

1、首页 1)滑动的社区照片册 使用轮播图,对社区的活动纪念与实时事件宣传。 每个图片附有文字链接,点击跳转对应社区要闻具体页。 2)社区公告栏 日常的社区公告以及系统说明在此区域中进行说明与展示。 2、志愿活动 1)志愿活动发布 想发布需要登录 2)志愿…

Linux基础项目开发1:量产工具——输入系统(三)

前言: 前面我们已经实现了显示系统,现在我们来实现输入系统,与显示系统类似,下面让我们一起来对输入系统进行学习搭建吧 目录 一、数据结构抽象 1. 数据本身 2. 设备本身: 3. input_manager.h 二、触摸屏编程 t…

Presto基础学习--学习笔记

1,Presto背景 2011年,FaceBook的数据仓库存储在少量大型hadoop/hdfs集群,在这之前,FaceBook的科学家和分析师一直靠hive进行数据分析,但hive使用MR作为底层计算框架,是专为批处理设计的,但是随…

亿胜盈科ATR2037 无限射频前端低噪声放大器

亿胜盈科ATR2037 是一款应用于无线通信射频前端,工作频段为 0.7 到 6GHz 的超低噪声放大器。 ATR2037 低噪声放大器采用先进的 GaAs pHEMT 工艺设计和制作,ATR2037 低噪声放大器在整个工作频段内可以获得非常好的射频性能超低噪声系数。 亿胜盈科ATR203…

abapgit 安装及使用

abapgit 需求 SA[ BASIS 版本 702 及以上 版本查看路径如下: 安装步骤如下: 1. 下载abapgit 独立版本 程序 链接如下:raw.githubusercontent.com/abapGit/build/main/zabapgit_standalone.prog.abap 2.安装开发版本 2.1 在线安装 前置条…

揭秘:软件测试中Web请求的完整流程!

在软件开发的过程中,测试是一个至关重要的环节。而在现代互联网应用中,Web请求是很常见的一个测试需求。本文将介绍Web请求的完整测试流程,帮助读者更好地理解软件测试的关键步骤。 一、测试准备阶段 在进行Web请求测试之前,测试团…

Could not resolve all files for configuration ‘:app:debugCompileClasspath‘.

修改前 修改后 maven {url https://developer.huawei.com/repo/}

Scrum敏捷开发流程及支撑工具

Scrum是一种敏捷开发框架,用于管理复杂的项目。以下这些步骤构成了Scrum敏捷开发流程的核心。通过不断迭代、灵活应对变化和持续反馈,Scrum框架帮助团队快速交付高质量的产品。 以下是Scrum敏捷开发流程的基本步骤: 产品Backlog创建&#xf…

idea通过remote远程调试云服务器

引用了第三方的包,调试是看不到运行流程,于是想到了idea的remote方法 -agentlib:jdwptransportdt_socket,servery,suspendn,address9002 写一个.sh文件并启动 nohup java -jar -agentlib:jdwptransportdt_socket,servery,suspendn,address9002 ./demo.j…

Nacos多数据源插件

Nacos从2.2.0版本开始,可通过SPI机制注入多数据源实现插件,并在引入对应数据源实现后,便可在Nacos启动时通过读取application.properties配置文件中spring.datasource.platform配置项选择加载对应多数据源插件.本文档详细介绍一个多数据源插件如何实现以及如何使其生效。 注意:…

MYSQL练题笔记-高级查询和连接-连续出现的数字

一、题目相关内容 1)相关的表和题目 2)帮助理解题目的示例,提供返回结果的格式 二、自己初步的理解 其实这一部分的题目很简单,但是没啥思路啊,怎么想都想不通,还是看题解吧,中等题就是中等题…

【虚拟机】Docker基础 【二】【数据卷和挂载本地目录】

2.2.数据卷 容器是隔离环境,容器内程序的文件、配置、运行时产生的容器都在容器内部,我们要读写容器内的文件非常不方便。大家思考几个问题: 如果要升级MySQL版本,需要销毁旧容器,那么数据岂不是跟着被销毁了&#x…

机器学习---线性回归算法

1、什么是回归? 从大量的函数结果和自变量反推回函数表达式的过程就是回归。线性回归是利用数理统计中回归分析来确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法。 2、一元线性回归 3、多元线性回归 如果回归分析中包括两个或两个以上的自变量&a…

详解前后端交互时PO,DTO,VO模型类的应用场景

前后端交互时的数据传输模型 前后端交互流程 前后端交互的流程: 前端与后端开发人员之间主要依据接口进行开发 前端通过Http协议请求后端服务提供的接口后端服务的控制层Controller接收前端的请求Contorller层调用Service层进行业务处理Service层调用Dao持久层对数据持久化 …

Android : AndroidStudio开发工具优化

1.开启 gradle 单独的守护进程 Windows: 进入目录 C:\Users\Administrator\.gradle 创建文件: gradle.properties # Project-wide Gradle settings. # IDE (e.g. Android Studio) users: # Settings specified in this file will override any Gradle s…