返回 多模态 思维导图
中文·English
👁️ 多模态ID: masked-cross-entropy

Masked Cross-Entropy

Masked Cross-Entropy Loss
🎯核心定义
Masked Cross-Entropy (Masked CE) 是 VLM 的标准训练损失——序列级 next-token 预测, 但只在 assistant (模型回答) 文本 token 上计算损失, 屏蔽用户指令 token 与全部视觉 patch token 的梯度: L=tassistantlogpθ(ytx<t)\mathcal{L} = -\sum_{t \in \text{assistant}} \log p_\theta(y_t \mid x_{<t}) 输入序列为 x=[v1,,vN,u1,,um,a1,,aL]x = [v_1, \dots, v_N, u_1, \dots, u_m, a_1, \dots, a_L] (视觉 patch → 用户指令 → assistant 回答), 因果注意力对全部 token 可见, 但只有 tassistantt \in \text{assistant} 位置产生损失——等价于 LLM SFT 的 labels 机制: 非监督位置 label = ignore_index\text{ignore\_index} (如 -100)。 为什么屏蔽: (1) 视觉 patch token 没有“下一个 token”的监督目标 (它们由编码器静态提供, 不是生成目标), 对它们算 CE 会强迫模型预测 patch 序列, 既无意义又干扰文本学习; (2) 用户指令不是模型该生成的内容, 预测指令会鼓励模型“续写用户话术”; (3) 计算效率——高分辨率输入下视觉 token 占序列绝大部分 (336×336、patch 14 → 576 个视觉 token, 常占整条序列 85–90%), 屏蔽后反向传播量近似下降一个量级。归一化可加 1/L1/L (按监督 token 数平均)。
💡使用场景
VLM 全阶段训练 (预对齐/预训练/SFT) 的标准目标; 面试追问“多模态训练的 loss 怎么写、视觉 token 有没有监督”; 也解释为什么幻觉与视觉梯度缺位相关 (见 multimodal-hallucination 卡)。
解决的核心痛点
朴素地“整条序列算 CE”会让模型学预测图像 patch 与复述用户问题, 浪费 85–90% 的计算且损伤生成质量; Masked CE 把监督集中到模型真正要生成的内容 (assistant 文本), 与 LLM chat 模板的 ignore_index 机制同源, 是 VLM 与 LLM 训练目标统一的关键设计。
🎯5 个高频面试考点 (Exam Points)
1
写出 Masked CE 公式, 哪些 token 被屏蔽?为什么?
2
对视觉 patch token 算 CE 会发生什么问题?
3
视觉 token 占序列 85–90% 时, 屏蔽如何影响计算量 (336×336→576 patch)?
4
Masked CE 与 LLM SFT 的 ignore_index=-100 机制如何对应?
5
为什么用户指令也要屏蔽?不屏蔽会学到什么?
📖 关联深度指南:📄 vision-language-models
更新于 2026-08-12
🎯
检验攻克程度:针对「Masked Cross-Entropy」专属刷题排雷
做单选排雷题、推导选项机制,答错自动收录进专属错题本。
🚀 开始本考点专项刷题
上一个知识点VLM 三阶段训练下一个知识点多模态偏好对齐

🔗 更多 多模态 知识点卡片

语音识别 ASR音频表示Classifier-Free Guidance (CFG)CLIP 应用