2023_Liu_LLaVA_总结

发布时间:2026/9/29 2:19:09

2023_Liu_LLaVA_总结 Visual Instruction TuningLLaVA总结来源NeurIPS 2023Haotian Liu、Chunyuan Li 等University of Wisconsin–Madison / Microsoft Research / Columbia University原文论文原文/LLaVA.md含全部附录 A–F生成方式按paper-summaryskill 的五大模块框架生成图片引用路径相对本文件换算为../论文原文/images/说明本文是 LLaVA 的会议版基础论文学术基准的更多定量结果作者转引至后续《Improved Baselines with Visual Instruction Tuning》[31]前言Visual Instruction Tuning 发表于 NeurIPS 2023研究的是视觉-语言大模型的指令遵循能力。研究背景与动机人类通过视觉与语言两个通道理解世界AI 领域长期追求的目标是造出一个能听懂多模态指令、完成真实任务的通用助手。而用自然语言指令驱动模型切换任务这件事在纯语言领域已被证明可行。当前现状视觉侧以CLIP为代表的语言增强视觉基础模型在分类、检测、分割、描述上都很强但这批工作的共同前提是一个任务一个模型任务指令被隐式写进模型设计里——接口固定、交互性差语言仅用于描述图像内容。语言侧ChatGPT / GPT-4与开源阵营的 LLaMA / Alpaca / Vicuna 证明instruction tuning能显著提升零样本泛化。多模态侧也已有 Flamingo多模态领域的GPT-3 时刻、BLIP-2、KOSMOS-1、OpenFlamingo、LLaMA-Adapter 等能看图的模型但它们都没有用视觉-语言指令数据显式训练过多模态任务表现普遍落后于纯语言任务。本文旨在解决的问题本文判断卡点不在模型结构而在数据。具体三个 gap多模态指令数据缺失图文对CC、LAION海量存在但指令—响应格式的数据几乎为零人工众包耗时且流程不明确。已有 LMM 未做指令微调靠图文对预训练得到的模型不会按指令回答只会复述场景用户问什么它都在描述。缺少指令遵循的评测基准能力无法量化改进只能靠个案感受也没有公认的对照。LLaVA 给出的回答是用纯文本 GPT-4 把现成图文对重写成 158K 指令数据再用CLIP 视觉编码器 单层线性投影 Vicuna这套极简三件套做两阶段指令微调。结果是在 LLaVA-Bench(COCO) 上取得相对文本 GPT-4 的85.1%相对分数在 ScienceQA 上与 GPT-4 集成后拿到92.53%的新 SOTA。Figure 1. LLaVA 网络架构。原始图像XvX_vXv​经冻结的 CLIP ViT-L/14 编码为ZvZ_vZv​再经可训练投影矩阵WWW映射成视觉 tokenHvH_vHv​与语言指令XqX_qXq​一起送入 Vicuna 解码出回答XaX_aXa​。流程图分析Table 1. 指令数据构造示例。上方是喂给 GPT-4 的上下文——5 条 caption 加目标框坐标下方是 GPT-4 产出的三类响应conversation、detailed description、complex reasoning。图像本身从未进入 GPT-4它看到的只是一段文字化的伪图像描述。整条流水线可以拆成3 块来理解数据构造块§3把图像翻译成 GPT-4 能读的符号序列caption 管语义、box 管空间再用少量人工种子示例做 in-context learning让 GPT-4 批量产出三类指令数据。模型连接块§4.1CLIP ViT-L/14 提特征 →一层线性投影WWW→ Vicuna-13B 生成回答。图像被当成一串与词向量同维的视觉 token直接拼进语言序列。两阶段训练块§4.2Stage 1 用 595K 过滤后 CC3M 图文对只训投影层把视觉特征对齐到 LLM 的词嵌入空间Stage 2 用 158K 指令数据解冻 LLM做端到端微调。关键姿态视觉编码器在两个阶段全程冻结Stage 1 唯一可训练参数是投影矩阵WWWStage 2 才把 LLM 参数ϕ\phiϕ一起放开——文章把 Stage 1 明确定义为为冻结的 LLM 训练一个兼容的视觉分词器visual tokenizer。各模块功能对应总结模块作用是否可训练① 图像符号化用 5 条 caption 目标框坐标把图像转成 LLM 可读序列否数据预处理② GPT-4 数据生成以少量人工种子示例做 in-context learning产出 conversation / detailed description / complex reasoning 三类数据否外部教师纯文本调用③ CLIP ViT-L/14视觉编码器取倒数第二层的 grid feature 作为视觉特征ZvZ_vZv​全程冻结④ 线性投影层WWW把ZvZ_vZv​映射到词嵌入空间得到HvH_vHv​充当视觉-语言接口Stage 1 唯一训练对象⑤ Vicuna-13B语言解码器按自回归目标生成回答Stage 1 冻结Stage 2 解冻⑥ 指令数据与基准LLaVA-Instruct-158K 训练数据 LLaVA-Bench(COCO / In-the-Wild) 评测否数据资产流程解析步骤 1把图像翻译成文字解决GPT-4 看不见图对 COCO 中的每张图取两种符号化表示symbolic representationcaption5 条描述同一图像的句子覆盖不同视角的语义bounding box类别: [x1, y1, x2, y2]形式的归一化坐标列表编码物体概念与空间位置。两者拼成一段LLM 认得出的图像描述去提示纯文本 GPT-4。这一步的巧妙处在于它把多模态数据生成降维成了文本任务从而借用了 GPT-4 已有的语言能力。步骤 2用 GPT-4 批量生成三类指令数据对应原表 14每类数据先由人工手写少量种子示例这是整个数据构造过程中唯一的人工标注之后全部靠 in-context learning 扩展。三类响应的分工是conversation多轮问答问物体类别、计数、动作、位置、物体间相对位置只保留有确定答案的问题detailed description单轮、长文本的详尽描述complex reasoning需要分步推理的深问如这些人面临什么挑战。最终规模158K58K conversation 23K detailed description 77K complex reasoning。作者补充说明早期实验对比过 ChatGPT 与 GPT-4GPT-4 的数据质量一致更高尤其是空间推理但只给了定性结论。步骤 3Stage 1 特征对齐只训一个矩阵对应公式 1用过滤后的595KCC3M 图文对配合最朴素的扩展方式随机抽一句请简短描述这张图 原 caption 作答案构造单轮指令数据然后冻结 CLIP 与 LLM只最大化投影矩阵WWW下的答案似然1 个 epoch、lr 2e-3、batch size 1288×A100 上4 小时内完成。这一步不教模型任何新知识只让图像特征落到 LLM 已经理解的向量空间里——对齐而非学习。步骤 4Stage 2 端到端微调解冻 LLM对应公式 3视觉编码器仍然冻结训练θ{W,ϕ}\theta \{W, \phi\}θ{W,ϕ}。两个下游用途多模态 Chatbot158K 指令数据三类均匀采样3 epochs、lr 2e-5、batch size 3210 小时内完成ScienceQA组织为单轮对话问题上下文为指令推理答案为输出12 epochs、4 小时内完成用先推理后作答的顺序训练。步骤 5自回归推理与后处理集成推理阶段是纯自回归解码不需要任何额外信息无候选框、无类别表、无外部检索。ScienceQA 上的 GPT-4 集成属于独立的后处理策略把 LLaVA 与文本 GPT-4 答案冲突的样本再喂给 GPT-4 当裁判裁决从而把准确率从 90.92% 推到 92.53%。创新点分析1. 首个多模态指令数据构造管道核心贡献本文最本质的贡献不在网络结构而在数据观它提出一个数据重铸data reformation视角——不去采集新数据而是把已有的图文对通过 GPT-4 转换成指令遵循格式。这个管道解决了三个连锁问题数据从哪来存量图文对、要找谁标注现成的强语言教师、成本如何控制仅需少量人工种子示例。vs 同期 Flamingo / BLIP-2那批工作靠更多图文对预训练本文靠更少但格式正确的数据做指令微调。2. 极简连接件 两阶段冻结策略结构贡献连接视觉与语言本文只用一层线性投影WWW并明说这是为了轻量、便于快速做以数据为中心的实验把 Flamingo 的 gated cross-attention、BLIP-2 的 Q-former 列为 future work。配合Stage 1 只训投影层、Stage 2 才解冻 LLM、视觉编码器全程冻结的调度整个适配异常省算力。消融显示预训练阶段不可省跳过 Stage 1 直接训 ScienceQA准确率掉5.11 个百分点85.81% vs 90.92%原表 8。3. 用实验证明指令微调才是性能主来源这是本文最有说服力的一组证据。在 LLaVA-Bench(COCO) 上不做指令微调只剩 21.5 相对分做完整指令微调是 85.1差 63.6 个相对分仅加少量 detailed complex 数据5% 10%就能把整体从 73.8 拉到 80.5原表 4。作者由此得出一个重要观察推理能力的提升会反过来改善对话能力。4. 首个指令遵循基准 LLM-as-judge 评测方法作者构造了 LLaVA-Bench(COCO)30 图 90 题用于消融与 LLaVA-Bench(In-the-Wild)24 图 60 题含 meme、绘画、素描等分布外内容并提出用文本 GPT-4 当裁判打相对分的评测方案。这解决了开放式回答无法用准确率衡量的问题但也带来了新的可信度问题见文末局限。5. 首次用 GPT-4 做模型集成model ensemblingScienceQA 上作者让文本 GPT-4 在两个模型答案冲突时充当裁判结果在所有问题类别上一致提升取得 92.53% 的 SOTA。值得注意的是一个看不了图的模型反而提升了含图问题的准确率——原因是部分含图问题其实并不需要图像上下文GPT-4 能识别这类情况并纠正 LLaVA 的错误。重要公式分析本文只有 3 个编号公式但它们恰好刻画了「图像 → 视觉 token → 指令序列 → 自回归目标」的完整逻辑链简单到几乎透明这也正是作者的取舍。公式 (1)视觉 token 投影本文的结构签名HvW⋅Zv,with Zvg(Xv)(1) \mathbf{H}_{\mathrm{v}} \mathbf{W} \cdot \mathbf{Z}_{\mathrm{v}}, \quad \text{with } \mathbf{Z}_{\mathrm{v}} g(\mathbf{X}_{\mathrm{v}})\tag{1}Hv​W⋅Zv​,withZv​g(Xv​)(1)含义冻结的 CLIP 编码器g(⋅)g(\cdot)g(⋅)把图像Xv\mathbf{X}_vXv​编码为视觉特征Zv\mathbf{Z}_vZv​再经可训练矩阵W\mathbf{W}W投到与词嵌入同维的空间得到视觉 token 序列Hv\mathbf{H}_vHv​。关键没有非线性、没有注意力、没有可学习的查询向量——只做一次线性变换作者的理由是轻量、便于快速迭代数据侧实验本质是把研究预算从结构调参挪到数据构造上代价视觉 token 丢掉了 patch 的二维空间对应关系这直接解释了后文把图像当作 bag of patches的失败模式也解释了为什么本文无法输出坐标或掩码。公式 (2)指令序列构造极简的格式增广Xinstructt{Randomly choose [Xq1,Xv] or [Xv,Xq1],t1Xqt,t1(2) \mathbf{X}_{\text{instruct}}^{t} \begin{cases} \text{Randomly choose } [\mathbf{X}_{\mathrm{q}}^{1}, \mathbf{X}_{\mathrm{v}}] \text{ or } [\mathbf{X}_{\mathrm{v}}, \mathbf{X}_{\mathrm{q}}^{1}], t 1 \\ \mathbf{X}_{\mathrm{q}}^{t}, t 1 \end{cases}\tag{2}Xinstructt​{Randomly choose[Xq1​,Xv​]or[Xv​,Xq1​],Xqt​,​t1t1​(2)含义第一轮把图像和问题随机前后互换后续轮只放问题。这个设计看似随意实则是一种零成本的顺序鲁棒性增广——避免模型学到视觉 token 永远在最前面这种位置捷径。公式 (3)自回归训练目标p(Xa∣Xv,Xinstruct)∏i1Lpθ(xi∣Xv,Xinstruct,i,Xa,i)(3) p(\mathbf{X}_{\mathrm{a}} | \mathbf{X}_{\mathrm{v}}, \mathbf{X}_{\text{instruct}}) \prod_{i1}^{L} p_{\boldsymbol{\theta}}(x_{i} | \mathbf{X}_{\mathrm{v}}, \mathbf{X}_{\text{instruct}, i}, \mathbf{X}_{\mathrm{a}, i})\tag{3}p(Xa​∣Xv​,Xinstruct​)i1∏L​pθ​(xi​∣Xv​,Xinstruct,i​,Xa,i​)(3)含义标准的自回归似然分解。关键在于损失掩蔽loss masking——训练序列形如system-message STOP Human: X_instruct STOP Assistant: X_a STOPSTOP取###只有 assistant 的回答与停止符参与 loss 计算system 与人类提问部分全部屏蔽。这条规则是后续所有指令微调工作的默认做法让模型学怎么答而不是学怎么复述提问。论文总结贡献回顾数据提出首个多模态指令数据构造管道用纯文本 GPT-4 把图文对重铸成158K指令数据并公开数据与提示词。模型给出 CLIP 线性投影 Vicuna 的极简 LMM 结构与训投影层 → 端到端微调的两阶段协议。基准构造 LLaVA-BenchCOCO / In-the-Wild两个指令遵循基准并提出 GPT-4 当裁判的相对分评测。结果ScienceQA 上 LLaVA 单模型 90.92%与 GPT-4 集成后达到92.53% 新 SOTA同时展示出与多模态 GPT-4 相似的对未见图文的对话能力。实验结果精华实验关键数字含义LLaVA-Bench(COCO) 数据消融全量85.1vs 无指令微调 21.5指令微调带来63.6 相对分是性能主来源LLaVA-Bench(In-the-Wild) 对比LLaVA67.3vs BLIP-2 38.1 vs OpenFlamingo 19.1分布外指令遵循显著更好相对分差不是准确率ScienceQA 单模型90.92%SOTA 91.68%人类 88.40%单模型逼近文献 SOTA 并超过人类平均ScienceQA GPT-4 judge92.53%集成带来1.61 个百分点且全类别一致提升设计消融原表 8无预训练 85.81−5.117B 89.84−1.08Stage 1 预训练与模型规模都不可省与前序/相关工作关联本文处于阅读库的B04位置是 B03CLIP与后续所有遥感 MLLM 之间的枢纽vs CLIPB03CLIP 解决图像与文本如何在向量空间对齐做的是相似度匹配LLaVA 解决图像如何进入生成式语言模型并按指令作答做的是条件生成。前者没有生成能力后者不会做检索——同一条图文监督信号的两种用法。vs BLIP-2 / Flamingo它们用 Q-former / gated cross-attention 做更重的连接件靠大规模图文对预训练获得能力LLaVA 反向押注——连接件最轻、数据格式最对。文章明确把更复杂的连接方式留给未来工作这个以数据为中心data-centric的定位是理解全文的钥匙。vs 后续 Improved Baselines [31]阅读库 T17本文止步于 224 输入、13B 规模且定量结果多集中在自建基准[31] 才补齐学术基准与分辨率提升。读本文时应把 [31] 视为同一方法的加强版两篇连读才不会低估这条路线。演进逻辑CLIP 把图文对齐→ LLaVA 把图像接入生成式 LLM 并用指令微调→ LISA / GeoPixel 把语言落到像素。LLaVA 是语言到像素链条上第一个通用接口但它自己只输出文字。局限与改进方向也是切入空间不输出坐标或掩码——框只出现在输入符号里模型本身不做定位。改进方向外接解码头LISA / GeoPixel 路线或用文本坐标输出并验证可解析性。评测以 LLM-as-judge 相对分为主——主结果不是准确率且 COCO 基准的问题由与训练相同的管道生成存在评测与训练同源、裁判与被评同族的双重风险。改进方向遥感上有真实掩码/框应坚持官方定位与分割指标把 LLM 打分限制在开放式描述并做人工一致性检验。224 输入与投影层的架构上限——单层线性投影丢失 patch 空间结构与像素级输出天然冲突。改进方向保留网格结构用于解码或在低空/遥感场景下重估输入分辨率与 token 预算。图片引用说明本文件位于阅读笔记/图片路径按../论文原文/images/换算哈希值与原文![](images/...)完全一致未做替换。
延伸阅读

更多相关文章

2026/9/29 2:14:09

投影与降维:从GIS坐标系到PCA特征压缩的通用思维

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/29 2:14:09

Android Studio 4.2.2 for Windows 安装配置与避坑指南

简介:Android Studio 4.2.2 for Windows 是 Google 官方 Android IDE 的稳定版安装包,面向需要搭建原生安卓开发环境的初学者与进阶开发者,集成了可视化布局编辑器、Kotlin 智能补全、Jetpack 组件模板、Gradle 构建提速、模拟器与 Profiler …

2026/9/29 3:14:12

StarNet深度学习去星:深空摄影后期星点分离实战指南

1. 先聊聊StarNet到底是干什么的从我开始拍深空照片那天起,就一直在跟一个老问题较劲:恒星永远挡在星云前面。拍摄猎户座大星云 M42 的时候,核心区域那几颗亮星周围一圈圈衍射芒,怎么看怎么碍眼。拍面纱星云的时候,暗弱…

2026/9/29 3:14:12

基于Dify的AI复盘工作流:从散乱文本到结构化报告

前阵子整理自己手头的项目复盘材料、客服聊天记录和用户反馈时,我意识到一个问题:每次想认真回顾一件事,最后都变成“当时要是……就好了”。这种状态特别典型——事后看全是正确答案,但当时没人看见。这正是英语里的 hindsight&a…

2026/9/29 3:14:12

基于Go的GaussDB只读MCP服务:为Claude Code构建安全数据查询通道

1. 为什么我要给 Claude Code 配一个只读的 GaussDB 通道先说结论:我写了一个用 Go 实现的 MCP 服务,把 GaussDB 的查询能力以只读方式暴露给 Claude Code。它解决的核心问题是——我想让 AI 帮我查数据、写 SQL、分析表结构,但绝对不能让它在…

2026/9/29 3:14:12

复杂系统数字孪生:从可视化大屏到智能仿真引擎的跃迁

简介:一份关于复杂系统数字孪生的Word文档,面向工业互联网、智能制造领域的研究者与工程师,系统梳理了数字孪生从单元级到系统级的演进路径,并围绕GE智能电厂IGCC场景解析典型应用。内容覆盖产品生命周期各阶段孪生模型的融合、P-…

2026/9/29 3:14:12

智能硬件四维协同:板卡、固件、云端、App的契约化开发实践

1. 为什么智能硬件项目总在“最后一公里”集体失速?“板卡还没回厂,固件还在debug,云端API刚跑通,App提测被拒三次”——这几乎是我过去八年带过的23个智能硬件项目里,90%以上团队在Q3末期脱口而出的原话。不是没人加班…

2026/9/29 3:09:11

GLSL语法规范深度拆解:从BNF到Shader编译错误排查

说一下我对这个标题的直觉。很多OpenGL开发者,写了几年shader,GLSL代码能跑能出画面,但很少人真正翻开过规范最后那几十页——OpenGL Shading Language Specification里的Shading Language Grammar,也就是GLSL的语法规范英文原版。…

2026/9/28 3:03:23

东莞市品牌网站建设报价常见报错与解决

东莞品牌网站建设报价单背后:一份保姆级建站教程避坑实录 网站做好了没人访问,这大概是很多老板最头疼的事。花了大几万做的品牌站,上线后流量惨淡,比路边摊还冷清。别急着骂外包公司,很多“东莞品牌网站建设报价”里藏着不少猫腻,比如用模板站冒充定制…

2026/9/28 6:05:15

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解 【免费下载链接】spirula-studio Cross-vendor 3D Gaussian Splatting trainer - video to splat to mesh, Vulkan or CUDA. 项目地址: https://gitcode.com/GitHub_Trending/sp/spirula-studio Sp…

2026/9/28 6:07:41

SEO怎么推广速查手册新手避坑实战指南

SEO怎么推广速查手册新手避坑实战指南 模板网站太丑不够用?别急着加滤镜,那是治标不治本。很多老板盯着后台流量掉得眼红,却还在纠结首页Banner的圆角是不是3像素。这就像穿着西装去挖土,姿势不对,努力白费。我整理这份 速查手册…

2026/9/29 0:04:04

AI Evals实战指南:从零搭建LLM应用评估体系与CI/CD集成

1. 为什么AI Evals值得你花时间搞明白做LLM应用的人,迟早会撞上同一堵墙:模型输出飘忽不定,今天答得好好的,明天换个问法就胡说八道。你改了一版提示词,感觉好像好了点,但到底好了多少?说不清。…

2026/9/29 0:04:04

Java采购管理系统实战:从数据库设计到事务一致性

简介:这是一套面向Java Web初学者与课程设计者的采购管理系统完整源码,采用JSP技术搭建,配合MySQL数据库,用于解决企业采购信息的管理问题,适合作为毕业设计、课程大作业或进销存类项目的参考模板。系统实现了用户登录…

2026/9/25 20:55:38

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/26 19:58:38

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/28 1:59:25

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑