Top 50 大型语言模型 (LLM) 面试题

27 min

引言

大型语言模型(LLMs)正在彻底改变人工智能,催生了从聊天机器人到自动化内容创作的各种应用。本文档汇集了 50 个核心面试问题,经过精心策划,旨在加深您对 LLM 的理解。每个问题都配有详细的答案,融合了技术见解与实际案例。


50 个核心 LLM 面试问题与解答

1. 什么是标记化(Tokenization),为什么它对 LLM 至关重要?

标记化(Tokenization)是将文本分解成更小单元(即“词元”或“token”)的过程,这些单元可以是单词、子词(subwords)或字符。例如,“artificial” 可能会被拆分为 “art”、“ific” 和 “ial”。这个过程至关重要,因为 LLM 处理的是词元的数值表示,而不是原始文本。标记化使模型能够处理多种语言、管理罕见或未知词汇,并优化词汇表大小,从而提高计算效率和模型性能。

2. 注意力机制(Attention Mechanism)在 Transformer 模型中如何运作?

注意力机制允许 LLM 在生成或解释文本时,权衡序列中不同词元(token)的重要性。它通过计算查询(query)、键(key)和值(value)向量之间的相似度得分(如使用点积运算),来聚焦于相关的词元。例如,在句子“The cat chased the mouse”(猫追老鼠)中,注意力机制可以帮助模型将“mouse”(老鼠)与“chased”(追)联系起来。该机制提升了模型的上下文理解能力,使 Transformer 在自然语言处理(NLP)任务中非常高效。

3. LLM 中的上下文窗口(Context Window)是什么,为什么它很重要?

上下文窗口指的是 LLM 一次能够处理的词元数量,它定义了模型在理解或生成文本时的“记忆”范围。一个更大的窗口(如 32,000 个词元)允许模型考虑更多的上下文,从而在文本摘要等任务中提高连贯性。然而,大窗口也会增加计算成本。因此,在实际的 LLM 部署中,平衡窗口大小与效率是至关重要的。

4. 在微调 LLM 时,LoRA 和 QLoRA 有什么区别?

LoRA(低秩自适应)是一种微调方法,它通过向模型的层中添加低秩矩阵,以最小的内存开销实现高效的模型适配。QLoRA 在此基础上,通过应用量化(例如,4 位精度)进一步减少内存使用,同时保持较高的准确性。例如,QLoRA 可以在单个 GPU 上微调一个 700 亿参数的模型,使其成为资源受限环境的理想选择。

5. 与贪心解码(Greedy Decoding)相比,束搜索(Beam Search)如何改进文本生成?

束搜索在文本生成的每一步会探索多个候选词序列,并保留前 k 个最可能的序列(即“束”),而贪心解码只选择当前最可能的单个词。例如,当 k = 5 时,束搜索通过平衡概率和多样性,确保生成更连贯的输出,尤其适用于机器翻译或对话生成等任务。

6. 温度(Temperature)在控制 LLM 输出中扮演什么角色?

温度是一个超参数,用于调整文本生成过程中选择词元时的随机性。低温度(如 0.3)会偏向于选择高概率的词元,产生更可预测的输出。高温度(如 1.5)则通过平滑概率分布来增加输出的多样性。通常将温度设置为 0.8 可以在故事创作等任务中平衡创造性与连贯性。

7. 什么是掩码语言建模(Masked Language Modeling),它如何辅助预训练?

掩码语言建模(MLM)是指在输入序列中随机隐藏(或“掩盖”)一些词元,然后训练模型根据上下文来预测这些被隐藏的词元。这种方法被用于 BERT 等模型中,它培养了模型对语言的双向理解能力,使模型能够掌握深层的语义关系。这种预训练方法为 LLM 执行情感分析或问答等任务打下了坚实基础。

8. 什么是序列到序列(Seq2Seq)模型,它们应用于哪些领域?

序列到序列(Seq2Seq)模型将一个输入序列转换为一个输出序列,这两个序列的长度通常不同。它们由一个处理输入的编码器(encoder)和一个生成输出的解码器(decoder)组成。其应用包括机器翻译(如英译西)、文本摘要和聊天机器人等,这些场景的输入和输出长度都是可变的。

9. 在 LLM 训练中,自回归模型(Autoregressive)和掩码模型(Masked)有何不同?

自回归模型(如 GPT)基于先前的词元顺序地预测下一个词元,因此在文本补全等生成式任务中表现出色。掩码模型(如 BERT)利用双向上下文来预测被掩盖的词元,使其成为分类等理解式任务的理想选择。它们各自的训练目标决定了其在生成与理解方面的不同优势。

10. 什么是词嵌入(Embeddings),它们在 LLM 中如何初始化?

词嵌入是表示词元的密集向量,它们在一个连续的空间中捕捉词元的语义和句法属性。它们通常被随机初始化,或使用 GloVe 等预训练模型进行初始化,然后在训练过程中进行微调。例如,“狗”的词嵌入可能会在宠物相关的任务中不断演化,以更好地反映其上下文,从而提高模型准确性。

11. 什么是下一句预测(Next Sentence Prediction),它如何增强 LLM?

下一句预测(NSP)训练模型判断两个句子是否是连续的。在预训练期间,像 BERT 这样的模型会学习对 50% 的正例(连续句子对)和 50% 的负例(随机句子对)进行分类。NSP 通过让模型理解句子间的关系,提高了在对话系统或文档摘要等任务中的连贯性。

12. Top-k 采样和 Top-p 采样在文本生成中有何不同?

Top-k 采样从概率最高的 k 个词元中进行随机抽样(例如 k = 20),以确保可控的多样性。Top-p(核心)采样则选择累积概率超过阈值 p(例如 0.95)的最小词元集合,从而动态适应上下文。Top-p 提供了更大的灵活性,能够在创意写作中生成既多样又连贯的输出。

13. 为什么提示工程(Prompt Engineering)对 LLM 的性能至关重要?

提示工程是指设计有效的输入(prompt),以引导 LLM 产生期望的响应。一个清晰的提示,如“用 100 字总结这篇文章”,相比模糊的指令,能显著提高输出的相关性。它在零样本(zero-shot)或少样本(few-shot)场景中尤其有效,使 LLM 无需大量微调就能处理翻译或分类等任务。

14. LLM 在微调过程中如何避免灾难性遗忘(Catastrophic Forgetting)?

灾难性遗忘是指微调过程抹去了模型原有的知识。缓解策略包括:

  • リハーサル (Rehearsal): 在训练中混合使用新旧数据。
  • 弹性权重巩固 (Elastic Weight Consolidation): 优先保护关键权重,以保留已有知识。
  • 模块化架构 (Modular Architectures): 添加任务特定的模块,避免覆盖原有权重。

这些方法确保 LLM 在适应新任务的同时,仍能保持其跨任务的通用性。

15. 什么是模型蒸馏(Model Distillation),它对 LLM 有何益处?

模型蒸馏通过训练一个较小的“学生”模型来模仿一个较大的“教师”模型的输出,通常使用软概率(soft probabilities)而非硬标签(hard labels)进行学习。这降低了对内存和计算资源的要求,使得模型能够部署在智能手机等设备上,同时保持接近教师模型的性能,非常适合实时应用。

16. LLM 如何处理词汇表外(Out-of-Vocabulary, OOV)的单词?

LLM 使用子词(subword)标记化方法,如 字节对编码(BPE),将 OOV 单词分解为已知的子词单元。例如,“cryptocurrency”(加密货币)可能被分解为“crypto”和“currency”。这种方法允许 LLM 处理罕见词或新词,确保了语言理解和生成的鲁棒性。

17. Transformer 如何改进传统的 Seq2Seq 模型?

Transformer 通过以下方式克服了传统 Seq2Seq 模型的局限性:

  • 并行处理: 自注意力机制允许同时处理所有词元,而不像 RNN 那样需要顺序处理。
  • 捕捉长距离依赖: 注意力机制能够捕捉序列中相距较远的词元之间的关系。
  • 位置编码: 这些编码保留了序列的顺序信息。

这些特性增强了模型的可扩展性和在翻译等任务中的性能。

18. 什么是过拟合(Overfitting),在 LLM 中如何缓解?

过拟合是指模型记住了训练数据,但无法泛化到未见过的数据。缓解方法包括:

  • 正则化 (Regularization): L1/L2 惩罚项可以简化模型。
  • 丢弃 (Dropout): 在训练期间随机禁用神经元。
  • 早停 (Early Stopping): 当验证集性能不再提升时停止训练。

这些技术确保模型对新数据具有强大的泛化能力。

19. 在 NLP 中,生成式模型和判别式模型有什么区别?

生成式模型(如 GPT)通过对联合概率建模来创建新数据,如文本或图像。判别式模型(如用于分类的 BERT)通过对条件概率建模来区分不同的类别,例如情感分析。生成式模型擅长创造,而判别式模型专注于准确分类。

20. GPT-4 在功能和应用上与 GPT-3 有何不同?

GPT-4 在以下方面超越了 GPT-3:

  • 多模态输入: 能够同时处理文本和图像。
  • 更大的上下文: 最多可处理 25,000 个词元,而 GPT-3 为 4,096。
  • 更高的准确性: 通过更好的微调减少了事实性错误。

这些改进扩展了其在视觉问答和复杂对话等领域的应用。

21. 什么是位置编码(Positional Encodings),为什么要使用它们?

位置编码向 Transformer 的输入中添加了序列顺序信息,因为自注意力机制本身不具备感知顺序的能力。通过使用正弦函数或可学习的向量,位置编码确保像“king”和“crown”这样的词元能根据其位置被正确地解释,这对于翻译等任务至关重要。

22. 什么是多头注意力(Multi-head Attention),它如何增强 LLM?

多头注意力机制将查询、键和值分割到多个子空间中,允许模型同时关注输入的不同方面。例如,在一个句子中,一个“头”可能关注句法,而另一个“头”关注语义。这提高了模型捕捉复杂模式的能力。

23. Softmax 函数在注意力机制中是如何应用的?

Softmax 函数将原始的注意力得分归一化为一个概率分布:

softmax(xi)=exijexj\text{softmax}(x_i) = \frac{e^{x_i}}{\sum_j e^{x_j}}

在注意力机制中,它将原始的相似度得分(来自查询-键的点积)转换为权重,从而突出相关的词元。这确保了模型能聚焦于输入中上下文相关的部分。

24. 点积(Dot Product)在自注意力机制中起什么作用?

在自注意力中,查询(Q)和键(K)向量之间的点积用于计算相似度得分:

Score=QKTdk\text{Score} = \frac{Q \cdot K^T}{\sqrt{d_k}}

高分表示词元之间关联性强。虽然点积计算效率高,但其对于长序列的二次方复杂度(O(n²))催生了对稀疏注意力等替代方案的研究。

25. 为什么语言建模中使用交叉熵损失(Cross-entropy Loss)?

交叉熵损失衡量了模型预测的词元概率分布与真实分布之间的差异:

L=iyilog(y^i)L = - \sum_i y_i \log(\hat{y}_i)

它通过惩罚不正确的预测来鼓励模型选择正确的词元。在语言建模中,它确保模型为正确的下一个词元分配高概率,从而优化性能。

26. 在 LLM 中,嵌入(Embeddings)的梯度是如何计算的?

嵌入的梯度是在反向传播过程中使用链式法则计算的:

LE=LlogitslogitsE\frac{\partial L}{\partial E} = \frac{\partial L}{\partial \text{logits}} \cdot \frac{\partial \text{logits}}{\partial E}

这些梯度用于调整嵌入向量以最小化损失,从而优化其语义表示,以提高任务性能。

27. 雅可比矩阵(Jacobian Matrix)在 Transformer 的反向传播中起什么作用?

雅可比矩阵捕捉了输出相对于输入的多维偏导数。在 Transformer 中,它有助于计算多维输出的梯度,确保在反向传播期间对权重和嵌入进行准确更新,这对于优化复杂模型至关重要。

28. 特征值(Eigenvalues)和特征向量(Eigenvectors)与降维有什么关系?

特征向量定义了数据中的主要方向,而特征值表示了在这些方向上的方差大小。在 PCA 等技术中,选择具有高特征值的特征向量可以在保留大部分方差的同时降低维度,从而为 LLM 的输入处理实现高效的数据表示。

29. 什么是 KL 散度(KL Divergence),它在 LLM 中如何使用?

KL 散度量化了两个概率分布之间的差异:

DKL(PQ)=xP(x)log(P(x)Q(x))D_{KL}(P||Q) = \sum_{x} P(x) \log\left(\frac{P(x)}{Q(x)}\right)

在 LLM 中,它用于评估模型的预测与真实分布的匹配程度,指导微调过程以提高输出质量和与目标数据的一致性。

30. ReLU 函数的导数是什么,为什么它很重要?

ReLU 函数 f(x) = max(0, x) 的导数是:

f(x)={1if x>00otherwisef'(x) = \begin{cases} 1 & \text{if } x > 0 \\ 0 & \text{otherwise} \end{cases}

它的稀疏性和非线性有助于防止梯度消失问题,使 ReLU 在计算上非常高效,并被广泛用于 LLM 的稳健训练中。

31. 链式法则(Chain Rule)如何应用于 LLM 的梯度下降中?

链式法则用于计算复合函数的导数:

ddxf(g(x))=f(g(x))g(x)\frac{d}{dx}f(g(x)) = f'(g(x)) \cdot g'(x)

在梯度下降中,它使反向传播能够逐层计算梯度,从而在深度 LLM 架构中高效地更新参数以最小化损失。

32. Transformer 中的注意力分数是如何计算的?

注意力分数的计算公式如下:

Attention(Q,K,V)=softmax(QKTdk)V\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V

缩放点积(Scaled Dot-Product)衡量了词元的相关性,而 Softmax 函数将分数归一化,使模型能够聚焦于关键的词元,从而增强了在文本摘要等任务中上下文感知的生成能力。

33. Gemini 如何优化多模态 LLM 的训练?

Gemini 通过以下方式提升效率:

  • 统一架构: 结合文本和图像处理,提高参数效率。
  • 先进的注意力机制: 提高跨模态学习的稳定性。
  • 数据效率: 使用自监督技术减少对标注数据的需求。

这些特性使 Gemini 比 GPT-4 等模型更稳定、更具可扩展性。

34. 存在哪些类型的基础模型(Foundation Models)?

基础模型包括:

  • 语言模型: BERT、GPT-4,用于文本任务。
  • 视觉模型: ResNet,用于图像分类。
  • 生成模型: DALL-E,用于内容创作。
  • 多模态模型: CLIP,用于文本-图像任务。

这些模型利用广泛的预训练来支持多样化的应用。

35. PEFT 如何缓解灾难性遗忘?

**参数高效微调(PEFT)**只更新一小部分参数,同时冻结其余参数以保留预训练知识。像 LoRA 这样的技术确保 LLM 在适应新任务时不会丢失其核心能力,从而在不同领域保持高性能。

36. 检索增强生成(RAG)的步骤是什么?

RAG 包括以下步骤:

  1. 检索 (Retrieval): 使用查询嵌入获取相关文档。
  2. 排序 (Ranking): 按相关性对文档进行排序。
  3. 生成 (Generation): 利用检索到的上下文生成准确的回答。

RAG 能够提高问答等任务的事实准确性。

37. 专家混合模型(MoE)如何增强 LLM 的可扩展性?

MoE 使用一个门控函数(gating function)为每个输入激活特定的专家子网络,从而减少了计算负载。例如,每次查询可能只使用模型 10% 的参数,这使得数十亿参数的模型能够高效运行,同时保持高性能。

38. 什么是思维链(CoT)提示,它如何辅助推理?

**思维链(CoT)**提示引导 LLM 像人类一样分步骤解决问题。例如,在数学问题中,它将计算过程分解为逻辑步骤,从而提高了在逻辑推理或多步查询等复杂任务中的准确性和可解释性。

39. 判别式 AI 和生成式 AI 有何不同?

判别式 AI(如情感分类器)根据输入特征预测标签,它建模的是条件概率。生成式 AI(如 GPT)通过对联合概率建模来创造新数据,适用于文本或图像生成等任务,提供了更大的创作灵活性。

40. 知识图谱(Knowledge Graph)集成如何改进 LLM?

知识图谱提供结构化的事实数据,通过以下方式增强 LLM:

  • 减少幻觉: 对照图谱验证事实。
  • 改善推理: 利用实体间的关系进行推理。
  • 增强上下文: 提供结构化的上下文以生成更好的响应。

这对于问答和实体识别等任务非常有价值。

41. 什么是零样本学习(Zero-shot Learning),LLM 如何实现它?

零样本学习允许 LLM 利用从预训练中获得的通用知识来执行未经专门训练的任务。例如,当提示为“将这篇评论分类为正面或负面”时,LLM 无需特定于该任务的数据就能推断出情感,展示了其强大的通用性。

42. 自适应 Softmax(Adaptive Softmax)如何优化 LLM?

自适应 Softmax 按词频对单词进行分组,减少了对罕见词的计算量。这降低了处理大词汇表的成本,在保持准确性的同时加快了训练和推理速度,尤其适用于资源受限的环境。

43. Transformer 如何解决梯度消失问题?

Transformer 通过以下机制缓解梯度消失问题:

  • 自注意力机制: 避免了顺序依赖。
  • 残差连接 (Residual Connections): 允许梯度直接流动。
  • 层归一化 (Layer Normalization): 稳定更新过程。

这些机制确保了深度模型的有效训练,优于传统的 RNN。

44. 什么是少样本学习(Few-shot Learning),它有什么好处?

少样本学习使 LLM 能够利用预训练知识,仅通过少量示例就可执行新任务。其好处包括减少数据需求、更快的任务适应和成本效益,使其成为专业文本分类等小众任务的理想选择。

45. 如果一个 LLM 生成了有偏见或不正确的输出,你会如何修复?

要解决有偏见或不正确的输出:

  1. 分析模式: 识别数据或提示中的偏见来源。
  2. 优化数据: 使用平衡的数据集和去偏见技术。
  3. 微调: 使用经过筛选的数据或对抗性方法重新训练模型。

这些步骤有助于提高模型的公平性和准确性。

46. 在 Transformer 中,编码器(Encoder)和解码器(Decoder)有何不同?

编码器处理输入序列,将其转换为捕捉上下文的抽象表示。解码器则利用编码器的输出和先前生成的词元来生成输出序列。在翻译任务中,编码器理解源语言,解码器生成目标语言,从而有效完成 Seq2Seq 任务。

47. LLM 与传统的统计语言模型有何不同?

LLM 使用 Transformer 架构、海量数据集和无监督预训练;而传统的统计模型(如 N-grams)依赖于更简单、有监督的方法。LLM 能够处理长距离依赖、上下文嵌入和多样化的任务,但需要巨大的计算资源。

48. 什么是超参数(Hyperparameter),为什么它很重要?

超参数是预设的值(如学习率或批处理大小),用于控制模型训练过程。它们影响模型的收敛和性能;例如,过高的学习率可能导致训练不稳定。调整超参数可以优化 LLM 的效率和准确性。

49. 如何定义一个大型语言模型(LLM)?

LLM 是在海量文本语料库上训练的人工智能系统,能够理解和生成类似人类的语言。凭借数十亿的参数,它们在翻译、摘要和问答等任务中表现出色,利用上下文学习能力实现了广泛的应用。

50. LLM 在部署中面临哪些挑战?

LLM 的挑战包括:

  • 资源密集: 计算需求高昂。
  • 偏见: 存在延续训练数据中偏见的风险。
  • 可解释性: 复杂模型的内部工作原理难以解释。
  • 隐私: 存在潜在的数据安全问题。

解决这些挑战是确保 LLM 被合乎道德且有效地使用的关键。

结论

本指南为您提供了从核心概念到先进技术的 LLM 深度知识。