LVM Sequential Modeling Enables Scalable Learning for Large Vision Models

news2024/11/25 21:29:47

LVM: Sequential Modeling Enables Scalable Learning for Large Vision Models

TL; DR:本文提出一种纯视觉的序列建模方法 LVM,不需要任何文本数据。通过 visual sentences 的形式,统一图像/视频/标注/3D数据,使用 VQGAN 将视觉数据编码为 token,然后进行预测下一个 token 的自回归式训练。在测试时,通过构建合适的 visual prompt,可以处理各种各样的视觉任务,展现出一定的视觉智能。

引言

本文定义了一种称为 “visual sentences” 的通用格式,它既可以表征原始的图像/视频数据,也可以表征带标注的视觉数据,如分割图、深度图重建等。并且,visual sentences 只需要图像像素本身,而无需任何其他 meta 数据。作者构建了一个含有 420B 视觉 token 的超大数据集。把视觉 token 组织成 visual sentences 序列之后,模型的训练目标就是自回归式的预测序列中的下一个 token,通过交叉熵函数来优化。实验表明,在增大模型参数量时,LVM 的性能也稳步上升,具有良好的可扩展性。

数据

为了将各种各样的视觉数据(图片、视频、3D、标注图)统一起来,本文提出了 visual sentences 的概念,将有连续或相近语义的图像放到同一个 visual sentence 中。下图具体展示了各种视觉数据组织成 visual sentence 的方式,文中也有详尽的描写,这里不逐个说了。总之关键就是把语义连续或相近的视觉数据,放到一起,让模型学习到某种变换(时序/位置)

在这里插入图片描述

方法

采用两阶段的训练方式,1) 先训练一个大型的视觉 tokenizer(该阶段的训练仅需在单张图像上进行);2) 训练自回归的 transformer 模型,预测下一个 token (该阶段需要 visual sentences 序列)

在这里插入图片描述

Image Tokenization

transformer 最开始提出时是用于处理自然语言这种序列数据,而图像数据天然不是序列数据。要使用 transformer 来处理图像,需要先转换成 token,一般有两种做法:一是直接将图像网格切分成 patch,映射为特征,并按照扫描序来排成一个序列,如 ViT;二是将网格图像切成 patch 提取特征之后,将特征聚类离散化到一个 codebook 中,然后排成一个序列,如 vqvae、vqgan 等。

后一种做法的好处是能将天然连续的图像数据离散化为 codebook 中的有限个的 token,这里的 codebook 就相当于 NLP 中的词表,特征提取器(如 vqgan)就相当于 NLP 中的 tokenizer。从而,就可以用交叉熵损失来进行自回归式的预测下一个 token 的训练。

这里,LVM 要做视觉自回归预训练,自然选择的是第二种做法,具体来说,就是 vqgan。vqgan 由编码器和解码器组成,他们分别负责将真实图像编码为 token,和将 token 解码回真实图像。此外,vqgan 还包括一个量化层,用于将输入序列中的各个 token 映射到 codebook 中。

Sequence Modeling of Visual Sentences

第一阶段 vqgan 训练完成之后,使用 vqgan 提取每张图像的 tokens(256 个),然后将多张图像的 tokens 拼接起来,就是所谓的 visual sentences。这里值得一提的是,LVM 没有使用额外的特殊 token 来标识不同的任务,期望能得到更好的泛化性能。本阶段即训练一个 causal 的 transformer(LVM 采用了与 LLaMA 相同的结构),进行自回归式的预测下一个 token 的训练。

实验

可以看到,通过构建合适的 visual prompt,LVM 的确能完成各式各样的视觉任务。如关键点检测、语义分割等。

在这里插入图片描述

LVM 甚至能做一些智力题,纯视觉大模型展示出了一定的智能。作者称这为 “Sparks of AGI”。(AGI 的火花?个人感觉有点过了 hh

在这里插入图片描述

scaling 效果也不错,随着模型参数量堆上来,性能有明显的提升。

在这里插入图片描述

总结

LVM 是一篇很有价值的工作,找到一种方式统一了视觉数据,并进行预测下一个视觉 token 的自回归式训练。证明了不借助其他模态的数据(如文本),纯视觉视觉也有机会涌现出智能。

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

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

相关文章

网上平台交易伦敦金靠谱吗?

随着科技的发展,网络交易已经成为了我们生活中的一部分。在金融领域,许多投资者也早已开始转向在线交易平台进行投资交易,其中就包括伦敦金。然而,面对众多的网上交易平台,投资者们往往会产生这样的疑问:“…

4.3 C++对象模型和this指针

4.3 C对象模型和this指针 4.3.1 成员变量和成员函数分开存储 在C中&#xff0c;类内的成员变量和成员函数分开存储 只有非静态成员变量才属于类的对象上 #include <iostream>class Person { public:Person() {mA 0;} //非静态成员变量占对象空间int mA;//静态成员变量…

【spark】spark内核调度(重点理解)

目录 spark内核调度DAGDAG的宽窄依赖和阶段划分内存迭代计算面试题Spark是怎样做内存计算的&#xff1f;DAG的作用是什么&#xff1f;Stage阶段划分的作用&#xff1f;Spark为什么比MapReduce快 spark并行度如何设置并行度&#xff1a;spark.default.parallelism集群中如何规划…

P1 H264码流结构分析 (上)

目录 前言 01 什么是码流结构 02 H264帧类型的区别 03 片slice 前言 从本章开始我们将要学习嵌入式音视频的学习了 &#xff0c;使用的瑞芯微的开发板 &#x1f3ac; 个人主页&#xff1a;ChenPi &#x1f43b;推荐专栏1: 《C_ChenPi的博客-CSDN博客》✨✨✨ &#x1f525…

官方指定Jmeter配置JVM堆内存方式

1.概述 在使用Jmeter做性能测试过程中&#xff0c;可能会应为默认设置的堆内存值较小出现堆内存溢出问题&#xff0c;此时解决的方式有两种&#xff0c;分布式测试和调大堆内存。下面介绍官方推荐调整堆内存方法。 2.调整Jmeter堆内存 2.1.介绍官方推荐堆内存调整方法(jmete…

IDEA Community html文件里的script标签没有syntax highlighting的解决方案

在网上找到的解决方法有的是针对Ultimate版本才可以下载的plugin&#xff0c;对我所用的Community版本无法生效&#xff0c;找了一圈最后在stackoverflow上找到一个有效的方案&#xff0c;给需要的小伙伴分享一下&#xff1a;IntelliJ Community Edition: Javascript syntax hi…

Jenkins 执行远程脚本的插件—SSH2 Easy

SSH2 Easy 是什么&#xff1f; SSH2 Easy 是一个 Jenkins 插件&#xff0c;它用于在 Jenkins 构建过程中通过 SSH2 协议与远程服务器进行交互。通过该插件&#xff0c;用户可以在 Jenkins 的构建过程中执行远程命令、上传或下载文件、管理远程服务器等操作。 以下是 SSH2 Eas…

7-4 JAVA-水仙花数(Java for PTA)

水仙花数是指一个N位正整数&#xff08;7≥N≥3&#xff09;&#xff0c;它的每个位上的数字的N次幂之和等于它本身。例如&#xff1a;153135333。 要求编写程序&#xff0c;计算所有N位水仙花数。 输入格式: 输入一个正整数N&#xff08;3≤N≤7&#xff09;。 输出格式: …

java并发编程四 Monitor 概念,api介绍与线程状态转换

Monitor 概念 Java 对象头 以 32 位虚拟机为例子&#xff1a; 普通对象 数组对象 其中 Mark Word 结构为 64 位虚拟机 Mark Word 小故事 故事角色 老王 - JVM小南 - 线程小女 - 线程房间 - 对象房间门上 - 防盗锁 - Monitor房间门上 - 小南书包 - 轻量级锁房间门上 -…

Elasticsearch常见面试题

文章目录 1.简单介绍下ES&#xff1f;2.简单介绍当前可以下载的ES稳定版本&#xff1f;3.安装ES前需要安装哪种软件&#xff1f;4.请介绍启动ES服务的步骤&#xff1f;5.ES中的倒排索引是什么&#xff1f;6. ES是如何实现master选举的&#xff1f;7. 如何解决ES集群的脑裂问题8…

本地文件内容搜索神器AnyTXT Searcher如何搭建与远程访问

文章目录 前言1. AnyTXT Searcher1.1 下载安装AnyTXT Searcher 2. 下载安装注册cpolar3. AnyTXT Searcher设置和操作3.1 AnyTXT结合cpolar—公网访问搜索神器3.2 公网访问测试 4. 固定连接公网地址 前言 你是否遇到过这种情况&#xff0c;异地办公或者不在公司&#xff0c;想找…

ubuntu qt 源码编译

官方源码下载地址 : 源码地址 选择要下载的版本 dmg结尾的是MacOS系统里使用的Qt库&#xff0c;qt-everywhere-opensource-src-4.7.0是Qt源码包&#xff0c;有zip和tar.gz两个压缩格式的&#xff0c;两个内容是一样的&#xff0c;只是zip一般在Windows下比较流行&#xff0c;…

【100个Cocos实例】快要圣诞节了,给大家支个招!

引言 Mask遮罩组件的一些简单实例 在游戏开发中常常需要在UI界面上展示玩家的头像或者Logo&#xff0c;通常都会是正方形。 偶尔也会有一些奇形怪状的需求&#xff0c;例如五边形、六边形、心形等等。 本文将介绍一下在Cocos游戏开发中Mask遮罩组件的一些简单实例&#xff…

九州未来向开放原子开源基金会捐赠OpenV2X,共建繁荣开源生态

12月16日&#xff0c;以“一切为了开发者”为主题的开放原子开发者大会在无锡成功举办。会上&#xff0c;九州未来将OpenV2X车路协同开源项目正式捐赠给开放原子开源基金会&#xff0c;并签署项目捐赠协议&#xff0c;通过开源共创的方式&#xff0c;携手开源伙伴共同打造车路协…

[微服务 ]微服务集成中的3个常见缺陷,以及如何避免它们

微服务风靡一时。他们有一个有趣的价值主张&#xff0c;即在与多个软件开发团队共同开发的同时&#xff0c;将软件快速推向市场。因此&#xff0c;微服务是在扩展您的开发力量的同时保持高敏捷性和快速的开发速度。 简而言之&#xff0c;您将系统分解为微服务。分解并不是什么新…

RLAIF方法与传说中的函数‘Q‘,揭露OpenAI那不为人知的Qstar计划

早晨刚起来,看群里新哥转了这个帖子: 帖子不长,但是基本是爆炸类的新闻了!这个应该也就是Sam之前被董事会诟病的所谓隐瞒了的真相! 在讲解这个帖子之前,先要普及2个概念: 1- RLAIF: 不是TGIF,虽然今天确实是周五 RLAIF是Google今年9月新出来的论文,论文…

智能优化算法应用:基于堆优化算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于堆优化算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于堆优化算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.堆优化算法4.实验参数设定5.算法结果6.参考文…

tcpdump抓包技巧

1. 常见的抓包工具 1.1 tcpdump 是Linux下常用的抓包工具&#xff0c;它是一个命令行工具&#xff0c;可以抓取和Wireshark类似的数据&#xff0c;而且保存的数据包&#xff0c;可以放到Wireshark中分析。如果你的Linux服务器需要抓包分析问题&#xff0c;它是一个非常好的选择…

算法基础之约数之和

约数之和 核心思想&#xff1a; #include<iostream>#include<algorithm>#include<vector>#include<unordered_map>using namespace std;typedef long long LL;const int N 110 , mod 1e97;int main(){int n;cin>>n;unordered_map<int,int&…

使用opencv实现图像中几何图形检测

1 几何图形检测介绍 1.1 轮廓(contours) 什么是轮廓&#xff0c;简单说轮廓就是一些列点相连组成形状、它们拥有同样的颜色、轮廓发现在图像的对象分析、对象检测等方面是非常有用的工具&#xff0c;在OpenCV 中使用轮廓发现相关函数时候要求输入图像是二值图像&#xff0c;这…