大模型基础面试知识全解析:架构、训练与微调策略
本文系统梳理了大语言模型的核心面试知识点,涵盖注意力机制变体、位置编码、归一化方法、预训练范式、微调技术如 SFT 与 RLHF、分布式训练策略、多模态模型原理以及扩散模型基础。内容涉及从底层数学公式到工程实践的全链路解析,旨在帮助技术人员深入理解大模型技术栈并应对相关面试挑战。

本文系统梳理了大语言模型的核心面试知识点,涵盖注意力机制变体、位置编码、归一化方法、预训练范式、微调技术如 SFT 与 RLHF、分布式训练策略、多模态模型原理以及扩散模型基础。内容涉及从底层数学公式到工程实践的全链路解析,旨在帮助技术人员深入理解大模型技术栈并应对相关面试挑战。

本文系统梳理了大语言模型(LLM)的核心技术知识点,涵盖注意力机制变体、位置编码、归一化方法、预训练范式、微调技术如 SFT 与 RLHF、分布式训练策略、多模态模型原理以及扩散模型基础。内容涉及从底层数学公式到工程实践的全链路解析。
多头注意力(MHA)、分组查询注意力(GQA)、多查询注意力(MQA)以及混合注意力(MLA)是常见的注意力结构变体。在超长文本处理中,RingAttention 和 Ulysses 等序列并行技术也被广泛应用。Flash Attention 通过利用 GPU SRAM 比 DRAM 更快的特性,融合多个算子,省去 softmax 前用于反向梯度求导的激活值,从而显著提升计算效率。
常见的位置编码包括正弦位置编码、可学习位置编码以及旋转位置编码(RoPE)。这些编码通常应用在 QKV 的 Linear 层之后,QK 矩阵计算之前。RoPE 能够有效地支持长文本外推,结合 RoPE NTK 外推技术可以进一步提升模型对长上下文的处理能力。
LayerNorm 分为 PreNorm 和 PostNorm 两种形式。此外还有 GroupNorm 和 RMSNorm。RMSNorm 相比 LayerNorm 去除了均值计算,提升了运行效率。其计算公式如下:
$$ \text{RMSNorm}(x) = x \cdot \frac{1}{\sqrt{\frac{1}{d}\sum_{i=1}^{d}x_i^2 + \epsilon}} \cdot w $$
其中 rsqrt 是 "reciprocal square root" 的缩写,意为 "倒数平方根"。PyTorch 实现示例:
class RMSNorm(torch.nn.Module):
def __init__(self, dim: int, eps: float = 1e-6):
super().__init__()
self.eps = eps
self.weight = nn.Parameter(torch.ones(dim))
def _norm(self, x):
return x * torch.rsqrt(x.pow(2).mean(-1, keepdim=True) + self.eps)
def forward(self, x):
if rms_norm is not None and x.is_cuda:
return rms_norm(x, self.weight, self.eps)
else:
output = self._norm(x.float()).type_as(x)
return output * self.weight
标准的 Transformer 包含 FFN 模块,通常由两个线性层和一个激活函数组成。在大模型中,为了提升性能,常采用 SwiGLU 等变体结构。
为什么自回归是最主流的预训练方法?因为它与下游任务最接近,Zero-shot 能力好,记忆能力强,且具有低秩特性。OpenAI 跑通了 GPT 范式后,确立了这一主流地位。在此之前,BERT 占据主导。OPT-175B 曾尝试复现 GPT-3 但未成功,否则 GPT 范式可能会更早普及。
除自回归外,还有其他预训练方法:
在预训练阶段提升模型性能的关键在于清洗高质量数据。要求数据丰富多样、去重复、无害化、低噪音,且代码结构和数学结构更加合理。可以使用 BERT 或小模型进行初步清洗,尤其是互联网数据。其余数据源包括 GitHub、百科、专利、Arxiv 等。数据格式通常从 Markdown 转换为 JSON。知识蒸馏也是提升性能的重要手段。
LoRA 通过在每层增加少量可训练参数,在主参数旁边增加一个参数量很小的低秩参数(W+BA),A 随机初始化,B 输出 0 初始化。这可以在一定程度上避免遗忘现象,但不能节省计算量。省显存主要省在优化器上,这对于 LLM 参数量大有明显影响,对视觉模型影响很小。一般 LLM 微调或 AIGC(Diffusion)生成使用。 QLora 进一步将参数量化,以节省更多显存。
Prompt Tuning 增加几个可学习的 prompt token 并调它们。它省显存,不容易遗忘,不容易过拟合,但效果通常没有全量微调好。
RLHF 的目标是让 LLM 输出的回答评分尽可能高,同时不要偏离太多,保证它还能正常做回答,防止训成一个评分很高但是回答乱码的东西。
LLM 语境中的 RLHF:LLM 生成 token 的过程是递归进行的。每次递归中,给定的上下文则是当前的状态,需要预测出的 token 则是行动。该问题被归类到离散动作空间的强化学习。PPO(Proximal Policy Optimization)是强化学习中策略梯度法中的一个算法,可用于离散或连续动作空间。此时,LLM 本身便是策略网络(Actor)。
DPO(Direct Preference Optimization)是一种直接优化偏好数据的算法。其核心思想是将 PPO 的显式解转化为更稳定的形式,避免了训练 Reward Model 和复杂的采样过程。
常见的 SFT 指令格式为 JSON 结构:
{"instruction": {}, "input": {}, "output": {}}
量化可以用 Open Triton 或者 FasterTransformer 重写算子作为支撑。常用量化方法包括 AWQ(激活感知权重量化)、GPTQ(GPT 量化方法)、GGUF(llama.cpp)。量化精度通常为 4bit、8bit、16bit,一般说 W4A16,即参数为 4bit,激活值为 16bit。推荐 W8A8。临时常用 bitsandbytes 库进行动态量化。
混合精度训练使用 fp16 或 bf16。AMP(Nvidia)、torch autocast、DeepSpeed(强制全部参数 fp16)都是相关工具。混合精度训练节省的显存仅来源于激活值,而非参数值、梯度、优化器。
计算方法对比:
经典理解下,ChatGLM1 为什么是 6B?应该是有 8 卡 A100 80G 几台,做 Zero1 或者 Zero2 切分,正好加上激活值差不多就是 80G。用点 BERT 时代祖传数据集,再 SFT 调下,就是 ChatGLM1。试错成本低,迭代效率高。
现在更多都是 VLLM 了,BLIP2 那种浅对齐,CLIP 和 LLM 分别快速发展,哪天要用了,浅对齐下。LLM 模型越大越不好对齐,需要更多数据。更多参考 Deepseek 和 Qwen 的技术报告。
ControlNet 是两路分支模型。冻结原模型,复制一份 UNet 下采样部分到右侧,右侧分支上采样部分为 Zero 卷积。基于输入条件训练调整模型输出。改进版 ControlNet-XS 只需基础模型 1% 的参数即可实现最先进的结果。原因是 ControlNet 的右侧下采样直接复制,需要重新学习知识,改进增加了右侧下采样和左侧下采样信息的交互,参数量更小,解决了'延迟反馈'的问题。
SAM(Segment Anything Model)过 ViT 的特征和点/框位置的编码 Embedding 进行交互,输出层级的 Segment 框。
Sora 是文生视频模型。其任意分辨率的实现采用了 Patch n' Pack: NaViT,一种 Vision Transformer for any Aspect Ratio。Sora 的重要技术包括 DiT(Diffusion Transformer)、3D 卷积、Video 感知等。IP-Adapter 使用 Dual Cross_Attention,一个保留原能力,一个输入图片信息,图片信息学习 LLaVA 那种浅对齐。为什么用 CLIP 而不用 SAM 的 Backbone?因为更想提取语义风格信息,而非精细化的 OCR 信息。
分词是将文本拆分成单独的单词或符号(称为 Tokens)的过程。大部分 GPT 都是 BPE 算法,部分 T5、BERT 不用这个,用 WordPiece。一般 10w 左右词汇,10 万分类问题。压缩率、速度和效果的权衡问题。BPE 库常用 SentencePiece。
Adam 优化器和 SGD 的区别:
RAG(检索增强生成)、长文本、Agent、群体对话、拒答、Web 搜索技术、文本整理、报表分析是大模型的发展趋势。RAG 还是 BERT 抽取特征,计算余弦相似度,然后送给 LLM 整理输出。
掌握大模型技术不仅需要理解理论公式,还需要熟悉工程实践。从数据清洗、预训练、微调到部署,每一个环节都至关重要。建议参考 InternLM2 的洗数据论文把控数据质量,关注 Deepseek 和 Qwen 的技术报告了解前沿进展。通过系统学习,可以有效应对技术面试并解决实际项目需求。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online