当前位置: 首页 > news >正文

多模态视觉大语言模型——LLaVA

论文题目Visual Instruction Tuning

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

github: https://github.com/haotian-liu/LLaVA

1. Abstract

本文首次尝试使用GPT-4生成多模态指令数据,并基于这些数据训练了LLaVA(Large Language and Vision Assistant)模型,这是一种结合视觉编码器和语言模型的多模态大模型,用于视觉和语言理解。实验表明,LLaVA在多模态任务上表现优异,与GPT-4结合后实现了92.53%最佳准确率。研究还提供了公开数据、模型和代码,以促进视觉指令跟随领域的研究。

2. Instruction

人工智能领域的一个核心目标是开发一个通用的助手,能够有效地遵循多模态的视觉和语言指令,与人类的意图相一致,来完成各种现实世界的任务。这需要将视觉信息与语言语义进行映射,这是人类交流的通用渠道

为了实现这一目标,社区对开发语言增强的基础视觉模型产生了浓厚兴趣。这些模型在开放世界的视觉理解方面具有强大的能力,包括分类、检测、分割、图像描述和视觉生成与编辑等任务。这些任务通常由单个大型视觉模型独立解决,任务指令隐含地体现在模型设计中。然而,这种做法限制了模型的交互性和适应性。

另一方面,大型语言模型(LLM)表明语言可以发挥更广泛的作用:成为通用助手的通用接口,各种任务指令可以直接地用语言表示,并指导端到端训练的神经助手切换到感兴趣的特定任务进行解决。例如,ChatGPT 和 GPT-4 的成功展示了与人类指令对齐的 LLM 的强大能力,并激发了开发开源 LLM 的巨大兴趣。其中,LLaMA 是一个开源 LLM,其性能与 GPT-3 相当Alpaca、Vicuna 和 GPT-4-LLM 等模型利用各种机器生成的优质基于指令的样本来提高 LLM 的对齐能力,与专有 LLM 相比表现出令人印象深刻的结果。重要的是,这一领域的工作仅限于文本。

在这篇论文中,作者提出了视觉指令微调(Visual Instruction-tuning),这是首次将指令微调扩展到语言-图像多模态空间,为构建通用视觉助手铺平道路。具体来说,论文有以下贡献:

  1. 基于多模态指令数据:一个关键挑战是缺乏基于视觉-语言指令数据。提出了一种数据重塑的视角和流程,利用ChatGPT/GPT-4将图像-文本对转换为适当的指令格式。

  2. 大型多模态模型开发了一个大型多模态模型(LMM),通过将CLIP的开集视觉编码器与语言解码器Vicuna连接起来,并在作者自己构建的指令视觉-语言数据上进行端到端微调。实证研究验证了使用生成数据进行LMM指令微调的有效性,并提出了构建通用指令视觉agent的实用技巧。当与GPT-4结合时,LLaVA在Science QA 多模态推理数据集上实现了SoTA结果。

  3. 多模态指令基准数据:提出了LLaVA-Bench,包含两个具有挑战性的基准,包含多样化的配对图像、指令和详细标注。

  4. 开源:作者向公众发布了以下资产:生成的多模态指令数据、代码库、模型检查点和视觉聊天演示。

总结来说,这篇论文通过提出视觉指令微调技术,为构建通用视觉助手提供了新的思路和方法,并通过多模态指令跟随数据、大型多模态模型和开源资产,为相关领域的研究和应用提供了有力支持。

3. Related Work

3.1 Multimodal Instruction-following Agents
在计算机视觉领域,现有的构建基于指令Agent的研究工作可以大致分为两类:
  • 端到端训练的模型:这类模型针对每个具体的研究主题分别进行探索。例如,在视觉语言导航任务和Habitat 中,需要让具有实体的AI agent遵循自然语言指令,并在视觉环境中执行一系列动作以完成目标。在图像编辑领域,给定一个输入图像和一个书面指令,InstructPix2Pix 通过遵循人类指令来编辑图像。

  • 通过LangChain/ LLMs协调各种模型的系统:这类系统包括Visual ChatGPT、X-GPT、MM-REACT、VisProg和ViperGPT等。尽管这些系统在构建基于指令Agent 方面有共同的目标,但它们通常是通过不同的模型和架构来实现的。

虽然在构建基于指令agents方面有相同的目标,但本文专注于为多个任务开发一个端到端训练的语言视觉多模态模型。

3.2 In
http://www.lryc.cn/news/411943.html

相关文章:

  • 服务注册到nacos上,不能点击下线的问题处理
  • 未来3-5年,哪些工作会被AI取代
  • 鸿蒙系统开发【网络管理】
  • nginx如何处理请求
  • 换地不换IP?揭秘微博IP地址的奥秘
  • 数据库事务处理技术——故障恢复
  • Java零基础之多线程篇:性能考虑篇
  • CSP 初赛复习 :计算机网络基础
  • 【Docker应用】快速搭建Plik服务结合内网穿透无公网IP远程访问传输文件
  • 记录使用FlinkSql进行实时工作流开发
  • 韶音开放式耳机怎么样?韶音、西圣、QCY热门款实测横评
  • 求值(河南萌新2024)
  • 【Linux】文件描述符 fd
  • 带通采样定理
  • 运维工作中的事件、故障排查处理思路
  • 深入源码P3C-PMD:使用流程(1)
  • java~反射
  • 【Linux】(26) 详解磁盘与文件系统:从物理结构到inode机制
  • 8.1 字符串中等 43 Multiply Strings 38 Count and Say
  • upload-labs靶场:1—10通关教程
  • Hive3:一键启动、停止、查看Hive的metastore和hiveserver2两个服务的脚本(好用)
  • 遗传算法与深度学习实战——生命模拟及其应用
  • 大数据|使用Apache Spark 删除指定表中的指定分区数据
  • OSPF动态路由协议实验
  • tcp中accept()的理解
  • 让我们逐行重现 GPT-2:第 1 部分
  • 第十九天内容
  • Hive之扩展函数(UDF)
  • jdk1.8中HashMap为什么不直接用红黑树
  • 消息推送只会用websocket、轮询?试试SSE,轻松高效。