06 - 大模型基础理论面试题¶
⚠️ 时效性说明:本章涉及前沿模型/价格/榜单等信息,可能随版本快速变化;请以论文原文、官方发布页和 API 文档为准。
Transformer、预训练、微调等核心理论
📖 章节概述¶
本章将整理大模型基础理论相关的面试题,包括Transformer架构、预训练方法、微调技术等内容。
🎯 学习目标¶
完成本章后,你将能够:
- 掌握大模型的核心理论
- 熟悉常见的面试题型
- 理解Transformer架构
- 了解预训练和微调方法
1. Transformer架构¶
Q1: Transformer的核心组件是什么?¶
解答: Transformer的核心组件包括:
- 自注意力机制(Self-Attention):计算序列中每个位置与其他所有位置的关系
- 多头注意力(Multi-Head Attention):并行计算多个注意力,捕获不同的特征
- 位置编码(Positional Encoding):为序列添加位置信息
- 前馈网络(Feed-Forward Network):对每个位置独立应用非线性变换
- 残差连接(Residual Connection):缓解梯度消失问题
- 层归一化(Layer Normalization):稳定训练过程
Q2: 自注意力机制是如何工作的?¶
解答: 自注意力机制的工作步骤:
- 计算Q、K、V:通过线性变换得到查询(Q)、键(K)、值(V)
- 计算注意力分数:Q和K的点积
- 缩放:除以√d_k(防止梯度消失)
- Softmax归一化:得到注意力权重
- 加权求和:用注意力权重对V进行加权求和
公式:
Q3: 位置编码有哪些类型?¶
解答: 常见的位置编码类型:
- 绝对位置编码:
- 正弦/余弦位置编码(原始Transformer)
-
可学习的位置嵌入
-
相对位置编码:
- T5 Bias
-
Transformer-XL
-
旋转位置编码(RoPE):
- 当前最流行
-
通过旋转矩阵编码位置信息
-
ALiBi(Attention with Linear Biases):
- 通过线性偏置编码相对位置
2. 预训练¶
Q4: 什么是预训练?为什么需要预训练?¶
解答: 预训练是在大规模数据上训练模型,学习通用的语言表示。
需要预训练的原因: 1. 数据效率:大规模数据学习更有效的表示 2. 知识迁移:学习到的知识可以迁移到下游任务 3. 泛化能力:提高模型的泛化能力 4. 加速收敛:下游任务训练更快收敛
Q5: 常见的预训练目标有哪些?¶
解答: 常见的预训练目标:
- MLM(Masked Language Modeling):
- BERT使用
-
随机mask部分token,预测被mask的token
-
CLM(Causal Language Modeling):
- GPT使用
-
自回归预测下一个token
-
NSP(Next Sentence Prediction):
- BERT使用
-
预测两个句子是否连续
-
Span Prediction:
- T5使用
-
预测被mask的span
-
Denoising Autoencoding:
- BART使用
- 去噪自编码
Q6: 什么是Scaling Law?¶
解答: Scaling Law描述了模型性能与模型大小、数据量、计算资源之间的关系。
主要发现: 1. 模型性能与模型大小呈幂律关系 2. 模型性能与数据量呈幂律关系 3. 模型性能与计算量呈幂律关系 4. 三者之间存在权衡关系
公式:
其中N是模型参数量,D是数据量,E是不可约损失(自然语言固有的熵),A、B、α、β为拟合常数。计算量 C ≈ 6ND,与 N、D 不独立,不作为联合公式中的独立变量。3. 微调¶
Q7: 什么是微调?微调有哪些方法?¶
解答: 微调是在预训练模型基础上,使用特定任务的数据进行训练。
微调方法: 1. 全量微调(Full Fine-tuning): - 更新所有参数 - 需要大量数据和计算资源
- 部分微调(Partial Fine-tuning):
- 只更新部分层
-
减少计算量
-
参数高效微调(PEFT):
- LoRA(Low-Rank Adaptation)
- Adapter
- Prefix Tuning
- Prompt Tuning
Q8: LoRA的原理是什么?¶
解答: LoRA通过低秩分解来减少可训练参数。
核心思想: - 假设权重更新ΔW是低秩的 - ΔW = BA,其中B和A是低秩矩阵 - 只训练B和A,参数量大幅减少
公式:
优势: - 参数量少(通常<1%) - 不增加推理开销 - 可以合并到原始权重
Q9: QLoRA相比LoRA有什么改进?¶
解答: QLoRA(Quantized LoRA)相比LoRA的改进:
- 量化基础模型:将基础模型量化到4位
- 低秩适配器:使用LoRA进行微调
- 显存大幅降低:显存需求降低约75%
优势: - 可以在消费级GPU上微调大模型 - 精度损失小 - 推理速度不受影响
4. 练习题¶
基础练习¶
-
实现自注意力
-
实现位置编码
进阶练习¶
-
实现LoRA
-
实现MLM预训练
5. 最佳实践¶
✅ 面试技巧¶
- 理解核心概念
- 深入理解Transformer架构
- 掌握预训练和微调方法
-
了解最新研究进展
-
准备代码示例
- 准备关键算法的实现
- 理解代码细节
-
能够解释代码
-
结合实际项目
- 将理论与项目经验结合
- 举例说明应用场景
- 展示实践经验
❌ 避免做法¶
- 死记硬背
- 理解核心原理
- 掌握关键公式
-
能够灵活应用
-
忽视细节
- 注意技术细节
- 理解设计决策
-
了解权衡取舍
-
缺乏实践
- 结合实际项目
- 展示应用能力
- 分享经验教训
6. 总结¶
本章介绍了大模型基础理论的面试题:
- Transformer架构: 自注意力、多头注意力、位置编码
- 预训练: MLM、CLM、Scaling Law
- 微调: 全量微调、LoRA、QLoRA
掌握这些理论知识是面试的基础。
7. 下一步¶
继续学习07-Transformer架构面试题,深入了解Transformer架构的细节。