多模态大模型intern-vl 1.5 论文解读:How Far Are We to GPT-4V?

论文:https://arxiv.org/pdf/2404.16821

目录

1 介绍

3.1 整体架构

3.2 强大的视觉编码器

InternViT-6B-448px-V1.2

InternViT-6B-448px-V1.5

3.3 动态高分辨率

动态宽高比匹配

图像分割与缩略图


InternVL 1.5,这是一款开源的多模态大语言模型(MLLM),旨在弥合开源模型与专有商业模型在多模态理解能力上的差距。引入了三个简单的改进:

  1. 强大的视觉编码器:我们探索了一种大规模视觉基础模型——InternViT-6B的持续学习策略,提升了其视觉理解能力,使其可以在不同的大语言模型中进行转移和重用。
  2. 动态高分辨率:我们根据输入图像的宽高比和分辨率,将图像划分为1到40个448×448像素的块,支持高达4K分辨率的输入。
  3. 高质量双语数据集:我们精心收集了一个高质量的双语数据集,覆盖了常见场景和文档图像,并用中英文问答对进行了标注,显著提升了在OCR和中文相关任务中的性能。

通过一系列基准测试和对比研究对InternVL 1.5进行了评估。与开源和专有商业模型相比,InternVL 1.5表现出竞争力,在18个多模态基准测试中有8项达到了最先进的结果。

1 介绍

大语言模型(LLMs)在推动通用人工智能(AGI)系统方面发挥了重要作用,展现了在处理开放世界语言任务中的非凡能力。借助LLMs的进步,多模态大语言模型(MLLMs)[5, 18, 23, 62, 63, 84, 92, 116, 142]取得了显著进展,促进了复杂的视觉语言对话和交互,弥合了文本信息和视觉信息之间的差距。尽管取得了这些成就,开源模型与专有商业模型之间仍然存在明显的能力差距,例如GPT-4V [87]、Gemini系列[92, 107]和Qwen-VL-Max [5]。

这种差距主要体现在以下三个方面:

  1. 参数规模:最近的专有商业MLLMs [5, 87, 92, 102]通常规模不小于1000亿参数,而开源模型通常采用300百万参数的视觉基础模型(VFM),与70亿或130亿参数的大语言模型集成。
  2. 图像分辨率:专有商业模型通常采用动态分辨率方法,保留原始宽高比以促进详细的场景和文档理解。相比之下,开源模型通常以固定分辨率进行训练[18, 23, 62, 71, 117, 142],例如336×336和448×448,这导致其能力相对于商业模型存在显著差距。
  3. 多语言能力:专有模型通常利用大量多语言数据集进行训练,增强其在多种语言上的表现。然而,开源模型主要使用英文数据,依赖于LLMs的零样本能力来处理其他语言,例如LLaVA-NeXT [64]。这导致在非英语场景理解和OCR任务中的表现不佳。

为弥合这一差距,我们介绍了InternVL 1.5,集成了三大改进以提升其性能和可用性:

  1. 持续学习方法:我们对大规模视觉基础模型——InternViT-6B [18]实施了持续学习方法,利用高质量的图像-文本数据进行优化。这一过程不仅增强了模型理解视觉内容的能力,还提高了其在各种LLMs中的适应性。此外,使用InternLM2-20B [11]作为语言基础模型也提供了强大的初始语言处理能力。
  2. 动态高分辨率策略:我们采用了一种动态高分辨率策略,根据图像的宽高比和分辨率,将图像分割成448×448像素的块,块的数量从1到40不等(即4K分辨率)。为了捕捉全局上下文,我们还包括了一个缩略图视图。
  3. 高质量双语数据集:我们收集了多样的公共数据集,涵盖高质量的自然场景、图表、文档和中英文对话。此外,我们开发了一个数据翻译管道,使用开源LLMs,可以轻松扩展到更多语言。

通过这些改进,InternVL 1.5在多模态理解能力上取得了显著提升,缩小了与专有商业模型之间的差距。

这些设计赋予了我们的模型若干优势:

  1. 灵活的分辨率:类似于GPT-4V [87]中提供的“低”或“高”模式,InternVL 1.5允许用户为图像选择最佳分辨率,例如使用低分辨率进行场景主体描述,使用高分辨率(高达4K分辨率)进行文档理解,有效平衡计算效率与细节保留。
  2. 双语能力:InternVL 1.5展现了强大的双语能力,能够熟练处理中英文的多模态感知和理解任务。特别是在与中文相关的任务中,我们的模型通常优于领先的商业模型GPT-4V [87]。
  3. 强大的视觉表示:通过实施持续学习策略,我们增强了InternViT-6B [18]的视觉表示能力,使其对灵活的输入分辨率和各种视觉领域具有鲁棒性。得益于InternViT-6B的大量参数,我们的模型在视觉表示方面达到了与超过200亿参数的大语言模型相媲美的水平。这种视觉和语言处理之间的协同作用赋予了我们的系统强大的多模态能力。

我们在18个具有代表性的多模态基准测试上评估了InternVL 1.5,这些基准测试分为四个特定组别:OCR相关、通用多模态、数学和多轮对话基准测试。与开源和专有模型相比,InternVL 1.5表现出竞争力,在18个基准测试中有8项达到了最先进的结果。值得注意的是,如图1所示,它甚至在四个特定基准测试中超越了领先的专有模型,如Grok-1.5V [125]、GPT-4V [87]、Claude-3 Opus [3]和Gemini Pro 1.5 [92],特别是在OCR相关的数据集如TextVQA [100]、ChartQA [81]和DocVQA [82]中。这一评估表明,InternVL 1.5有效缩小了开源模型与领先商业模型之间的差距。我们希望我们的方法和开源模型权重能够为MLLM社区的发展做出贡献。

3.1 整体架构

如图3所示,InternVL 1.5采用了一种类似于广泛使用的开源多模态大语言模型(MLLMs)的架构,特别是“ViT-MLP-LLM”配置,这在多项现有研究中被引用[18, 23, 62–64, 71, 142]。我们在实现这一架构时,集成了一个预训练的InternViT-6B[18]和一个预训练的InternLM2-20B[11],并使用了一个随机初始化的MLP投影器。

在训练过程中,我们实施了一种动态分辨率策略,根据输入图像的宽高比和分辨率,将图像划分为1到12个448×448像素的块。在测试时,这可以零样本扩展到40个块(即4K分辨率)。为了增强高分辨率的可扩展性,我们简单地采用了一种像素洗牌操作,将视觉标记的数量减少到原来的四分之一。因此,在我们的模型中,一个448×448的图像由256个视觉标记表示。

3.2 强大的视觉编码器

在现有的多模态大语言模型(MLLMs)中[5, 23, 62–64, 78, 142],最常用的视觉基础模型通常是对比预训练的ViT[18, 36, 91, 136]。然而,这些ViT通常在固定低分辨率(例如224×224)下对从互联网上抓取的图像-文本对进行训练,因此在处理高分辨率图像或来自互联网以外来源(如文档图像)的图像时,其性能会下降。

InternViT-6B-448px-V1.2

为了解决这个问题,InternVL 1.2更新中对InternViT-6B模型进行了持续预训练。首先,我们发现倒数第四层的特征在多模态任务中表现最佳,因此我们直接舍弃了最后三层的权重,将InternViT-6B从48层减少到45层。然后,我们将InternViT-6B的分辨率从224增加到448,并将其与Nous-Hermes-2-Yi-34B[130]集成。为了使模型具备高分辨率处理和OCR能力,我们在训练中同时激活了视觉编码器和MLP,使用了图像描述[10, 17, 90, 93, 100]和OCR特定的数据集[29, 94]的混合数据。这一过程中新衍生的InternViT权重被发布为InternViT-6B-448px-V1.2。

InternViT-6B-448px-V1.5

InternVL 1.5的开发继续了InternViT-6B-448px-V1.2的强大基础预训练。在此次更新中,训练图像的分辨率从固定的448×448扩展到动态的448×448,基本块大小为448×448,块的数量从1到12不等。此外,我们还增强了预训练数据集的数据规模、质量和多样性,使我们1.5版本的模型具备强大的鲁棒性、OCR能力和高分辨率处理能力。动态分辨率和训练数据集的详细信息在第3.3和3.4节中描述。

值得注意的是,尽管InternVL 1.5中的大语言模型从Nous-Hermes-2-Yi-34B更换为InternLM2-20B[11],但InternViT仍然与新的大语言模型保持了出色的兼容性和可移植性。这表明,InternViT-6B在MLLMs预训练阶段学习到的视觉特征具有广泛的适用性,并不紧密依赖于特定的大语言模型。

3.3 动态高分辨率

受UReader [127]的启发,我们采用了一种动态高分辨率训练方法,有效适应输入图像的不同分辨率和宽高比。该方法利用将图像分割成块的灵活性,增强了模型处理详细视觉信息的能力,同时适应多样的图像分辨率。其主要步骤包括:

动态宽高比匹配

如图4所示,为了在处理过程中保持自然的宽高比,我们从预定义的一组宽高比中动态匹配最佳宽高比。由于计算资源有限,我们在训练时允许最多12个块。因此,该集合包括由1到12个块形成的所有35种可能的宽高比组合,例如{1:1, 1:2, 2:1, 3:1, ..., 2:6}。在匹配过程中,对于每个输入图像,我们计算其宽高比,并通过测量绝对差异将其与35种预定义的宽高比进行比较。如果多个预定义的宽高比匹配(例如,1:1和2:2),我们优先选择不超过输入图像面积两倍的宽高比,从而防止低分辨率图像的过度放大。

图像分割与缩略图

一旦确定了合适的宽高比,图像将被调整到相应的分辨率。例如,一个800×1300的图像将被调整为896×1344。调整后的图像然后被分割成448×448像素的块。除了这些块之外,我们还包括整个图像的缩略图,以捕捉全局上下文。这个缩略图被缩小到448×448,帮助模型理解整体场景。因此,在训练过程中,视觉标记的数量从256到3,328不等。在测试期间,块的数量可以增加到最多40个,导致10,496个视觉标记。

这种动态高分辨率方法不仅提高了模型处理高分辨率图像的能力,还增强了其对不同宽高比图像的适应性。

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

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

相关文章

SQL Zoo 9-.Window functions

以下数据均来自SQL Zoo 1.Show the lastName, party and votes for the constituency S14000024 in 2017.(显示2017年选区“S14000024”的姓氏、政党和选票) SELECT lastName, party, votesFROM geWHERE constituency S14000024 AND yr 2017 ORDER BY…

Spring Boot - 通过ServletRequestHandledEvent事件实现接口请求的性能监控

文章目录 概述1. ServletRequestHandledEvent事件2. 实现步骤3. 优缺点分析4. 测试与验证小结其他方案1. 自定义拦截器2. 性能监控平台3. 使用Spring Boot Actuator4. APM工具 概述 在Spring框架中,监控接口请求的性能可以通过ServletRequestHandledEvent事件实现。…

c语言11天笔记

函数的概述 函数:实现一定功能的,独立的代码模块。我们的函数一定是先定义,后使用。 使用函数的优势: 1. 我们可以通过函数提供功能给别人使用。当然我们也可以使用别人提供的函数,减少代码量。 2. 借助函数可以减…

基于单片机的智能风扇设计

摘 要: 传统风扇无法根据周围环境的温度变化进行风速的调整,必须人为地干预才能达到需求 。 本文基于单片机的智能风扇主要解决以往风扇存在的问题,其有两种工作模式: 手动操作模式和自动运行模式,人们可以根据需要进行模式选择。 在自动运行…

Leetcode每日刷题之面试题01.01.判断字符是否唯一

在学习编程语言的过程中相信大部分同学刚开始接触的循环语句都是 for 循环,今天我将介绍一个比较简洁的循环语句,可以帮助我们减少些许的代码量,也更加快捷,那就是范围 for 在我之前的博文中也有所介绍 详情点击:面向对…

五段式S型算法笔记

设定已知:v0 vmax j; 减加速段:tm到tmax 加加速段:0到tm tm:中点时间 vm:中点速度 vmax:最大速度; j加速度的斜率 -j相反加速度的斜率 这个图首先说明&#xff…

C 语言文件操作详解

目录 引言 一、基本概念 1.什么是文件 2.文件的属性 3.为什么使用文件 4.二进制文件和文本文件 二、文件的打开和关闭 1.流和标准流 2.文件指针 3.文件的打开和关闭 三、⽂件的顺序读写 1.顺序读写函数 2.详细介绍 1.fgetc 2.fputc 3.fgets 4.fputs 5.fscan…

OpenTiny HUICharts 正式开源发布,一个简单、易上手的图表组件库

引言 大家好! 我们非常高兴地跟大家宣布,今天正式发布我们的新产品——OpenTiny HUICharts。这是一款前端 Web 可视化图表库,其基础图表功能构建于 ECharts 之上,而高阶图表则采用了新的底层技术,以满足更广泛的数据…

AI 手机的技术展望

某某领导问到我,AI手机这个产业发展如何?对于,地方科技园区,应该如何发展相关产业?我一时还真说不上来,于是,查了一下资料,大概应对了一下。 一:AI手机的定义 首先&…

python管理mysql

[rootserver1 ~]# pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple //这是设置清华镜像站,提高下载安装速度,如果报错提示找不到config,这是因为版本低,临时使用清华镜像站来升级 pip&…

Python PDF文本处理技巧 - 查找和高亮文字

目录 使用工具 Python在PDF中查找和高亮文字并统计出现次数和页码 Python在PDF的特定页面区域中查找和高亮文字 Python使用正则表达式在PDF中查找和高亮文字 Python在PDF中查找文字并获取它的坐标位置 其他查找条件设置 在日常工作和学习中,我们常常需要处理各…

SAP MM学习笔记 - 豆知识05 - Customer Exit 实例,MM01上定义Customer Exit 来Check评估Class

上一章讲了一些MM模块的豆知识。 - MM01中设定的安全在库和最小安全在库 - MM01/MMSC/Customize自动 扩张物料的保管场所 - MM01中定义生产订单的默认入库保管场所 - VA01受注票中设定禁止贩卖某个物料 SAP MM学习笔记 - 豆知识03 - 安全在库和最小安全在库,扩…

linux文件——深度学习文件fd、文件系统调用

前言:从本片开始正式进入linux文件的学习,本片内容主要是文件的fd。 本篇内容博主将要先带友友回忆C语言中的文件操作接口,然后再过渡到操作系统中的系统调用的学习,最后理解操作系统中的文件操作。 ps:本节内容设计一…

AI 深度学习让金融 β 系数估算更精确

作者:老余捞鱼 原创不易,转载请标明出处及原作者。 写在前面的话: 传统的金融贝塔系数估计方法往往依赖于严格的假设,难以准确捕捉 Beta 的动态变化,这限制了它们在实际应用中的有效性。为了解决这些问题,本文开发了一种新方法:NeuralBeta,利用神经网络进行Bet…

Centos7安装高版本内核

背景 买到的设备安装Centos7系统,但是新的处理器已经不支持低版本的Linux内核了。而且在 CentOS 使用过程中,高版本的应用环境可能需要更高版本的内核才能支持,所以难免需要升级内核。 内核种类 关于内核种类: kernel-ml:kerne…

趋动科技陈飞:从小模型到大模型,AI时代下的数据中心建设

自AI大模型横空出世,不断推动着AI从学术界到产业界向大众破圈,新的时代正在来临。11月15-16日,由CDCC主办的“2023第11届数据中心标准大会”在北京国家会议中心盛大开幕。 本届大会的主题围绕“AI时代 重塑未来”,聚焦数据中心领…

Spring:springboot集成jetcache循环依赖问题

springboot版本:2.6.14 jetcache版本:2.6.2 启动项目报错如下: 解决方案: jetcache版本升级到2.6.4 https://github.com/alibaba/jetcache/issues/624

phpstudy搭建sqlilabs本地靶场

请先在网上解决好前置条件的下载和安装:phpstudy、vscode、navicat premium(非必要)、sqlilab的压缩包/文件夹 phpstudy--安装sqlilabs 1.打开phpstudy后,我们会用到MySQL5.7.26和Nginx1.15.11 #mysql5.7.26是因为sqlilabs靶场不支持高版本MySQL 2.在软…

Spring配置

1.Spring的两大核心思想IOC和AOP思想 1.1类注解 1.Controller, Service, Configuration, Component, Repository 1.2方法注解 bean(这个方法搭配上面的五大注解进行使用) 2.Bean的名称 2.1.类注解名称 (1)默认首字母小写驼…

【C语言篇】字符和字符串以及内存函数的详细介绍与模拟实现(上篇)

文章目录 字符函数字符输入输出函数字符输入函数字符输出函数 字符分类函数字符转换函数 字符串函数字符串输入输出函数字符串输入函数字符串输出函数 strlen函数的使用和模拟实现strcpy函数的使用和模拟实现strcat函数的使用和模拟实现strcmp函数的使用和模拟实现strncpy函数的…