AIMLInterviews 机器学习基础(广度)面试备考指南:经典 ML、深度学习与 2026 LLM / 多模态全景考点
AIMLInterviews 机器学习基础(广度)面试备考指南:经典 ML、深度学习与 2026 LLM / 多模态全景考点
本篇以 AIMLInterviews 仓库 《机器学习基础(广度)》一章 为骨架,系统梳理机器学习技术面试中"广度"轮次(breadth interview)的核心知识地图——从经典监督/无监督学习、模型评估与正则化,到深度学习、统计机器学习,再到 2026 年已被视为广度必考的 LLM 内部机制、后训练对齐算法与多模态生成模型。读完本文,你将获得一份可对照仓库源码与自测问题逐项查漏补缺的完整备考清单,并掌握每条考点对应的可运行参考实现与验证方式。
一、什么是"机器学习基础(广度)"面试
广度面试旨在考察你对机器学习概念的整体理解,既包括理论层面,也包括实践层面。与第 3 章的"ML 深度"面试(ml-depth.md)不同——深度面试通常围绕你过去做过的某个项目往深处追问——广度面试在不同面试官和候选人之间,整体结构和覆盖范围通常都比较相似,因此它是所有轮次中最容易被"按图索骥"提前准备的一轮。
准备这类面试的最佳方式,是复习机器学习课程笔记,同时参考高质量的在线课程与复习资料。下面先给出原文档推荐的资源清单(按名称整理,便于自行检索),再进入逐主题的考点拆解。
二、课程与复习资料
系统性学习(适合打基础):
- Andrew Ng《Machine Learning》课程(Coursera;YouTube 上亦有完整课程视频)——经典机器学习入门首选。
- 《Structuring Machine Learning Projects》(Coursera)——聚焦机器学习项目的组织与错误规避,与系统设计、工程实践强相关。
- Udacity 深度学习纳米学位 或 Coursera《Deep Learning Specialization》——深度学习方向的系统课程。
快速复习(适合已掌握概念、需要查漏补缺):
- StatQuest 机器学习视频系列——用可视化方式快速复习各类算法。
- StatQuest 统计学系列——统计学复习专用,对 Data Science 岗位尤其有用。
- 《Machine Learning cheatsheets》——概念速查表。
- Chris Albon 的 ML flashcards——以闪卡形式记忆核心概念。
补充说明:原文档将其列为核心准备资料;在仓库内部,第 2 章《机器学习编程》 提供了与本节知识点一一对应的可执行 NumPy 参考实现,是"理论 + 手写代码"组合备考的最佳配套(详见本文最后一节)。
三、经典机器学习概念
3.1 机器学习算法的分类
- 监督学习、无监督学习和半监督学习(附示例):监督学习依赖带标签数据(如分类、回归);无监督学习从无标签数据中发现结构(如聚类);半监督学习结合少量标注 + 大量未标注数据。
- 分类 vs 回归 vs 聚类:分类预测离散类别,回归预测连续数值,聚类在无标签数据上划分自然簇。
- 参数化算法 vs 非参数化算法:参数化算法(如线性回归、逻辑回归)将假设压缩为固定数量的参数,训练即拟合参数;非参数化算法(如 kNN、决策树)随训练数据规模增长而增长其"有效容量"。
- 线性算法 vs 非线性算法:线性算法假设决策边界/输出是特征的线性组合;非线性算法(如核 SVM、决策树、神经网络)可表达复杂边界。
3.2 监督学习
线性算法
- 线性回归:核心概念包括最小二乘(最小化残差平方和)、残差(预测与真实的差)、单变量回归 vs 多元回归。仓库参考实现
linear_regression_gradient_descent使用批梯度下降拟合 MSE 损失,权重更新为weights -= lr * (2/N) * (Xᵀ @ errors)、偏置为bias -= lr * 2 * mean(errors),见 ml_algorithms.py;配套测试用y = 3x - 2的线性数据验证收敛(test_ml_algorithms.py)。 - 逻辑回归:核心考点是代价函数(公式 + 代码)、sigmoid 函数、交叉熵。仓库实现
logistic_regression_gradient_descent基于二元交叉熵梯度Xᵀ @ (p - y) / N,见 ml_algorithms.py;其中_sigmoid对正/负输入分别计算,避免溢出(ml_algorithms.py)。 - 支持向量机(SVM):最大间隔分类器;面试常追问核技巧(见示例问题)。
- 线性判别分析(LDA):通过最大化类间散布与类内散布之比寻找线性投影方向。
决策树
考点包括:Logits(叶节点输出的类别分数/概率)、叶节点、训练算法(递归划分特征空间)、停止条件(纯度达标、最大深度、最小样本数)、推理(沿树路径走到叶节点)、剪枝(防止过拟合,预剪枝/后剪枝)。
仓库提供了决策树划分的权威实现:gini_impurity 计算基尼不纯度 1 - Σp²(ml_algorithms.py),best_gini_split 以相邻唯一值的中点作为候选阈值、按样本占比加权不纯度并选取最优划分(ml_algorithms.py)。测试验证了对 <a href="https://link.gitcode.com/i/18728185606703b591acfa125fa934cf" target="_blank">0,1,2,3] / [0,0,1,1] 数据找到阈值 1.5、不纯度 0 的最优划分([test_ml_algorithms.py),相关探索材料见 decision_tree.ipynb。
集成方法
- Bagging 和 Boosting 方法(附示例):Bagging 并行训练多个基学习器再聚合(如随机森林);Boosting 串行训练、每轮侧重前一轮的错分样本。
- 随机森林:对样本和特征同时自助采样,降低方差。
- Boosting 家族:Adaboost(对错分样本加权)、GBM(梯度提升,拟合残差/负梯度)、XGBoost(带正则化、二阶导近似的工程化 GBDT)。
- 不同算法的对比:原文档标注 [TBD: LinkedIn lecture],可结合自身项目经验补充对比维度(线性 vs 树模型 vs NN 的数据适配、可解释性、训练/推理成本)。
优化
- 梯度下降(概念、公式、代码):沿损失函数负梯度方向迭代更新参数。公式形式为
θ := θ - η·∇L(θ);仓库中线性/逻辑回归实现的批量梯度更新即是最直接的代码示例(ml_algorithms.py)。 - 梯度下降的其他变体:SGD(每次只用 1 个/小批样本,噪声大但计算快)、Momentum(累积历史梯度方向,加速收敛、抑制震荡)、RMSprop(按梯度平方的指数滑动平均自适应缩放步长)、ADAM(Momentum + RMSprop 的结合,带偏差修正,深度学习中默认选择)。
损失函数
- Logistic Loss(逻辑损失):
L = -[y·log(p) + (1-y)·log(1-p)],逻辑回归的优化目标。 - Cross Entropy(交叉熵,公式也要记住):多分类形式
L = -Σ yᵢ·log(pᵢ),其中pᵢ = softmax(z)ᵢ。仓库的cross_entropy_from_logits用 log-sum-exp 技巧数值稳定计算(ml_algorithms.py),测试用±1000量级 logits 验证不溢出(test_ml_algorithms.py)。 - Hinge loss(SVM):
max(0, 1 - y·f(x)),支持向量机的合页损失,相关实现思路见 svm.ipynb。
3.3 特征选择与模型评估
特征选择: 核心考点是特征重要性——树模型可按不纯度下降/Gini 增益排序特征,线性模型可按系数绝对值排序,也可用置换重要性。
评估指标:
- TP、FP、TN、FN 四类预测结果,构成混淆矩阵。
- 准确率(Accuracy)、精确率(Precision)、召回率/敏感性(Recall/Sensitivity)、特异性(Specificity)、F-score:仓库的
binary_classification_metrics一次性实现 accuracy、precision、recall、F1,并对分母为零的情况用_safe_divide返回 0 而非报错(ml_algorithms.py)。 - 如何在指标之间做选择?(类别不平衡数据集):正类稀少时 accuracy 会被多数类主导,应关注 precision/recall 及 F-score;成本侧重不同则选不同指标。
- precision vs TPR(为什么看 precision):TPR(召回)关心"正类别漏掉多少",precision 关心"预测为正的有多少是真的",两者权衡体现了误报成本。
- ROC 曲线(TPR vs FPR、阈值选择):随阈值变化刻画分类器行为,曲线下方面积即 AUC;仓库的
roc_auc用平均秩方法(等价于 Mann-Whitney U 统计量)计算,并正确处理平票(ml_algorithms.py)。 - AUC(模型对比):与阈值无关的排序质量度量,测试中
<a href="https://link.gitcode.com/i/d991f009d66e83b6127841b0f161514b" target="_blank">0.1,0.2,0.8,0.9]的分数对[0,0,1,1]得到 AUC=1.0([test_ml_algorithms.py)。 - 上述指标在多分类(n 元)场景下的扩展:宏平均(macro)/微平均(micro)、逐类混淆矩阵。
- 特定算法对应的指标:原文档标注 [TBD]。
模型选择: 交叉验证是核心——k 折交叉验证把训练数据分成 k 份、轮流留一份做验证;k 取多少比较合适? 常用 5 或 10:k 太小验证集方差大,k 太大计算成本高,10 折在偏差/方差与算力间较平衡,小数据可考虑留一法。
3.4 无监督学习
聚类:
- 基于质心的模型:k-means 聚类——交替执行"分配样本到最近质心 / 更新质心为簇均值"(Lloyd 算法)。仓库实现
kmeans带确定性初始化(随机种子)、收敛容差,以及空簇重播种处理(把当前最远点作为新质心),见 ml_algorithms.py;测试验证了<a href="https://link.gitcode.com/i/bb59b9533db18d686189b86e234c991d" target="_blank">0,0.2,10,10.2]可被正确分为质心0.1与10.1的两簇([test_ml_algorithms.py)。 - 基于连通性的模型:层次聚类——自底向上合并最近簇(凝聚式)或自顶向下分裂。
- 基于密度的模型:DBSCAN——基于邻域密度发现任意形状簇,天然处理噪声点。
其他模型: 高斯混合模型(GMM)(软聚类 + 概率归属)、潜在语义分析(LSA)(文本的 SVD 降维表示)、隐马尔可夫模型(HMM)——需掌握马尔可夫过程、转移概率和发射概率,以及 [Advanced] 标注的 Viterbi 算法(解码最优隐状态序列)。
降维技术: 主成分分析(PCA)(最大化方差的正交投影)、独立成分分析(ICA)(盲源分离,最大化统计独立性)、t-SNE(非线性流形可视化)。仓库的 principal_component_analysis 展示了标准 PCA 流程:中心化 → SVD → 取前 n 个右奇异向量 → 计算解释方差 σ²/(N-1)(ml_algorithms.py),测试验证投影后均值为 0(test_ml_algorithms.py)。
3.5 偏差 / 方差(欠拟合 / 过拟合)
偏差高对应欠拟合(模型太简单),方差高对应过拟合(模型过于复杂、记住了噪声)。缓解手段包括:收集更多数据、正则化、交叉验证调参、集成(Bagging 降方差)。
正则化技术: L1(Lasso)——对权重绝对值和惩罚,产生稀疏解(可做特征选择);L2(Ridge)——对权重平方和惩罚,平滑收缩权重但不稀疏。
3.6 采样技术
- 均匀采样:每个元素等概率被选中。
- 水塘抽样(Reservoir Sampling):针对未知长度数据流,以 O(k) 内存维护 k 个均匀随机样本。仓库实现
reservoir_sample在遍历到第 i 个元素时以randint(0, i) < k的概率替换池中元素(ml_algorithms.py),测试从 100 个元素中采样 10 个且保证不重复(test_ml_algorithms.py)。 - 分层采样:按类别/子群比例分层抽取,保持代表性,常用于不平衡数据。
3.7 数据处理
- 缺失数据:删除、均值/中位数/众数填充、模型预测填充;注意只在训练集上拟合填充统计量,避免数据泄漏(第 4 章 系统设计 中亦有专门论述)。
- 不平衡数据:重采样(过采样/欠采样)、加权损失函数、合并类别。
- 数据分布漂移:协变量漂移、标签漂移、概念漂移,及其检测与修正(监控部分详见 ml-system-design.md)。
3.8 机器学习算法的计算复杂度
原文档此节标注 TBD];建议结合 [第 2 章编码题 中"复杂度"考点自行补齐,例如 kNN 预测为 O(nd)(可向量化/近似 NN 加速)、k-means 单轮为 O(nkd)、决策树最优划分需遍历特征与阈值等。
四、深度学习
- 前馈神经网络:深入理解其工作原理(层、权重、激活、损失、反向传播)。EX] 面试追问:对于类别并非互斥的任务,应使用什么激活函数? 答案是 sigmoid(多标签任务的逐类概率),而非 softmax(互斥类别的归一化概率分布)。仓库配套材料见 [feedforward.ipynb 与 softmax.ipynb。
- RNN:时间反向传播(BPTT)(沿时间步展开计算图反传梯度)、梯度消失/梯度爆炸问题(长序列下连乘 Jacobian 导致梯度指数级衰减或爆炸)。
- LSTM:门控机制缓解梯度消失/梯度爆炸问题(记忆单元提供近乎恒等的高速通道);原文档还标注了
gradient?的待深入项(可理解为对 LSTM 梯度路径/饱和行为的追问)。 - Dropout:随机失活神经元做正则化;面试高频追问如何在 LSTM 中应用 dropout(实践上通常对输入/输出连接做 dropout,而不对循环连接做,或使用 variational dropout)。
- Seq2seq 模型:编码器-解码器结构,用于序列到序列任务。
- Attention:解码时对编码器各位置加权聚合;self-attention 则是在序列内部建立依赖。
- Transformer 架构(要深入,绝不是开玩笑!):原文档特别强调必须吃透,可参考经典图解系列《The Illustrated Transformer》。仓库提供了可运行的 缩放点积注意力 实现
scaled_dot_product_attention:scores = Q·Kᵀ / √dₖ、mask 处置-inf、softmax 归一化,见 ml_algorithms.py;测试验证 mask 后注意力权重正确落到唯一允许的 key 上(test_ml_algorithms.py)。 - 嵌入向量(词嵌入):将离散词映射为稠密连续向量(word2vec、GloVe 等思路,也是 LLM 输入层的实现基础)。
五、统计机器学习
5.1 贝叶斯算法
- 朴素贝叶斯:基于贝叶斯定理 + 特征条件独立假设的分类器;仓库 ml-coding.md 中将其列为"用于文本分类的朴素贝叶斯"延伸练习(中等难度)。
- 最大后验(MAP)估计:在似然之上叠加先验,
θ_MAP = argmax P(D|θ)P(θ),与 L1/L2 正则化有天然对应。 - 最大似然(ML)估计:
θ_ML = argmax P(D|θ),交叉熵 / MSE 等常见损失可看作特定分布下的负对数似然。
5.2 统计显著性
- R-squared:回归模型解释的方差比例,
R² = 1 - SS_res/SS_tot。 - P-values:在零假设下观测到当前或更极端结果的概率,用于假设检验(如 A/B 实验显著性判断,A/B 测试实践见 ml-system-design.md 第 8 步)。
六、其他主题
- 离群点:检测方法(Z-score、IQR、DBSCAN、孤立森林)与处理策略。
- 相似度/差异度量:欧氏距离(L2)、曼哈顿距离(L1)、余弦相似度(方向而非幅值,文本/向量检索常用)、马氏距离([高级] 考虑协方差结构的尺度化距离)。
七、2026 年新常态:基础模型与大语言模型(LLM)
原文档明确指出:2026 年机器学习面试中最大的变化——LLM / 基础模型现在已经成为"广度"要求,而不再是某种专项能力。下面列出面试官重点考察的核心概念;关于端到端 GenAI 系统设计(RAG、智能体、服务部署),请参见第 4 章以及第 5 章《智能体 AI 系统(Agentic AI Systems)》仓库。
7.1 Transformer 与 LLM 内部机制
- Self-attention 回顾:scaled dot-product attention、为什么要除以 √dₖ(将点积尺度压回可控范围,避免 softmax 进入饱和区 → 梯度更稳定)、multi-head attention(多头并行捕捉不同子空间关系)。
- Attention 的变体(内存 / 吞吐权衡):MHA → MQA(multi-query,共享 KV)→ GQA(grouped-query,分组共享)→ MLA(multi-head latent,DeepSeek)——共享/潜变量压缩 KV 以省显存、提吞吐。
- 位置编码:绝对位置 / 可学习位置、RoPE(旋转位置编码,相对位置感知)、ALiBi(线性偏置);长上下文扩展(position interpolation、YaRN)。
- KV cache:缓存每层的 key/value,使每个新 token 的计算变为 O(n),而不是每次都重算 O(n²);在长上下文 × 大 batch 下,KV cache 往往是内存占用的主导因素(也因此有了 KV 量化与 PagedAttention,见 7.5)。
- FlashAttention:IO-aware、在 SRAM 中分块计算 attention,减少 HBM 往返——这就是为什么长上下文训练终于变得可行。
- Block 内部结构:pre-norm vs post-norm(归一化放在子层前/后)、RMSNorm(去除均值的更轻量归一化)、SwiGLU / GeGLU 激活(门控线性单元变体)。
- Mixture-of-Experts (MoE):稀疏专家路由、负载均衡、活跃参数 vs 总参数(Mixtral、DeepSeek-V3)——用稀疏激活换取总参数容量。
- 分词:BPE / byte-level BPE / SentencePiece、词表大小、上下文窗口(tokenization 对 OOV、多语言、长文的影响)。
- 缩放定律(Chinchilla compute-optimal)(参数、数据、算力三者的最优配比)与涌现能力(规模超过阈值后出现的任务能力跃升)。
7.2 训练流水线(pretraining → post-training)
- Pretraining(预训练)——在 web 规模语料上做自监督的 next-token prediction。
- SFT / instruction tuning(指令微调)——在(prompt → response)监督示例上训练,学习指令遵循与输出格式。
- Preference alignment (RLHF & alternatives)(偏好对齐)——对齐人类偏好与安全性。
- Reasoning RL(推理强化学习)——面向链式推理模型的可验证奖励强化学习(o-series、DeepSeek-R1 等推理模型路线)。
7.3 后训练:SFT 与 RL / 对齐算法(2026 核心主题)
2026 年面试中的核心主题是如何根据你的数据和算力选择合适的后训练方法。现代训练栈通常会把这些方法分层叠加(SFT → 偏好优化 → RL),而不是只使用某一种单体方法。原文档给出的对照表是必须完整掌握的:
| 算法 | 所需数据 | 所需额外模型 | 相对成本 | 适用场景 |
|---|---|---|---|---|
| SFT | 精选的指令示例(prompt→response) | 无 | 低 | 学习输出格式和指令遵循能力(通常应首先进行) |
| RLHF (PPO) | 人类偏好标签 | 奖励模型 + critic/value 模型 + 参考模型 | 高 | 经典方法;目前多数场景已改用更简单的方法 |
| DPO | 偏好样本对(chosen 与 rejected) | 参考模型 | 中 | 默认的离线对齐方法;训练方式类似 SFT,无需 RL 循环 |
| SimPO | 偏好样本对 | 无(无需参考模型) | 中低 | 不需要参考模型的 DPO(以平均对数概率作为隐式奖励) |
| KTO | 二元赞成/反对反馈(无样本对) | 无 | 低 | 适用于低成本、噪声较大的反馈,或只有非配对信号时 |
| ORPO | 仅需指令示例 | 无 | 低 | 将 SFT 与偏好调优合并为一个阶段 |
| GRPO | 仅需 prompt(采样一组回答并计算组内相对优势) | 无(不需要 critic) | 中 | 不依赖价值网络的 RL;适合推理/数学任务(DeepSeek) |
| RLVR | 具有可验证奖励的任务(单元测试、数学答案、合法 JSON) | 自动验证器 | 中 | 适用于结果可验证的代码、数学和工具调用任务 |
关键讨论点(面试必答):
- DPO 将 reward model + RL loop 折叠为一个基于偏好对的监督损失,因此训练像 SFT 一样简单。
- GRPO 去掉了 critic:基于组归一化奖励估计 advantage,比 PPO 更省内存,是推理模型的重要驱动方法(配合 RLVR)。
- GRPO / RLVR 共同支撑了 o-series、DeepSeek-R1 这类链式推理模型。
- 算法优劣依赖模型规模(例如在线 RL 在约 1.5B 规模下可能更强,而 SimPO 在约 7B 规模下可能更好)。
- 另需了解 DAPO(用于稳定长链式推理 RL)与 RLAIF(用 AI 反馈替代人工标注)。
7.4 参数高效微调(PEFT)
- 全量微调 vs PEFT 的权衡:算力、存储、灾难性遗忘。
- LoRA / QLoRA(低秩适配器,仅训练注入的低秩矩阵;QLoRA 在量化后的基座模型上微调,进一步降低显存)、adapters、prefix / prompt tuning。
- 关键超参数:LoRA rank / α、learning rate、epochs、batch size——并理解 rank 控制表达能力与参数量的权衡、α 与 rank 的缩放关系。
7.5 推理与服务优化
- 量化:PTQ vs QAT;INT8 / INT4(GPTQ、AWQ)、FP8;KV-cache quantization——长上下文下,KV cache 可能比权重更占内存,量化 KV 成为重要手段。
- Paged attention / continuous batching(vLLM)、prefix caching——提升吞吐、降低重复计算。
- Speculative decoding(draft + verify,用小模型草稿、大模型验证并行加速)、蒸馏、用于稀疏计算的 MoE。
- 并行化:tensor / pipeline / sequence 并行;理解 prefill vs decode 两个阶段的计算与内存特征差异。
7.6 解码与上下文学习
- 解码:greedy、beam search、temperature(软度)、top-k、top-p (nucleus)(核采样)、repetition penalty;结构化 / 受约束解码(JSON / grammar,配合 RLVR 中的可验证输出)。
- 上下文学习:zero / few-shot、chain-of-thought(思维链)、self-consistency(多次采样投票);test-time compute / inference-time scaling(推理模型在解码时增加计算换取正确率)。
- 增加知识:RAG vs long-context vs fine-tuning(权衡取舍:外部知识新鲜度 vs 上下文成本 vs 参数内化)。
7.7 生成模型评估(2026:"eval is the new system design")
- 为什么经典指标(如 BLEU、困惑度)不适用于开放式生成;hallucination(幻觉) 与校准问题。
- RAG triad(RAGAS):faithfulness(忠实度)、answer relevance(答案相关性)、context relevance(上下文相关性);检索指标(recall@k、MRR、nDCG)。
- LLM-as-judge、pairwise win-rate / Arena(Elo 评分)、golden sets 与回归测试。
- 智能体指标:工具选择质量、任务 / 步骤成功率、轨迹遵循度。
- 基准测试(MMLU、GPQA、SWE-bench 等);安全性 / red-teaming、jailbreak 鲁棒性。
八、多模态与生成式 AI
8.1 多模态基础模型(FMs)
- 核心思想:在多种模态(文本、图像、音频、视频、动作)之间学习共享表征。
- 融合方式:对比式双编码器(CLIP / SigLIP);投影 / adapter 到 LLM token 空间(LLaVA);cross-attention(Flamingo);早期融合 vs 后期融合;原生 / "omni" any-to-any(GPT-4o、Gemini)。
- 统一做理解和生成;用于自回归生成的图像 / 音频分词器(VQ-VAE)。
8.2 视觉语言模型(VLMs)
- 架构主线:vision encoder(ViT / SigLIP / DINOv2)→ projector → LLM。
- 任务:VQA、图像描述、OCR / 文档理解、grounding / detection、图表 / UI 理解。
- 代表性模型:GPT-4o、Gemini、Claude、Qwen-VL、LLaVA、PaliGemma、InternVL。
- 训练:图文预训练 + 视觉指令微调。
8.3 视觉-语言-动作模型(VLA)
- 将 VLM 扩展到具身 / 机器人控制——感知 → 理解指令 → 输出动作,通常可在一次前向计算中完成。
- 动作表示:离散动作 token(RT-2、OpenVLA)vs 通过 diffusion / flow-matching action head 表示连续动作(π0)。
- 代表模型:
- RT-2(Google DeepMind)——基于 PaLI-X / PaLM-E VLM 构建;将网页知识和 chain-of-thought 迁移到机器人控制。
- OpenVLA —— 7B、开源;DINOv2 + SigLIP 视觉 + Llama-2;基于 97 万条真实演示训练;参数量约少 7× 的情况下超过 RT-2-X(55B)。
- π0 (Pi-Zero) —— PaliGemma VLM + flow-matching 动作专家;约 50 Hz 高频灵巧控制。
- 应用场景:机器人操作、类人机器人、通用机器人策略;数据来自遥操作演示 + Open X-Embodiment。
8.4 Diffusion 与自回归生成对比
| 自回归(AR) | 扩散模型 | |
|---|---|---|
| 生成方式 | 逐步预测下一个 token | 从噪声开始迭代去噪 |
| 似然 | 可精确计算 | 变分 / 基于 score |
| 优势 | 离散序列、变长、推理能力 | 连续高维模态(图像 / 视频 / 音频)、高保真 |
| 速度 | 每个 token 需 1 次前向计算(KV cache 可加速) | 需要多步去噪(可通过 distillation / consistency / flow matching 减少) |
| 示例 | 文本(GPT)、图像 token(Parti、VAR)、音频(AudioLM) | 图像(Stable Diffusion、Imagen)、视频(Sora、Veo — DiT)、音频 / 音乐(Stable Audio)、机器人动作(π0) |
- Diffusion 深入:前向 / 反向过程(DDPM)、score / noise prediction、latent diffusion(Stable Diffusion)、DiT(diffusion transformers,用于视频)、classifier-free guidance、快速采样器(DDIM)、flow matching / rectified flow(SD3、π0)。
- AR 深入:先将某个模态离散化为 token,再做 next-token prediction;这使统一的 token-based 多模态模型成为可能;图像 AR(next-scale prediction / VAR)、音频(AudioLM / MusicGen)。
- 新趋势:text diffusion / masked diffusion LMs;consistency 与 few-step 模型;统一的 AR + diffusion 栈。
九、示例问题:自测清单
9.1 经典机器学习问题
- 什么是机器学习?它与传统编程有什么区别?
- 机器学习技术有哪些不同类型?
- 监督学习和无监督学习有什么区别?
- 什么是半监督学习?
- 构建机器学习模型的各个阶段是什么?
- 你能解释一下机器学习中的偏差-方差权衡吗?
- 什么是过拟合?如何防止过拟合?
- 为什么要把数据划分为训练集、测试集和验证集?具体应如何划分?
- 什么是交叉验证?为什么它很重要?
- 你能解释一下正则化的概念及其类型(L1、L2 等)吗?
- 你会如何处理数据集中的缺失或损坏数据?
- 什么是决策树?它是如何工作的?
- 你能解释一下逻辑回归吗?
- 你能解释一下 K 最近邻(KNN)算法吗?
- 比较 K-means 和 KNN 算法。
- 解释基于决策树的算法(随机森林、GBDT)。
- 什么是梯度下降?它是如何工作的?
- 你能解释一下支持向量机(SVM)算法吗?什么是 Kernel SVM?
- 你能解释一下神经网络及其工作原理吗?
- 什么是深度学习?它与传统机器学习有什么不同?
- 你能解释一下反向传播算法及其在训练神经网络中的作用吗?
- 什么是卷积神经网络(CNN)?它是如何工作的?
- 什么是迁移学习?它在实践中是如何使用的?
原文档另推荐了《45 ML interview questions》等扩展题库(外部链接),可按名称检索使用。
9.2 LLM / GenAI / 多模态示例问题(2026)
- 请完整讲一下一个 transformer block。为什么 attention score 要除以 √dₖ?
- 什么是 KV cache?它为什么对推理很重要?它的内存规模如何增长?
- 比较 MHA、MQA 和 GQA。为什么 Llama 采用了 GQA?
- 什么是 RoPE?为什么旋转位置嵌入比可学习位置嵌入更常用?
- 什么情况下你会选择 RAG、微调或 long-context?
- 比较 SFT、DPO、GRPO 和 RLVR:各自需要什么数据、需要哪些额外模型、分别适用于什么场景。
- 为什么 GRPO 去掉了 critic 网络?它如何估计 advantage?
- 什么是 LoRA / QLoRA?什么情况下你会选择 PEFT 而不是全量微调?
- 解释一下量化(INT8/INT4、FP8)和 KV-cache quantization。它们在精度/延迟上的权衡是什么?
- Speculative decoding 是如何加速生成的?
- 你会如何评估一个 LLM / RAG 系统?什么是 RAG triad 和 LLM-as-judge?
- VLM 是如何把 vision encoder 与 LLM 结合起来的?(例如 LLaVA / PaliGemma)
- 什么是 VLA 模型?对比离散动作 token(RT-2、OpenVLA)与 flow-matching action head(π0)。
- Diffusion 与自回归生成有什么区别?它们分别适用于什么场景(图像/视频/音频/文本)?
- 什么是 classifier-free guidance?什么是 flow matching / rectified flow?
- 什么是 Mixture-of-Experts 模型?请区分活跃参数和总参数。
十、在本仓库中如何配套练习(源码级佐证)
广度面试"理论 + 手写代码"缺一不可。仓库的第 2 章《机器学习编程》 将本节多数考点落成了可运行的权威参考实现,覆盖关系如下:
| 本节考点 | 参考实现(ml_algorithms.py) | 补充 notebook |
|---|---|---|
| softmax、交叉熵(数值稳定) | softmax、cross_entropy_from_logits |
softmax.ipynb |
| 梯度下降 / 线性回归 | linear_regression_gradient_descent |
linear_regression_md.ipynb |
| 逻辑回归 / sigmoid / 交叉熵梯度 | logistic_regression_gradient_descent |
logistic_regression_md.ipynb |
| kNN / 距离度量 | knn_predict |
k_nearest_neighbors.ipynb |
| k-means / 聚类 | kmeans |
k_means_2.ipynb |
| 决策树 / 基尼不纯度 | gini_impurity、best_gini_split |
decision_tree.ipynb |
| PCA / 降维 | principal_component_analysis |
— |
| CNN / 卷积 | conv2d_valid |
convolution.ipynb |
| Self-attention / Transformer | scaled_dot_product_attention |
— |
| 评估指标 / ROC-AUC | binary_classification_metrics、roc_auc |
— |
| 水塘抽样 | reservoir_sample |
— |
| 文本特征(TF-IDF) | tfidf |
— |
验证方法: 在仓库根目录运行参考测试即可逐一验证上述实现:
uv run --with numpy python src/MLC/solutions/test_ml_algorithms.py
测试覆盖了面试中高频考察的数值稳定性(±1000 量级 logits 的 softmax/交叉熵)、收敛性(线性回归恢复 y=3x-2)、边界情况(k-means 空簇重播种、ROC-AUC 平票、_safe_divide 零分母)等,详见 test_ml_algorithms.py。建议按 ml-coding.md 的建议:先不看参考实现,练习写出每个重点题目,再对比正确性、复杂度和边界情况处理;最后在面试中说明输入 shape、dtype、前提假设,讨论时空复杂度,并为正常情况与至少一个失败/边界情况编写小测试。
至此,从经典机器学习到 2026 年 LLM / 多模态广度考点,再到配套源码实践,本条知识地图已完整闭合——按上述清单逐项自测,即可系统覆盖机器学习基础(广度)面试的核心范围。