字节多模态大模型一面二面三面:从 Lora 微调到手撕算法
- 轮次
- 一面
- 时间
- 2026-09
- 来源
- 牛客网
《面试题目》
- 质量过滤用什么模型?
- LoRA 微调的原理是什么?
- Transformer 的核心思想是什么?阐述一下自注意力机制。
- Transformer 和 LLaMA 的 LayerNorm 有什么区别?
- BERT 和 GPT 有什么区别?
- RLHF 和 DPO 是什么?DPO 的 loss 是什么?
- 过拟合是怎么回事?
- 多模态是如何训练的?如何把 Prompt 和微调结合起来?
- 怎么从特别多的 Prompt 里验证你的 Prompt 最好?你认为好的 Prompt 范式是什么?
- 项目在 RLHF 层面有哪些优化方向?DPO 和 PPO 的 trade-off 是什么?
- 数据清洗流程是怎样的?
- 介绍一下 CLIP。
- 如何解决幻觉和复读机问题?
- Transformer 内部多头注意力与单头相比”不同之处”在哪?前馈神经网络的结构是什么,为什么会先提升维度再缩小维度?
- LLaMA 1、2、3 有什么区别?
- 前沿 LLM 了解哪些?国内 LLM 了解哪些?你认为 LLM 推理能力的天花板现在是什么样的?
- 大模型结构有哪些变化?你认为训 LLM 最大的困难是什么?
- 手撕:最长公共子序列;无序数组取中位数(快排思想)。
《参考解析》
LoRA 原理:冻结预训练权重 W₀,在旁边并联一个低秩分解 ΔW = BA,其中 A ∈ R^(r×d)、B ∈ R^(d×r),r 远小于 d。前向变成 h = W₀x + BAx,可训练参数从 d² 降到 2dr。初始化时 A 用高斯、B 置零,保证训练开始时 ΔW = 0、模型行为与原模型一致。BERT 和 GPT:BERT 是 Encoder-only、双向注意力、用 MLM 做预训练,适合理解类任务(分类、抽取、句对匹配);GPT 是 Decoder-only、因果掩码、用自回归下一 token 预测训练,天生适合生成,也是现在 LLM 的统一范式。
Transformer 与 LLaMA 的 LayerNorm 差异:原版 Transformer 是 Post-LN(子层输出后再归一化),深层训练不稳定需要 warmup;LLaMA 用 Pre-LN(进子层前归一化)配 RMSNorm,去掉了均值中心化只做缩放,计算更省、也更稳。另外 LLaMA 把 LayerNorm 换成 RMSNorm 后不再需要 bias 项。
RLHF 与 DPO:RLHF 是三段式——SFT、训奖励模型、用 PPO 在奖励模型指导下优化策略,同时用 KL 惩罚约束不要偏离 SFT 模型太远。它要同时维护四个模型(策略、参考、奖励、价值),显存和调参都重,训练还不稳。DPO 的洞察是:在 KL 约束下的最优策略有闭式解,把它代回奖励函数,就能把「训奖励模型 + 强化学习」直接化简成一个类似分类的损失,直接在偏好数据上优化策略。DPO 的 loss 形式是 -log σ(β·log(π_θ(y_w|x)/π_ref(y_w|x)) - β·log(π_θ(y_l|x)/π_ref(y_l|x))),直觉是拉大「好回答相对参考模型的提升」与「坏回答的提升」之间的差距。trade-off:PPO 上限更高、能利用在线采样,但工程复杂、不稳定;DPO 简单稳定、离线即可训练,但在线探索能力弱、对偏好数据质量更敏感。
CLIP:双塔结构,图像编码器(ViT 或 ResNet)和文本编码器(Transformer)分别把图与文映射到同一个嵌入空间,用对比学习训练——一个 batch 内 N 个图文对构成 N×N 相似度矩阵,对角线是正样本,用对称的 InfoNCE loss 拉近配对、推远非配对。它的价值是零样本分类:把类别名写成 prompt(“a photo of a {class}“)编码成文本向量,与图像向量算相似度取最大即可,不需要下游训练。局限是只学对齐不学生成,对细粒度空间关系和计数不敏感。
前馈网络为什么先升维再降维:FFN 一般写成 W₂·σ(W₁x),中间维度是模型的 4 倍左右。先升维是为了把注意力层混合好的信息投到更高维空间,让非线性激活(GELU/SwiGLU)有足够的表达空间去拟合复杂特征组合;再降维则是投影回模型维度以便残差相加和堆叠。可以理解为「在高维空间做特征交互,在低维空间做信息传递」,参数量的绝大部分也集中在这里,因此它常被看作模型的「知识存储」。
幻觉与复读机:幻觉的成因是模型本质在预测下一个 token 而不是查数据库,训练目标也不惩罚「流畅的错误」。降低手段分三层——数据层保证训练与检索语料准确;推理层用 RAG 提供依据、要求引用原文、允许回答”资料中没有”;后处理层做事实校验和规则拦截。复读机(重复退化)多发生在解码阶段:贪心或低温度加上长输出容易陷入循环。对策包括重复惩罚、n-gram 阻止、温度与 top-p 调整;训练侧则要检查数据里是否有大量重复文本、以及 SFT 是否让模型过度模仿某个固定句式。
过拟合:模型在训练集上表现持续变好、验证集上先好后坏。本质是模型容量相对数据量过大,把噪声也记了下来。缓解手段是加数据、数据增强、正则化(权重衰减、Dropout)、早停、降低模型规模,以及 LoRA 这类低秩微调——它天然限制了可训练自由度,本身就是一种正则。