AI多模态论文解读:LLaVA-CoT:让视觉语言模型逐步推理

本文作者:AIGCmagic社区 猫先生


 一、简 介

LLaVA-CoT引入了四个不同的阶段(摘要、标题、推理和结论),使模型能够独立进行系统化的多阶段推理,显著提高了在推理密集型任务上的准确性。

编译了LLaVA-CoT-100k数据集,整合了来自各种视觉问答来源的样本,并提供了结构化的推理注释,为训练提供了丰富的数据支持。

提出一种新的推理时阶段级束搜索方法,能够在每个阶段生成多个候选结果并选择最佳结果继续生成过程,实现了有效的推理时扩展。

通过监督微调,LLaVA-CoT不仅在广泛的推理基准上超越了其基础模型,还超过了更大且闭源的模型,如Gemini-1.5-pro、GPT-4o-mini和Llama-3.2-90B-Vision-Instruct。

图片

图1. LLaVA-CoT和其他模型在六个多模态推理基准测试中的性能。尽管LLaVA-CoT是从Llama-3.2-11B-Vision-Instruct模型中微调而来的(该模型的平均分数最低),但它胜过了许多更大的开源模型,甚至一些闭源模型


二、引 言

大语言模型在推理能力上取得了显著进步,特别是在推理时间扩展方面,如OpenAI的o1所示。然而,当前的视觉语言模型(VLMs)往往难以进行系统和结构化的推理,尤其是在处理复杂的视觉问答任务时。

本文要解决的问题是如何提升视觉语言模型(VLMs)在处理复杂视觉问答任务时的系统性结构化推理能力。

现有的VLMs在推理过程中缺乏系统性和结构性,导致在复杂推理任务中频繁出现错误和幻觉输出;如何有效地进行推理时间扩展,以应对更复杂的任务和场景。

图片

图2. 基线模型与LLaVA-CoT的比较。如图所示,基线模型Llama-3.2-11B-Vision-Instruct在推理过程中出现了明显的缺陷,多次出现错误。相比之下,LLaVA-CoT首先概述问题,从图像中解释相关信息,然后逐步进行推理过程,并最终得出一个得到充分支持的结论


三、方法概述

LLaVA-CoT(Let Vision Language Models Reason Step-by-Step),一种旨在通过多阶段推理来增强视觉语言模型(VLM)系统性和结构性推理能力的新模型。

(1)结构化推理阶段:LLaVA-CoT将答案生成过程分解为四个结构化推理阶段:总结、标题、推理和结论。每个阶段都有其独特的作用:

  • 总结阶段:模型提供问题的高层次总结,概述将要解决的问题的主要方面。

  • 标题阶段:如果存在图像,模型提供与问题相关的视觉元素的简洁概述,帮助理解多模态输入。

  • 推理阶段:基于初始总结,模型进行结构化和逻辑推理,得出初步答案。

  • 结论阶段:模型综合前面的推理,生成最终答案。

(2)数据准备和模型训练:为了训练LLaVA-CoT模型,作者构建了一个包含99k图像问答对的新数据集LLaVA-CoT-100k。该数据集通过使用GPT-4o生成详细的推理过程,并使用监督微调进行训练。具体步骤如下:

  • 使用GPT-4o生成问题和图像的总结、标题、推理和结论。

  • 过滤生成的数据以确保质量。

  • 选择Llama-3.2-11B-Vision-Instruct作为基础模型,并在LLaVA-CoT-100k数据集上进行全参数微调

图片

图3. 生成LLaVA-CoT-100k数据集过程的流程。引导GPT-4o在各个阶段生成响应,并过滤其输出以确保质量

(3)推理时间扩展:为了进一步在推理过程中增强模型的推理能力,作者提出了一种新的阶段级束搜索方法。该方法在每个推理阶段生成多个候选结果,并选择最佳结果以继续生成过程。具体步骤如下:

  • 在每个推理阶段随机采样N个响应。

  • 随机选择2个响应,让模型决定哪个更好,并保留较好的响应。

  • 重复上述步骤N-1次,保留最佳响应。

  • 重复上述过程,直到所有阶段都处理完毕。

图片

图4. 推理方法的示意图。最佳N次搜索生成N个完整响应,并从中选择最佳一个;句子级波束搜索为每个句子生成多个候选选项,并从中选择最佳一个。相比之下,我们的阶段级波束搜索为每个推理阶段(例如,摘要、标题、推理和结论)生成候选项,并在每个阶段选择最佳选项。最佳N次搜索在粗略层面上操作,而句子级波束搜索过于细致,我们的方法实现了最优平衡并取得了最佳性能


四、实验细节

数据收集:作者从多个广泛使用的视觉问答数据集中收集了样本,包括ShareGPT4V、ChartQA、A-OKVQA、AI2D、GeoQA+、ScienceQA、DocVQA、PISC和CLEVR等。

实验设计:实验在六个广泛使用的多模态推理基准上进行,包括MMStar、MMBench、MMVet、MathVista、AI2D和HallusionBench。所有评估均使用VLMEvalKit进行,以确保公平性和可重复性。

样本选择:从每个数据集中选择了一定数量的问答对,总共99k个图像问答对。

参数配置:使用Llama recipes框架进行训练,具体超参数配置包括学习率1e-5,训练轮数3,批量大小4,使用快速内核,不使用验证等。


五、实验结果分析

基准测试结果:与基础模型相比,LLaVA-CoT在一般视觉问答、数学推理、科学视觉问答和幻觉控制任务上均表现出色,平均基准得分提高了6.9%。

图片

消融研究:

  • LLaVA-CoT-100k数据集比直接使用原始数据集的问答对更有效。

  • 结构化标签对模型性能的提升至关重要,去除标签后模型性能显著下降。

  • 模型主要在需要系统性推理的任务上表现出改进,如实例推理、逻辑推理、数学和科学和技术。

推理时间扩展:阶段级束搜索方法在推理时间计算增加时表现出显著的有效性。随着候选响应数量的增加,模型性能持续提高。


推荐阅读

AI多模态核心架构五部曲:

AI多模态模型架构之模态编码器:图像编码、音频编码、视频编码

AI多模态模型架构之输入投影器:LP、MLP和Cross-Attention

AI多模态模型架构之LLM主干(1):ChatGLM系列

AI多模态模型架构之LLM主干(2):Qwen系列

AI多模态模型架构之LLM主干(3):Llama系列  

AI多模态模型架构之输出映射器:Output Projector  

AI多模态模型架构之模态生成器:Modality Generator

AI多模态实战教程:

AI多模态教程:从0到1搭建VisualGLM图文大模型案例

AI多模态教程:Mini-InternVL1.5多模态大模型实践指南

AI多模态教程:Qwen-VL升级版多模态大模型实践指南

AI多模态实战教程:面壁智能MiniCPM-V多模态大模型问答交互、llama.cpp模型量化和推理


技术交流

加入「AIGCmagic社区」群聊,一起交流讨论,涉及AI视频、AI绘画、数字人、多模态、大模型、传统深度学习、自动驾驶等多个不同方向,可私信或添加微信号:【lzz9527288】,备注不同方向邀请入群!

更多精彩内容,尽在AIGCmagic社区」,关注了解全栈式AIGC内容!

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

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

相关文章

分布式缓存redis

分布式缓存redis 1 redis单机(单节点)部署缺点 (1)数据丢失问题:redis是内存存储,服务重启可能会丢失数据 (2)并发能力问题:redis单节点(单机)部…

《C++11》nullptr介绍:从NULL说起

在C11之前,我们通常使用NULL来表示空指针。然而,NULL在C中有一些问题和限制,这就是C11引入nullptr的原因。本文将详细介绍nullptr的定义、用法和优点。 1. NULL的问题 在C中,NULL实际上是一个整数0,而不是一个真正的…

供应链数字化转型参考大型供应链系统技术架构设计方案

该文介绍了一个大型供应链系统技术架构的设计方案,包括整体设计、核心技术目录和应用案例。设计采用Choerodon微服务框架,关注海量并发、可伸缩性、安全性等方面。同时,方案符合大型企业结构的HR组织架构,支持多级组织架构和角色、…

STM32F1学习——DMA直接存储器存取

一、DMA直接存储器存取 DMA的全称是 Direct Memory Access 直接存储器存取,他可以提供外设和存储器间或存储器和存储器间的高速数据传输,无需CPU的干预。 STM32有12个DMA通道,由DMA1(7个通道组成)和DMA2(5个通道组成),STM32F103C8…

一个使用 Golang 编写的新一代网络爬虫框架,支持JS动态内容爬取

大家好,今天给大家分享一个由ProjectDiscovery组织开发的开源“下一代爬虫框架”Katana,旨在提供高效、灵活且功能丰富的网络爬取体验,适用于各种自动化管道和数据收集任务。 项目介绍 Katana 是 ProjectDiscovery 精心打造的命令行界面&…

6.2 MySQL时间和日期函数

以前我们就用过now()函数来获得系统时间,用datediff()函数来计算日期相差的天数。我们在计算工龄的时候,让两个日期相减。那么其中的这个now函数返回的就是当前的系统日期和时间。 1. 获取系统时间函数 now()函数,返回的这个日期和时间的格…

用 Python 处理 CSV 和 Excel 文件

💖 欢迎来到我的博客! 非常高兴能在这里与您相遇。在这里,您不仅能获得有趣的技术分享,还能感受到轻松愉快的氛围。无论您是编程新手,还是资深开发者,都能在这里找到属于您的知识宝藏,学习和成长…

vulnhub靶场【IA系列】之Tornado

前言 靶机:IA-Tornado,IP地址为192.168.10.11 攻击:kali,IP地址为192.168.10.2 都采用虚拟机,网卡为桥接模式 本文所用靶场、kali镜像以及相关工具,我放置在网盘中,可以复制后面链接查看 htt…

[云讷科技] 用于软件验证的仿真环境

我们使用Pursuit自动驾驶仪为各种场景设计仿真环境,以便用户可以在模拟环境中直接验证他们的软件,无需现场测试。该环境基于Gazebo引擎。 1. 工作区目录 模拟环境的工作区位于提供的U盘中的~/pursuit_space/sitl_space_pursuit中。用户可以按照用户手册…

【Uniapp-Vue3】页面生命周期onLoad和onReady

一、onLoad函数 onLoad在页面载入时触发,多用于页面跳转时进行参数传递。 我们在跳转的时候传递参数name和age: 接受参数: import {onLoad} from "dcloudio/uni-app"; onLoad((e)>{...}) 二、onReady函数 页面生命周期函数中的onReady其…

iOS 解决两个tableView.嵌套滚动手势冲突

我们有这样一个场景,就是页面上有一个大的tableView, 每一个cell都是和屏幕一样高的,然后cell中还有一个可以 tableView,比如直播间的情形,这个时候如果我们拖动 cell里面的tableView滚动的话,如果滚动到内…

STM32 FreeRTOS移植

目录 FreeRTOS源码结构介绍 获取源码 1、 官网下载 2、 Github下载 源码结构介绍 源码整体结构 FreeRTOS文件夹结构 Source文件夹结构如下 portable文件夹结构 RVDS文件夹 MemMang文件夹 FreeRTOS在基于寄存器项目中移植步骤 目录添加源码文件 工程添加源码文件 …

【ASP.NET学习】Web Forms创建Web应用

文章目录 什么是 Web Forms?ASP.NET Web Forms - HTML 页面用 ASP.NET 编写的 Hello RUNOOB.COM它是如何工作的?经典 ASP ASP.NET Web Forms - 服务器控件经典 ASP 的局限性ASP.NET - 服务器控件ASP.NET - HTML 服务器控件ASP.NET - Web 服务器控件ASP.N…

Linux 常见运营维护,从安装软件开始,到mysql,php,redis,tomcat等软件安装,配置,优化,持续更新中。。。

下载centos7 CentOS 7 完整版(DVD): https://mirrors.aliyun.com/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-2009.isoCentOS 7 最小化版(Minimal): https://mirrors.aliyun.com/centos/7/isos/x86_64/C…

用户界面软件05

已知应用 几乎所有的流行的用户界面架构都使用这种模式。我在这里举三个例子: 1. Seeheim 用户界面架构的特点是有一个应用核心的领域层和一个用户界面层。后者 被分为两层,叫做表示层和对话控制层。因为这个架构和面向事务系统有渊源,没有…

从玩具到工业控制--51单片机的跨界传奇【2】

咱们在上一篇博客里面讲解了什么是单片机《单片机入门》,让大家对单片机有了初步的了解。我们今天继续讲解一些有关单片机的知识,顺便也讲解一下我们单片机用到的C语言知识。如果你对C语言还不太了解的话,可以看看博主的C语言专栏哟&#xff…

LVGL移植高通点阵字库GT30L24A3W

字库芯片: GT30L24A3W MCU:STM32F429 LVGL版本:V8.4 一、实现gt_read_data() 和 r_dat_bat() 请参考下面视频 如何在32位MCU上使用高通点阵字库_哔哩哔哩_bilibili 高通字库使用教程(1)硬件链接与注意事项部分_哔哩哔哩_bilibili 高通字库使用教程(2)SPI底层函数使用_哔哩…

C# OpenCV机器视觉:转速测量

在一个看似平常却又暗藏神秘能量的日子里,阿杰正在他那充满科技感的实验室里,对着一堆奇奇怪怪的仪器发呆。突然,手机铃声如一道凌厉的剑气划破寂静,原来是工厂的赵厂长打来的紧急电话:“阿杰啊,咱们工厂新…

【Vue】Vue组件--上

目录 一、组件基础 二、组件的嵌套关系 1. 基础架构 2. 嵌套 三、组件注册方式 1. 局部注册: 2. 全局注册: 四、组件传递数据 1. 基础架构 2. 传递多值 3. 动态传递数据 五、组件传递多种数据类型 1. Number 2. Array 3. Object 六、组…

unity下载newtonsoft-json

Package Manager,输入com.unity.nuget.newtonsoft-json 右键Assets-Reinport All