GiT: Towards Generalist Vision Transformer through Universal Language Interface
GiT: Towards Generalist Vision Transformer through Universal Language Interface
相关链接:arxiv github
关键字:Generalist Vision Transformer (GiT)、Universal Language Interface、Multi-task Learning、Zero-shot Transfer、Transformer
摘要
本文提出了一个简单而有效的框架,称为GiT,仅使用普通的ViT即可应用于各种视觉任务。受大型语言模型(LLMs)中广泛使用的多层Transformer架构(例如GPT)的普适性启发,我们寻求将其扩展应用作为强大的视觉基础模型(VFM)。然而,与语言建模不同,视觉任务通常需要特定的模块,如检测中的边界框头和分割中的像素解码器,这极大地阻碍了强大的多层Transformer在视觉领域中的应用。为了解决这个问题,我们设计了一个通用语言接口,使得成功的自回归解码能够熟练地统一各种视觉任务,从图像级别理解(例如标题生成)到稀疏感知(例如检测),再到密集预测(例如分割)。基于上述设计,整个模型仅由一种ViT组成,无需任何特定的添加,提供了显著的架构简化。GiT是一个多任务视觉模型,跨五个代表性基准联合训练而无需任务特定的微调。有趣的是,我们的GiT在通用表现方面树立了新的基准,并促进了任务之间的相互提升,与孤立训练相比有了显著的改善。这反映了LLMs中观察到的类似影响。通过进一步丰富27个数据集的训练,GiT在多种任务上实现了强大的零样本结果。由于它的设计简单,这种范式有望缩小视觉和语言之间的架构差距。代码和模型将在 https://github.com/Haiyang-W/GiT 上提供。
核心方法

GiT 的核心方法包括:
- 通用语言接口:设计了能够将图像和语言统一表示为标准词汇的token序列,简化了对于各种视觉任务的处理。
- 多任务模板和并行解码:提出了一种框架将图像划分为多个子区域,并通过并行解码来同时处理这些子任务,提高了处理效率。
- 模型架构:采用多层Transformer架构,并且在不依赖于视觉特定组件的情况下处理各种视觉任务,与大型语言模型架构一致。
实验说明
Object Detection (目标检测)
| Model | Specific Modules | Num | #Params | AP | AP50 | AP75 |
|---|---|---|---|---|---|---|
| Faster R-CNN-FPN | ResNet,RPN | 5 | 42M | 40.3 | - | - |
| GiT-Bsingle-task | None | 1 | 131M | 45.1 | 62.7 | 49.1 |
| GiT-Bmulti-task | None | 1 | 131M | 46.7 | 64.2 | 50.7 |
| GiT-Hmulti-task | None | 1 | 756M | 52.9 | 71.0 | 57.8 |
GiT 在目标检测任务中表现出色,即使在没有特定任务模块的情况下,其多任务训练的模型(GiT-Hmulti-task)也能达到最优表现。
Instance Segmentation (实例分割)
| Model | Specific Modules | Num | #Params | AP | AP50 | AP75 |
|---|---|---|---|---|---|---|
| Mask R-CNN | ResNet,RPN | 6 | 46M | 41.0 | 61.7 | 44.9 |
| GiT-Bsingle-task | None | 1 | 131M | 31.4 | 54.8 | 31.2 |
| GiT-Bmulti-task | None | 1 | 131M | 31.9 | 56.4 | 31.4 |
| GiT-Hmulti-task | None | 1 | 756M | 35.8 | 62.6 | 35.6 |
即使在实例分割任务中,GiT 的多任务训练模型仍然展示了突出的改善和潜力。
Semantic Segmentation (语义分割)
| Model | Specific Modules | Num | #Params | mIoU(SS) |
|---|---|---|---|---|
| DeepLabV3+ | ResNet,Decoder | 3 | 63M | 80.9 |
| GiT-Bsingle-task | None | 1 | 131M | 47.7 |
| GiT-Bmulti-task | None | 1 | 131M | 47.8 |
| GiT-Hmulti-task | None | 1 | 756M | 52.4 |
语义分割任务中,GiT 模型也能够在没有专门模块的情况下取得与专家系统相媲美的成绩。
Captioning (图像标题生成)
| Model | Specific Modules | Num | #Params | BLEU-4 | CIDEr |
|---|---|---|---|---|---|
| VL-T5 | Faster R-CNN | 3 | 440M | - | 116.5 |
| GiT-Bsingle-task | None | 1 | 131M | 33.7 | 107.9 |
| GiT-Bmulti-task | None | 1 | 131M | 35.4 | 112.6 |
| GiT-Hmulti-task | None | 1 | 756M | 36.2 | 118.2 |
图像标题生成任务显示,GiT 在多任务的训练下,取得了一致的优良表现。
结论
本论文介绍了一个基于简单的多层Transformer的通用视觉建模范式,该模型能够集成各种视觉中心任务,尤其是经常被忽视的对象级和像素级任务。类似于语言模型,所有视觉任务都通过通用语言接口结构化为自回归框架。GiT模型展现了与LLM类似的多任务能力,实现了多个基准上最好和相互增强的全面性能。也展现了强大的泛化能力,在27个公开可用数据集上的训练中实现了令人信服的零样本和少样本性能。
GiT在多个视觉任务中表现出色,不仅构建了一种新的通用视觉Transformer和语言接口的范式,而且还展示了跨任务增强和强大的零样本学习能力,为未来的研究提供了新的视角。
相关文章:
GiT: Towards Generalist Vision Transformer through Universal Language Interface
GiT: Towards Generalist Vision Transformer through Universal Language Interface 相关链接:arxiv github 关键字:Generalist Vision Transformer (GiT)、Universal Language Interface、Multi-task Learning、Zero-shot Transfer、Transformer 摘要 …...
纽约时报起诉OpenAI和微软将决定未来LLM的发展
《纽约时报》诉OpenAI和微软案对未来LLM发展的重大影响 案件背景 《纽约时报》(NYT)近期对OpenAI和微软提起诉讼,指控OpenAI未经授权使用其受版权保护的内容来训练其AI模型,包括ChatGPT。NYT声称,OpenAI使用了数百万篇其文章,这…...
IntelliJ IDEA 面试题及答案整理,最新面试题
IntelliJ IDEA中的插件系统如何工作? IntelliJ IDEA的插件系统工作原理如下: 1、插件架构: IntelliJ IDEA通过插件架构扩展其功能,插件可以添加新的功能或修改现有功能。 2、安装和管理: 通过IDEA内置的插件市场下载…...
T1.数据库MySQL
二.SQL分类 2.1 DDL 2.1.1数据库操作 1). 查询所有数据库 show databases ; 2). 查询当前数据库 select database(); 3)创建数据库 create database [if not exists] 数据库名 [default charset 字符集] [collate 排序规则] ; 4)删除数据库 drop database …...
idea中database的一些用法
1、查看表结构 方法1,右键,选这个 方法2 双击表后,看到数据,点DDL 方法3 写SQL时,把鼠标放在表名上,可以快速查看表结构 2、表生成对应的实体类 表中右键,选择这2个,选择生成的路…...
外卖点餐系统 |基于springboot框架+ Mysql+Java+JSP技术+Tomcat的外卖点餐系统 设计与实现(可运行源码+设计文档)
推荐阅读100套最新项目 最新ssmjava项目文档视频演示可运行源码分享 最新jspjava项目文档视频演示可运行源码分享 最新Spring Boot项目文档视频演示可运行源码分享 目录 前台功能效果图 骑手功能模块 商家功能模块 管理员功能登录前台功能效果图 用户功能模块 系统功能设…...
挑战杯 机器视觉的试卷批改系统 - opencv python 视觉识别
文章目录 0 简介1 项目背景2 项目目的3 系统设计3.1 目标对象3.2 系统架构3.3 软件设计方案 4 图像预处理4.1 灰度二值化4.2 形态学处理4.3 算式提取4.4 倾斜校正4.5 字符分割 5 字符识别5.1 支持向量机原理5.2 基于SVM的字符识别5.3 SVM算法实现 6 算法测试7 系统实现8 最后 0…...
Node.js 自带的 http 模块来实现一个简单的本地服务器
1.创建一个 server.js 文件: const http require(http); const fs require(fs); const path require(path);const server http.createServer((req, res) > {// 获取请求的文件路径const filePath path.join(__dirname, dist, req.url);// 读取文件内容并返…...
c++ 设计模式模版方法
最初版本 #pragma onceclass Library { public:void Step1(){}void Step3(){}void Step5(){} };class Appliacation { public:void Step2(){}void Step4(){} };int main() {Library lib;Appliacation app;lib.Step1();app.Step2();lib.Step3();app.Step4();lib.Step5(); }最终…...
踏上机器学习的征程:探索基础概念与学习模式
摘要: 机器学习是当今科技领域最具前沿和应用价值的技术之一,它正在改变我们对数据的理解和利用方式。本文将引导读者深入了解机器学习的基本概念,包括监督学习、无监督学习和半监督学习等,并通过生动的例子解释这些概念,帮助读者迈出学习机器学习的第一步。 导言: 随着…...
基于YOLO的自动驾驶目标检测研究综述
摘要:自动驾驶是人工智能发展领域的一个重要方向,拥有良好的发展前景,而实时准确的目标检测与识别是保证自动驾驶汽车安全稳定运行的基础与关键。回顾自动驾驶和目标检测技术的发展历程,综述了YOLO算法在车辆、行人、交通标志、灯光、车道线等目标检测上的应用,同时对比分…...
深度学习-解读GoogleNet深度学习网络
深度学习-解读GoogleNet深度学习网络 深度学习中,经典网络引领一波又一波的技术革命,从LetNet到当前最火的GPT所用的Transformer,它们把AI技术不断推向高潮。2012年AlexNet大放异彩,它把深度学习技术引领第一个高峰,打…...
【LeetCode: 2684. 矩阵中移动的最大次数 + dfs】
🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…...
第五节:使用SMB开发WebSocket通信
一、概述 本节主要讲解在SMB中如何进行websocket快速开发,实现客户端连接、关闭、消息通讯等功能。 示例下载:https://download.csdn.net/download/lllllllllluoyi/88949743 二、创建WebSocket服务器 1、在csdnProject工程中新建一个消息流。 添加W…...
Nginx和Ribbon实现负载均衡的区别
Nginx和Ribbon的区别 1. Nginx服务器端负载均衡: 1、Nginx是客户端所有请求统一交给nginx,由nginx进行实现负载均衡请求转发,属于服务器端负载均衡。即请求有nginx服务器端进行转发。 3、Nginx是服务端的负载均衡,Ribbon是客户端…...
流畅的Python(十九)-动态属性和特性
一、核心要义 在Python中,数据的属性和处理数据的方法,统称属性。方法,只是可调用的属性。除了这两者之外,我们还可以创建特性(property),在不改变类接口的前提下,使用存取方法(即读值方法和设值方法)修改数据属性。 二、代码示例 0、相关知识点 #!/usr/bin/env…...
确保云原生部署中的网络安全
数字环境正在以惊人的速度发展,组织正在迅速采用云原生部署和现代化使用微服务和容器构建的应用程序(通常运行在 Kubernetes 等平台上),以推动增长。 无论我们谈论可扩展性、效率还是灵活性,对于努力提供无与伦比的用…...
【分布式websocket 】前端vuex管理客户端消息crud!使用localStorage来存储【第19期】
前言 聊天系统客户端是要存储消息的,因为所有所有的历史消息都从服务器拉的话一方面服务器压力大,另一方面也耗费用户流量。所以客户端存储消息是势在必行的。如何存储呢上一篇文章也写了,大概就是浏览器的话是localStorage或者IndexedDB。然…...
venv uvicorn python 虚拟服务器外网无法访问
python -m venv .venv source ./.venv/bin/activate pip install -r requirements.txt ./run.sh source ./.venv/bin/activate uvicorn main:app --reload 虚拟web服务器外网访问控制台启动命令用以下代码启动 uvicorn main:app --host 0.0.0.0 --port 8501 --reload 启动到后…...
一款博客网站源码
一款博客网站源码 源码软件库 为大家内置了主题 清爽又强大真正的永久可用的一条源码,该版本为整合版本,内置了Joe主题,搭建后直接启用即可~ 安装环境要求: PHP 7.2 以上 MySQL, PostgreSQL, SQLite 任意一种数据库支持ÿ…...
Zustand 状态管理库:极简而强大的解决方案
Zustand 是一个轻量级、快速和可扩展的状态管理库,特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...
【JVM】- 内存结构
引言 JVM:Java Virtual Machine 定义:Java虚拟机,Java二进制字节码的运行环境好处: 一次编写,到处运行自动内存管理,垃圾回收的功能数组下标越界检查(会抛异常,不会覆盖到其他代码…...
UDP(Echoserver)
网络命令 Ping 命令 检测网络是否连通 使用方法: ping -c 次数 网址ping -c 3 www.baidu.comnetstat 命令 netstat 是一个用来查看网络状态的重要工具. 语法:netstat [选项] 功能:查看网络状态 常用选项: n 拒绝显示别名&#…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序
一、开发准备 环境搭建: 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 项目创建: File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...
如何为服务器生成TLS证书
TLS(Transport Layer Security)证书是确保网络通信安全的重要手段,它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书,可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...
深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南
🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...
Unity中的transform.up
2025年6月8日,周日下午 在Unity中,transform.up是Transform组件的一个属性,表示游戏对象在世界空间中的“上”方向(Y轴正方向),且会随对象旋转动态变化。以下是关键点解析: 基本定义 transfor…...
CppCon 2015 学习:REFLECTION TECHNIQUES IN C++
关于 Reflection(反射) 这个概念,总结一下: Reflection(反射)是什么? 反射是对类型的自我检查能力(Introspection) 可以查看类的成员变量、成员函数等信息。反射允许枚…...
Python第七周作业
Python第七周作业 文章目录 Python第七周作业 1.使用open以只读模式打开文件data.txt,并逐行打印内容 2.使用pathlib模块获取当前脚本的绝对路径,并创建logs目录(若不存在) 3.递归遍历目录data,输出所有.csv文件的路径…...
EEG-fNIRS联合成像在跨频率耦合研究中的创新应用
摘要 神经影像技术对医学科学产生了深远的影响,推动了许多神经系统疾病研究的进展并改善了其诊断方法。在此背景下,基于神经血管耦合现象的多模态神经影像方法,通过融合各自优势来提供有关大脑皮层神经活动的互补信息。在这里,本研…...
