[论文阅读] Improved Baselines with Visual Instruction Tuning

启发:

1、LLaVA-1.5和LLaVA以及其他大模型相比,做出了哪些改进?

(1)使用CLIP-ViT-L-336px作为视觉编码器,使模型能处理336px的高分辨率图像,这使得模型能从图像中提取出更多细节信息。此外,还进一步探索了如何适应更高分辨率的图像,通过对图像做分割的方式成功达到448px的输入。

(2)使用双层MLP来增强模型的多模态理解能力。

(3)制定了更明确的响应格式提示,使用该提示对模型进行微调,解决LLaVA存在的短格式和长格式 VQA不平衡的问题。

(4)数据集方面借鉴了InstructBLIP,加入了学术数据,此外,还加入了GVQA、ShareGTP等多个数据集,通过这种数据扩展方式强化模型性能。

目录

Abstract

1. Introduction

2. Related Work

2.1 Instruction-following large multimodal models (LMMs)

2.2 Multimodal instruction-following data

3. Approach  

3.1. Preliminaries

3.2. Response Format Prompting

3.3. Scaling the Data and Model

3.4. Scaling to Higher Resolutions

4. Empirical Evaluation

5. Open Problems in LMMs

5.1. Data Efficiency

5.2. Rethinking Hallucination in LMMs

6. Conclusion


Abstract

研究问题:改进LLaVA性能

研究方法:使用CLIP-ViT-L-336px作为视觉编码器,并引入MLP投影层来增强模型的表示能力。在训练数据中加入了学术任务导向的可视化问答(VQA)数据,并使用了响应格式化提示,以改善模型对短答案和长答案的生成能力。

1. Introduction

  • LMMs有什么用?

        它是通用AI助手的关键组件。

  • 最近关于LMMs的工作的研究重点是什么?

        近期工作关注视觉指令调整(visual instruction tuning),LLaVA和MiniGPT-4都取得很好的成果,LLaVA架构也被应用于许多领域。

  • 本文的研究思路

        考虑到不同大模型在不同任务上的性能表现各有优劣,而目前没有合理解释能说明导致这些差异的原因是什么,可能是训练数据,也可能是Qformer等重采样器的使用,我们从输入、模型、数据的角度来进行系统研究,探索提升LMMs性能的有效路线。

        首先,我们发现 LLaVA 中全连接的视觉语言连接器具有强大的能力和数据效率,所以我们在LLaVA框架基础上建立了一个更强大的baseline。具体的改进有两个,MLP跨模态连接器结合了学术任务的相关数据

        然后,我们深入研究了大型多模态模型在其他开放问题上的早期探索,发现了LLaVA表现好的原因:

(1) 缩放到高分辨率图像输入。我们表明,LLaVA 的架构可以通过简单地将图像划分为网格来扩展到更高的分辨率,并保持其数据效率;随着分辨率的提高,它提高了模型的细节感知能力,减少了幻觉。

本来高分辨率图像需要大量计算资源,LLaVA通过把高分辨率图像分割成小块,然后分别处理小块,一方面使用较少的计算资源来处理高分辨率图像,提升了数据效率,另一方面让模型能够关注到图像中的更多细节,降低“幻觉”出现概率

(2) 组合能力。我们发现大型多模态模型能够推广到组合能力。例如,长格式语言推理的训练与较短的视觉推理可以提高模型对多模态问题的编写能力。

一方面的体现是模型处理多模态输入的能力,LLaVA能够同时看到图像输入和文本输入,然后结合多模态输入更准确的回答问题。另一方面的体现是当模型能处理任务A和B时,它能否进一步处理同时涉及A和B的任务C

(3) 数据效率。我们表明,将 LLaVA 的训练数据混合随机降低高达 75% 不会显著降低模型的性能,这表明更复杂的数据集压缩策略的可能性可以进一步改进 LLaVA 已经高效的训练管道。

LLaVA即使只用75%的数据训练,性能也不会出现明显下降,说明LLaVA能更高效的从数据中学习

(4) 数据缩放。我们为数据粒度的扩展提供了经验证据,并且模型的能力对于在不引入幻觉等伪影的情况下改进能力至关重要。

增加数据规模和细节程度能够提升模型性能,但是要注意不能一昧的增加数据量,否则低质量数据会引入幻觉,也不能一昧的提供细粒度数据,否则模型理解宏观信息的能力会下降

        总之,根据上述的研究,我们找到了有效的改进思路,在仅使用公共数据的条件下对LLaVA进行了改进,得到LLaVA-1.5,它在11项任务上都达到了SOTA水平。

2. Related Work

2.1 Instruction-following large multimodal models (LMMs)

LMMs的常见架构包括:

(1)预训练好的视觉backbone:从图像中提取和编码视觉特征。

(2)预训练好的大语言模型LLM:理解用户的需求,生成响应。

(3)视觉-语言多模态连接器:将视觉编码器输出的视觉特征与语言模型的词嵌入空间对齐。

(4)视觉重采样器:是一个可选部件,作用是对视觉特征进行筛选,保留重要信息,减少特征数量,常用的是Qformer。

LMMs遵循两阶段训练方式:

(1)视觉-语言对齐预训练:训练数据是图像-文本对,训练目标是让模型能够将图像的视觉特征和文本的语言特征对应起来。直观来说,就是让模型知道文本描述的是图像中的哪部分内容。

(2)视觉指令调整:训练数据是视觉内容和相应的语言指令,视觉内容可能是图像和视频,语言指令可能包括问题-答案对(QA任务)、描述性文本(image caption任务)、对话文本(多模态对话任务)、格式化输出要求(格式转换任务)等。训练目标就是让模型能理解和执行涉及视觉内容的用户指令。

2.2 Multimodal instruction-following data

        研究显示instruction-following数据的质量会对模型性能产生很大影响。LLaVA率先使用GPT-4将现有的COCO边界框和标题数据集扩展为多模态instruction-following数据集,其中包含三类指令数据:对话式QA、详细描述和复杂推理,这种数据扩展方式已经被广泛应用于其他数据集和任务中。

        InstructBLIP模型通过纳入学术任务导向的视觉问答(VQA)数据集来增强模型的视觉能力。但是,简单的将学术任务数据和普通数据集合并,会导致模型在普通数据上过拟合,为了解决该问题,有研究提议利用LLaVA的pipeline将VQA数据集转换为对话形式数据集,这种方式虽然有效,但是会在数据扩展时增加复杂性。为了解决上述问题,我们调查在多模态模型中无法平衡自然对话和学术任务的根本原因。
(根本原因是什么???)

3. Approach  

3.1. Preliminaries

LLaVA存在的一些问题:

(1)在需要简短答案的任务测试中无法达到要求;

(2)由于训练分布缺乏相关数据,导致回答“是/否”问题时倾向于回答是。

InstructBLIP存在的一些问题:

(1)加入了学术数据,导致在现实生活问题上表现不佳;

(2)倾向于给出简短回答,即使明确要求给出详细回答。

3.2. Response Format Prompting

模型无法在短格式和长格式 VQA 之间取得平衡的原因:

(1)响应格式的提示不明确

模型使用的提示(prompts)对于期望的输出格式不够明确。例如,简单的提示格式如“Q: {问题} A: {答案}”并没有指明是期望一个简短的答案还是详细的解释。这可能导致模型在即使是需要自然对话和长答案的情况下,也倾向于生成简短的答案。

(2)没有对大型语言模型(LLM)进行微调

InstructBLIP模型只对Qformer进行了微调,而不是对整个LLM进行微调。这要求Qformer的视觉输出tokens来控制LLM输出的长度,决定是生成长答案还是短答案。然而,Qformer可能由于其容量相对于像LLaMA这样的LLM来说有限,而无法恰当地完成这一任务。

我们提出的解决思路是:

(1)使用明确的响应格式提示

        通过在VQA问题后附加一个明确的响应格式提示,例如“用一个单词或短语回答这个问题”,来指示模型输出的期望格式。这样的提示可以帮助模型更清晰地理解何时应该提供简短的答案。

(2)对LLM进行微调

        通过使用这些明确的提示对LLM进行微调,LLaVA模型能够根据用户的指令适当地调整输出格式。这意味着模型可以更灵活地在短答案和长答案之间切换,而不需要额外的处理,例如使用ChatGPT来处理VQA答案。

        实验表明,通过在训练中仅加入VQAv2数据集,LLaVA在MME(多模态推理挑战)上的性能显著提高,并且超过了InstructBLIP模型111分,说明了我们的思路的有效性。

3.3. Scaling the Data and Model

(数据扩展是指增加训练数据的规模和多样性,模型扩展是指增加模型参数量和复杂度)

(1)MLP vision-language connector

我们发现在视觉-语言连接器中使用两层MLP能够增强LLaVA的多模态理解能力。

(2)Academic task oriented data

在InstructBLIP使用的数据集基础上引入新的数据集,最终数据集组成为:

  • open-knowledge VQA(OKVQA,A-OKVQA)和OCR(OCRVQA,TestCaps
  • region-level VQA datasets(Visual Genome,RefCOCO
  • VQA-v2
  • GQA
  • ShareGPT

(3)Additional scaling

        为了让模型能看到图像的更多细节,我们将图像分辨率提高到336×336,视觉编码器采用了CLIP-ViT-L-336px。让然后还引入了GQA和ShareGPT作为额外数据集,并把模型参数量从7B扩展至13B

我们将按照上述改进训练得到的模型命名为LLaVA-1.5

3.4. Scaling to Higher Resolutions

        研究表明增加图像分辨率可以提高模型性能,但是,CLIP视觉编码器最高只支持336px,无法通过更换视觉编码器来支持更高的分辨率,所以需要探索新的方式。

        具体做法如下图所示,我们对高分辨率图像做分割,得到多个patch,对每个patch进行encode之后,将得到的特征进行合并。另外,还将下采样的图像特征一并传入LLM,这使我们能够将输入缩放到任意分辨率,并保持 LLaVA-1.5 的数据效率。我们将这个模型称为 LLaVA-1.5-HD

4. Empirical Evaluation

4.1. Benchmarks

4.2. Results

4.3. Emerging Properties

        LLaVA-1.5虽然没有专门针对多语言进行训练,但是ShareGPT中存在多语言数据,所以LLaVA-1.5 能够遵循多语言指令,甚至LLaVA-1.5的性能比 Qwen-VL-Chat 高出 +7.3%。

4.4. Ablation on LLM Choices

5. Open Problems in LMMs

5.1. Data Efficiency

        尽管与 InstructBLIP等方法相比,LLaVA-1.5 的数据效率更高,但与 LLaVA 相比,LLaVA-1.5 的训练开销仍然翻了一番。我们通过对 LLaVA-1.5 的训练数据进行随机子采样,以进一步提高数据效率,采样率范围为 0.1 到 0.5。

        结果如下图,即使只使用50%的数据,模型依旧达到98%的性能,甚至在一些任务上还有提升。直至数据减少到30%,模型性能依旧稳定。这表明数据效率还有进一步改进的空间。

        

5.2. Rethinking Hallucination in LMMs

        幻觉是 LLM 和 LMM 需要解决的一个重要问题。通常在 LMM 中,我们将模型的幻觉归因于训练数据集中的错误,然而,我们发现,当我们将模型的输入缩放到更高的分辨率(如 448px)时,这种幻觉会显著减少。这说明,有些幻觉是因为输入分辨率不足,导致模型无法识别输入数据的所有细节而产生的。

        这个发现提示研究者在设计模型和选择数据时,需要考虑到模型处理高分辨率输入的能力,以及如何有效地利用这些高分辨率数据来减少幻觉

6. Conclusion

研究目标和贡献

论文的目标是揭开大型多模态模型设计的一些谜团。研究者们提出了一个名为LLaVA-1.5的新基线模型,这个模型简单、有效,而且在训练时不需要太多的数据。他们还探索了在视觉指令调整中尚未解决的问题,比如如何处理更高分辨率的图像,以及模型在产生幻觉和组合不同能力时的表现。

对未来研究的期望

研究者们希望他们的发现和提出的基线模型能为未来开源的大型多模态模型研究提供参考和帮助。

模型的局限性

尽管LLaVA-1.5模型取得了一些积极的成果,但它仍然有一些局限性。例如,处理高分辨率图像时训练时间可能会变长,模型还无法理解多张图像之间的关系,而且在某些领域解决问题的能力也有限。此外,模型有时也会产生幻觉,也就是生成不真实的信息。因此,在关键的应用领域,比如医疗行业,使用这个模型时需要格外小心。

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

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

相关文章

微积分复习笔记 Calculus Volume 1 - 4.2 Linear Approximations and Differentials

4.2 Linear Approximations and Differentials - Calculus Volume 1 | OpenStax

万圣夜,Codigger

在这个神秘的万圣节,让Codigger,一个专业的分布式操作系统,带领你踏入未知的编程世界!就像变装成各种角色一样,Codigger也以其独特的能力和技巧,在数字世界中展现无穷魅力。让我们一起在这个神秘的节日里&a…

《神经网络助力战场车辆及部件损毁识别与评估》

《神经网络助力战场车辆及部件损毁识别与评估》 一、战场车辆损毁评估的重要意义二、传统战场车辆损毁评估方法(一)视觉评估法(二)仪器检测技术 三、神经网络在战场车辆损毁评估中的应用案例(一)射击毁伤评…

信而泰防火墙安全测试解决方案:为网络安全保驾护航

在当今数字化时代,网络安全至关重要。防火墙作为网络安全的第一道防线,其性能和可靠性直接影响到网络的安全性。信而泰提供的防火墙安全测试解决方案,旨在通过全面的测试流程,确保防火墙能够高效、准确地执行其安全任务。 针对防火…

Pinctrl子系统pinctrl_desc结构体进一步介绍

往期内容 本专栏往期内容: Pinctrl子系统和其主要结构体引入 input子系统专栏: 专栏地址:input子系统input角度:I2C触摸屏驱动分析和编写一个简单的I2C驱动程序 – 末片,有往期内容观看顺序 I2C子系统专栏:…

简单的kafkaredis学习之redis

简单的kafka&redis学习之redis 2. Redis 2.1 什么是Redis Redis是一种面向 “Key-Value” 数据类型的内存数据库,可以满足我们对海量数据的快速读写需求,Redis是一个 NoSQL 数据库,NoSQL的全称是not only sql,不仅仅是SQL&…

Java 输入与输出(I\O)之对象流与对象序列化

什么是Java的对象流? Java对象流是用于存储和读取基本数据类型数据或对象数据的输入输出流。 Java的对象流可分为两种: 1,对象输入流类ObjectInputStream 用于从数据源读取对象数据,它是可以读取基本数据类型数据或对象数据的输…

GitHub 上传项目保姆级教程

构建项目仓库 登录 GitHub 并进入主页。点击右上角的 New 按钮,进入创建新仓库页面。输入仓库名称和描述(可选),选择是否公开(Public)或私有(Private)。可以选择是否初始化仓库&…

计算机网络:网络层 —— 路由选择与静态路由配置

文章目录 路由选择路由选择的基本概念路由选择算法路由选择策略 路由器的工作原理路由表静态路由配置默认路由特定主机路由 路由选择 路由选择(Routing)是网络层的一个关键功能,负责在源和目的地之间选择最佳路径,以确保数据包高…

Pytest-Bdd-Playwright 系列教程(5):仅执行测试用例的收集阶段

Pytest-Bdd-Playwright 系列教程(5):仅执行测试用例的收集阶段 一、为什么需要仅收集测试用例二、应用场景三、方法详解【方法1】:添加pytest.ini文件的addopts配置项【方法2】:通过命令行参数运行 四、CI/CD 环境下的…

联想笔记本电脑睡眠后打开黑屏解决方法

下载联想机器睡眠无法唤醒修复工具 下载地址:https://tools.lenovo.com.cn/exeTools/detail/id/233/rid/6182522.html 使用完后重启电脑,问题解决。

(11)(2.1.6) Hobbywing DroneCAN ESC(一)

文章目录 前言 1 连接和配置 2 参数说明 前言 具有 CAN 接口(including these)的业余 ESC 支持 DroneCAN,它允许自动驾驶仪通过 CAN 控制 ESC /电机,并检索单个转速、电压、电流和温度。 具有 CAN 接口(including …

AI助力医疗:未来的医生会是机器人吗?

内容概要 在这一场医疗科技的新浪潮中,AI医疗正以前所未有的速度渗透到各个角落。随着技术的飞速进步,人工智能成为了推动医疗领域革新的重要力量。从精准诊断到个性化治疗,AI正在帮助医生们更快速、准确地分析患者的病情,提高了…

HTMLCSS:3D旋转动画机器人摄像头

效果演示 创建了一个3D机器人摄像头效果。 HTML <div class"modelViewPort"><div class"eva"><div class"head"><div class"eyeChamber"><div class"eye"></div><div class&quo…

大型商场应急响应系统开发:SpringBoot篇

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统&#xff0c;它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等&#xff0c;非常…

记录一次查询优化

一.背景描述 1.1问题和情况 生产环境&#xff0c;有一张按每天一份数据的表&#xff08;下面简称表1&#xff09;&#xff0c;跨天查询较慢&#xff0c;跨月查询甚至超时查询一天内的数据速度不怎么慢查询是分页的表1按照日期做了子分区&#xff0c;一个月一个子分区 1.2造成…

头歌C语言数据结构课程实验(栈的应用)

第1关&#xff1a;利用栈实现整数的十进制转八进制 本关必读 栈是基础的数据结构&#xff0c;元素操作遵循后进先出的原理。本关卡基于数组存储实现了栈的基本操作。 该方案将栈存储在一片连续空间里&#xff0c;并通过data、top和max三个属性元素。组织成为一个结构&#xf…

Java | Leetcode Java题解之第521题最长特殊序列I

题目&#xff1a; 题解&#xff1a; class Solution {public int findLUSlength(String a, String b) {return !a.equals(b) ? Math.max(a.length(), b.length()) : -1;} }

《使用Gin框架构建分布式应用》阅读笔记:p212-p233

《用Gin框架构建分布式应用》学习第12天&#xff0c;p212-p233总结&#xff0c;总22页。 一、技术总结 1.JavaScript知识点 (1)class、method (2)function, arrow function, (3)fetch() (4)Promise, then() 2.bootstrap 第5章主要涉及前端技术的运用&#xff0c;作为后…

NVR录像机汇聚管理EasyNVR多个NVR同时管理融合汇聚管理系统

流媒体视频融合与汇聚管理系统能够实现对各类模块化服务的统一管理和配置&#xff0c;整合、管理和共享应用服务&#xff0c;并通过标准接口为业务平台和其他第三方平台提供便捷的数据调用功能。为确保该系统的成功实施和稳定运行&#xff0c;在建设方案中除了考虑基础的架构设…