STIC:通过图像理解自训练增强大视觉语言模型
论文:Enhancing Large Vision Language Models with Self-Training on Image Comprehension
作者:Yihe Deng*, Pan Lu*, Fan Yin, Ziniu Hu, Sheng Shen, James Zou, Kai-Wei Chang, Wei Wang
机构:UCLA, UC Berkeley, Stanford University
发布时间:2024年5月
发表会议:NeurIPS 2024
分类标签:
LVLMSelf-TrainingDPOImage ComprehensionDescription-InfusedPreference Data
一句话总结
提出 Self-Training on Image Comprehension (STIC):两阶段自训练方法——阶段一用精心设计的 good/bad prompt 和图像腐蚀构造偏好数据进行正则化 DPO 自训练图像描述能力;阶段二将自生成图像描述注入已有 SFT 数据进行推理能力微调——仅用 6k 无标签 MSCOCO 图像和 5k 复用 SFT 数据,在 LLaVA-v1.6 7B 上 7 个基准平均提升 4.0%,ScienceQA 提升 6.4%,且减少 70% 监督数据需求。
一、问题与动机
1.1 高质量视觉-语言数据获取瓶颈
LVLM 的性能高度依赖高质量视觉-语言微调数据,但获取成本极高:
- 人工标注:多模态数据标注成本远高于纯文本
- GPT-4V 生成:6k 图像描述(1k tokens/条)花费约 $200,且仍不算便宜
- 数据需求增长:LLaVA-v1.6 等新模型对数据规模和质量要求持续提升
1.2 视觉模态引入的自训练挑战
纯文本领域的自训练(self-training)已展现出利用模型自生成数据提升性能的巨大潜力(SPIN、Self-Rewarding LLM 等)。但 LVLM 的自训练面临独特挑战:
与纯文本不同,LVLM 必须先理解输入图像的内容,然后才能推理并回答相关问题。因此自训练需要同时提升两个能力:图像感知(image perception) 和 基于图像的推理(reasoning over images and texts)。
1.3 核心洞察
STIC 的关键思路是将自训练分为两个有针对性的阶段:
- 先提升感知:通过自构造的图像描述偏好数据,让模型学会区分准确与不准确的视觉描述
- 再提升推理:将自生成的高质量图像描述注入指令数据,让模型学会基于准确的视觉信息进行推理
二、预备知识
2.1 LVLM 的基本形式
LVLM 由三部分组成:视觉编码器
响应
2.2 Direct Preference Optimization (DPO)
给定偏好数据集
其中
2.3 Self-Play Fine-Tuning (SPIN)
SPIN 将模型自身的生成作为"dis-preferred"响应,用 SFT 数据的 ground truth 作为"preferred"响应,通过迭代自对弈优化。STIC 继承了"自生成数据"的思路,但针对视觉模态做了根本性的重新设计。
三、核心方法
3.1 阶段一:图像理解自训练(Image Comprehension Self-Training)
核心思想:让 LVLM 用同一批无标签图像生成一对质量不同的图像描述,作为偏好数据进行 DPO 微调。
Preferred Response 的生成
使用精心设计的 step-by-step good prompt 引导模型生成详细、准确的图像描述。Good prompt 包含 5 个维度的引导:
- 识别主要对象(人、动物、物品)并描述其行为
- 描述场景设置(室内/室外、环境类型)
- 传达图像氛围(光照、天气、表情)
- 描述主导颜色和整体构图
- 指出可能相关的细节或符号
Dis-preferred Response 的生成
以 50% 的概率随机选择两种策略之一:
策略 A:Bad Prompting(50%)
使用刻意诱导幻觉的 prompt,如:
- "Describe the image with imaginative objects that may exist in the scene."
- "Incorporate elements that, though absent, would seamlessly fit into the context of the picture."
- "Augment the scene with details of potential events or items that are plausible."
这些 prompt 引导模型描述图像中不存在但"看似合理"的内容,生成的文本表面流畅但视觉不准确。
策略 B:Image Corruption(50%)
保持正常 prompt 不变,但对输入图像进行腐蚀:
- Color jittering:颜色失真导致模型错误描述物体颜色
- Lower resolution:降低分辨率导致模型丢失细节、产生模糊描述
正则化 DPO 损失
在标准 DPO 基础上增加preferred response 的显式正则项:
其中超参数
阶段一算法
- 输入:无标签图像集
,good prompt ,bad prompt 集合 ,图像腐蚀函数 ,base LVLM - for
(遍历每张图像):
- 随机采样
和一个 captioning prompt - 用 good prompt
生成 preferred response: - if
:随机采样 bad prompt ,生成 dis-preferred response: - else:腐蚀图像
,生成 dis-preferred response: - 将
加入偏好数据集 - 用正则化 DPO 损失更新
3.2 阶段二:描述注入式微调(Description-Infused Fine-Tuning)
阶段一提升了模型的图像感知能力,阶段二进一步利用自生成的高质量图像描述来提升模型的推理能力。
具体做法:
- 从模型已使用过的 SFT 数据中随机子采样 5k 条
- 用阶段一训练后的模型为每条数据生成图像描述
- 将描述注入原始指令的前面,保持原始 ground truth 不变:
Image description: {model description}
<original instruction>- 对这个描述注入的子集进行 1 个 epoch 的 SFT
这一步确保模型学会将视觉信息有效整合到推理过程中,而不仅仅是提高描述能力。
3.3 可选推理策略:Describe-and-Respond (DaR)
经过两阶段训练后,推理时可以让模型先描述图像、再回答问题(DaR),实现 prompt 自增强:
- 模型先为输入图像生成一段描述
- 将描述和原始问题一起作为 prompt
- 模型基于描述和图像回答问题
DaR 在 STIC 微调后效果显著(+1.1% 平均),但对 base LVLM 效果不稳定(-2.2% 平均),说明 DaR 需要与微调过程协同才能发挥作用。
3.4 关键超参数
| 参数 | 阶段一 | 阶段二 |
|---|---|---|
| Learning rate | 1e-7 | 2e-5 |
| Global batch size | 4 | 64 |
| Optimizer | AdamW | AdamW |
| LoRA rank | 128 | 128 |
| LoRA alpha | 256 | 256 |
| LoRA target | all | all |
| 正则系数 | 1/1024 | — |
| Warmup ratio | 0.03 | 0.03 |
| LR scheduler | cosine | cosine |
| Epoch | 1 | 1 |
| 数据量 | 6k 无标签图像 | 5k 复用 SFT 数据 |
| GPU | 4× A6000 | 4× A6000 |
| 总训练时间 | ~6h(两阶段合计) |
四、实验结果
4.1 主实验
Table 1:七个 VQA 基准上的性能对比
| Model | ScienceQA | TextVQA | ChartQA | LLaVA-Bench | MMBench | MM-Vet | MathVista | Average |
|---|---|---|---|---|---|---|---|---|
| InstructBLIP (7B) | 60.5 | 50.1 | – | 60.9 | 36.0 | 26.2 | 25.3 | – |
| mPLUG-OWL2 (7B) | 64.5 | 54.3 | – | 59.9 | 64.5 | 36.2 | 22.2 | – |
| LLaVA-v1.5 (7B) | 66.8 | 58.2 | 6.32 | 65.4 | 64.3 | 31.1 | 25.1 | 45.3 |
| + POVID | 68.8 | – | – | 68.7 | 64.9 | 31.8 | – | – |
| + STIC | 69.5 | 61.4 | 6.64 | 68.9 | 65.3 | 32.6 | 27.2 | 47.0 |
| LLaVA-v1.6 (7B) | 68.9 | 60.3 | 36.4 | 77.3 | 63.7 | 42.2 | 34.6 | 54.7 |
| + STIC | 75.3 | 65.2 | 41.5 | 79.2 | 67.8 | 45.0 | 37.0 | 58.7 |
关键数字:
- LLaVA-v1.6 平均提升 +4.0%(54.7% → 58.7%),ScienceQA 最高提升 +6.4%
- LLaVA-v1.5 平均提升 +1.7%(45.3% → 47.0%)
- 更强的基模型自改进效果更显著(v1.6 的 +4.0% vs v1.5 的 +1.7%),提示自训练的效果与模型固有能力正相关
4.2 DaR Prompting 的效果
Table 2:DaR 对 base LVLM 与 STIC 的不同影响
| Method | DaR | ScienceQA | TextVQA | ChartQA | LLaVA-Bench | MMBench | MM-Vet | MathVista | Average |
|---|---|---|---|---|---|---|---|---|---|
| Original | ✗ | 68.9 | 60.3 | 36.4 | 77.3 | 63.7 | 42.2 | 34.6 | 54.8 |
| Original | ✓ | 69.9 | 56.6 | 34.6 | 78.5 | 50.7 | 42.3 | 34.7 | 52.5 |
| w/ STIC | ✗ | 72.5 | 63.4 | 39.3 | 78.4 | 68.7 | 45.7 | 35.2 | 57.6 |
| w/ STIC | ✓ | 75.3 | 65.2 | 41.5 | 79.2 | 67.8 | 45.2 | 37.0 | 58.7 |
- DaR 对 base LVLM 效果不稳定(MMBench 63.7→50.7 大幅下降),平均反而降低 2.2%
- DaR + STIC 微调后效果稳定且进一步提升 +1.1%,证明了微调与推理策略的协同效应
- 即使不用 DaR,STIC 也实现了 +2.9% 的平均提升
4.3 Dis-preferred 样本的重要性
Table 3:移除负样本的消融
| Model | ScienceQA | TextVQA | LLaVA-Bench |
|---|---|---|---|
| Original | 68.9 | 60.3 | 77.3 |
| w/ STIC (positive only) | 71.8 | 63.7 | 76.7 |
| w/ STIC | 75.3 | 65.2 | 79.2 |
仅用 preferred 样本做 SFT(去掉 DPO)在 LLaVA-Bench 上反而比基线下降 0.6%,而完整 STIC 提升 1.9%。这说明负样本在对齐偏好、帮助模型区分高质量与低质量描述方面发挥了关键作用。
4.4 阶段递进效果
在 ScienceQA 上的逐阶段提升(LLaVA-v1.6 7B):
| 阶段 | ScienceQA |
|---|---|
| Base | 68.86 |
| + Stage 1 | 69.96 (+1.10) |
| + Stage 2 | 72.48 (+2.52) |
| + DaR | 75.26 (+2.78) |
阶段一虽然只训练图像描述能力,但已在下游 VQA 任务上带来提升;阶段二利用自生成描述增强推理后提升更大;DaR 进一步释放了描述-推理协同潜力。
4.5 数据规模的 Scaling
LLaVA-Bench 上偏好数据从 6k → 12k MSCOCO 图像:
| 数据量 | Acc. Gain |
|---|---|
| 6k 图像 | +1.9% |
| 12k 图像 | +3.1% |
翻倍数据带来近 63% 的额外收益提升,表明 STIC 能有效利用更多无标签图像数据,且远未触及上限。
4.6 图像分布与性能增益的关联
通过 t-SNE 可视化 MSCOCO 与各基准数据集的图像分布重叠度,发现:
| Benchmark | Gain | 与 MSCOCO 分布重叠 |
|---|---|---|
| ScienceQA | +6.4% | 高 |
| ChartQA | +5.1% | 低(异常值) |
| TextVQA | +4.9% | 高 |
| MathVista | +2.4% | 低 |
ChartQA 是一个有趣的异常值——尽管与 MSCOCO 分布重叠极小,仍获得 +5.1% 的高提升,暗示 STIC 提升的图像理解能力对图表推理有基础性作用。
五、局限性与未来方向
- MathVista 提升有限:MSCOCO 仅含自然图像,与数学推理所需的多样图像类型(公式、几何图形、函数图)差异大,限制了在此类任务上的收益
- 偏好数据构造相对粗糙:good prompt vs bad prompt / corrupted image 的二分法简单有效,但可能不足以覆盖需要细致理解图像细节的场景
- 两阶段训练未端到端:阶段一和阶段二是顺序执行的独立过程,探索端到端联合训练可能带来更好的协同效果
- Scaling 上限未知:虽然 6k → 12k 显示了明确的 scaling 趋势,但更大规模时是否会出现收益递减尚不清楚
- 仅验证了 LLaVA 系列:未在更新架构(Qwen-VL、InternVL 等)或更大规模模型上验证泛化性
六、个人思考
6.1 STIC 与 SIMA 的对比
两者发表时间相近(2024.05),都是 LVLM 自训练 + DPO,但设计哲学截然不同:
| 维度 | STIC | SIMA |
|---|---|---|
| 核心目标 | 提升图像理解 + 推理能力 | 缓解模态不对齐导致的幻觉 |
| 偏好数据来源 | good prompt vs bad prompt / corrupted image | greedy vs temperature sampling 自生成 |
| 偏好判定方式 | 构造性(prompt 设计直接决定正负) | 评估性(模型用 critic prompt 自己判断) |
| 是否需要额外评估 | 不需要(正负由构造方式决定) | 需要(模型做 in-context self-critic) |
| 训练阶段 | 两阶段(DPO + 描述注入 SFT) | 单阶段(DPO) |
| 数据来源 | 6k 无标签 MSCOCO + 5k 复用 SFT | 17k prompts from LLaVA-Instruct-150K |
| 推理增强 | DaR(推理时自描述+回答) | 无 |
| 评估重点 | VQA 综合基准(ScienceQA、TextVQA 等) | 幻觉基准(CHAIR、POPE 等) |
| DPO 变体 | 正则化 DPO($+\alpha \log p_\theta(y_w | x)$) |
核心差异在于偏好数据的构造哲学:STIC 通过设计输入(prompt 质量、图像质量)来控制输出质量,属于"构造式";SIMA 让模型自己生成多样输出后自己评判,属于"评估式"。STIC 的方式更简单直接,但依赖于 prompt 设计的质量;SIMA 的方式更灵活,但受限于模型自评估的准确率(89.8%)。
6.2 描述注入式微调的洞察
STIC 阶段二的"描述注入式微调"是一个巧妙的设计——它本质上是在教模型如何利用自己的视觉感知结果进行推理。这与传统的 Chain-of-Thought (CoT) 思路异曲同工:CoT 让模型先生成推理步骤再给出答案,描述注入让模型先生成视觉描述再回答问题。
阶段递进实验(Base → Stage 1 → Stage 2 → DaR)也清晰表明:感知提升(+1.1)是推理提升(+2.5)的基础,两者是串联关系而非并联关系。
6.3 与 CSR 的关联
STIC 和 CSR 都使用 DPO 进行偏好优化,但处于"自改进"频谱的不同位置:
| 维度 | STIC | CSR |
|---|---|---|
| 正负样本区分 | 构造性(不同 prompt / 不同图像质量) | 评估性(CLIP Score + 语言概率打分) |
| 外部依赖 | 无 | CLIP 模型 |
| 迭代训练 | 单次 | 三轮在线迭代 |
| 评估粒度 | 响应级 | 句子级 |
| 主要贡献 | 两阶段训练架构 + 描述注入 | 校准奖励函数设计 |
6.4 图像腐蚀策略的启示
STIC 使用的两种图像腐蚀(color jittering 和 lower resolution)本质上是在模拟两种不同的视觉理解失败模式:
- Color jittering → 模型错误描述物体颜色和属性
- Lower resolution → 模型丢失细节、产生模糊和不确定的描述
这与 HALC 中 FOV 裁剪诱导局部幻觉的思路类似——通过人为降质视觉输入来诱导特定类型的幻觉,再利用这些幻觉作为负训练信号。STIC 的 bad prompting 则是从文本侧诱导幻觉,两条路线互补。
6.5 Scaling 潜力
STIC 最令人兴奋的发现之一是其 scaling 特性:仅用无标签图像就能持续提升性能(6k → 12k:+1.9% → +3.1%)。考虑到互联网上无标签图像的无限供给,这意味着 STIC 可能是一种极其经济的 LVLM 增强方案。但需要注意 t-SNE 分析揭示的"图像分布匹配"问题——自训练数据的图像域分布越接近下游任务,效果越好。这提示了一个潜在的优化方向:根据目标任务的图像分布,策略性地选择自训练用的无标签图像。
参考
- SIMA (Wang et al., 2024):同期的 LVLM 自改进工作,让模型通过三个视觉指标自评估构造偏好数据,代表"评估式"自训练路线
- CSR (Zhou et al., 2024):用 CLIP Score 校准自奖励进行迭代 DPO,另一种自改进偏好构造方案
- POVID (Zhou et al., 2024):用高斯噪声 + 手动注入幻觉构造负样本,STIC 的主要对比基线
- DPO (Rafailov et al., 2023):直接偏好优化,STIC 阶段一的偏好微调基础
- SPIN (Chen et al., 2024):自对弈微调,将模型自身生成作为 dis-preferred 进行迭代自改进,STIC 的灵感来源之一
- Self-Rewarding LLM (Yuan et al., 2024):纯文本自奖励范式,STIC 将自训练思想扩展到视觉模态
- HALC (Chen et al., 2024):FOV 对比解码通过视觉降质诱导幻觉,与 STIC 的图像腐蚀策略思路相通