概率统计与数学面试题 — 15 道 AI 必考数学推导题¶
重要性:概率论 / 线性代数 / 优化理论是 AI 算法岗面试数学基本功 难度标注:🟢 基础 | 🟡 进阶 | 🔴 困难 公司标签:[字节] [百度] [Google] [Meta] [阿里] [华为] 等
⚠️ 标签说明(2026-04-03):公司标签仅表示这类数学题在公开面经或岗位讨论中常被提到;数学结论本身按通用理论成立,与具体公司无关。
一、概率论基础( 5 题)¶
Q1: 贝叶斯定理及其在 ML 中的应用 🟢 [字节] [Google] [通用]¶
题目:推导贝叶斯定理,并说明其在机器学习中的应用。
参考答案:
贝叶斯定理:
- 后验 \(P(\theta|D)\):观测数据后对参数的信念
- 似然 \(P(D|\theta)\):给定参数,数据的生成概率
- 先验 \(P(\theta)\):对参数的先验信念
- 边际似然 \(P(D)\):归一化常数( evidence )
在 ML 中的应用:
- MAP 估计:\(\hat{\theta} = \arg\max P(\theta\mid D)\)(等价于 MLE + 正则化)
- 朴素贝叶斯:文本分类 \(P(y\mid x) \propto P(y)\prod P(x_i\mid y)\)
- 贝叶斯神经网络:对权重分布建模而非点估计
- 贝叶斯优化:超参数搜索用高斯过程建模
- 变分推断:VAE 中近似后验分布
追问: MLE 和 MAP 的区别? → MLE 只最大化似然 \(P(D|\theta)\); MAP 额外考虑先验 \(P(\theta)\)。当先验为高斯分布时, MAP 等价于 L2 正则化;先验为拉普拉斯分布时,等价于 L1 正则化。
Q2: MLE 推导 🟡 [字节] [百度] [Google]¶
题目:推导高斯分布的最大似然估计。
参考答案:
设 \(x_1, x_2, ..., x_n \sim \mathcal{N}(\mu, \sigma^2)\) i.i.d.
似然函数:
对数似然:
对 μ 求导:
对 σ² 求导:
注意: MLE 的 \(\hat{\sigma}^2\) 是有偏估计(分母是 \(n\) 而非 \(n-1\)),无偏估计用 \(\frac{1}{n-1}\sum(x_i-\bar{x})^2\)。
追问:为什么线性回归的 MSE 损失等价于高斯噪声假设下的 MLE ? → 假设 \(y = w^Tx + \epsilon\),\(\epsilon \sim \mathcal{N}(0, \sigma^2)\), MLE 最大化 \(\prod P(y_i|x_i,w)\),取对数后就是最小化 \(\sum(y_i - w^Tx_i)^2\),即 MSE 。
Q3: 常见概率分布及其联系 🟡 [字节] [Google] [阿里]¶
题目:总结 ML 中常见的概率分布及其关系。
参考答案:
┌─── 伯努利(p) ───→ 二项分布(n,p)
│ ↓ n→∞, p→0
│ 泊松分布(λ)
分布族谱 ────┤
│ 均匀分布 ─→ Beta分布(α,β) 【伯努利的共轭先验】
│
│ 正态分布 ──→ 多元正态 ──→ 高斯混合模型(GMM)
│ ↓ χ² ↓
└── t分布 ← F分布 Wishart分布
常见分布与 ML 对应:
- 伯努利:参数为 \(p\)|ML 中的角色:二分类
- Categorical:参数为 \(p_1,...,p_K\)|ML 中的角色:多分类(softmax 输出)
- 高斯:参数为 \(\mu, \sigma^2\)|ML 中的角色:假设数据噪声 / VAE 潜变量
- 拉普拉斯:参数为 \(\mu, b\)|ML 中的角色:L1 正则化先验
- Beta:参数为 \(\alpha, \beta\)|ML 中的角色:伯努利参数的先验
- Dirichlet:参数为 \(\alpha_1,...,\alpha_K\)|ML 中的角色:Categorical 参数的先验
- Gumbel-Softmax:参数为 \(\tau\)|ML 中的角色:离散采样的可微近似
共轭先验——如果先验和后验属于同一分布族,就是共轭先验。
- 伯努利/二项:共轭先验为 Beta|后验为 Beta
- Categorical/多项:共轭先验为 Dirichlet|后验为 Dirichlet
- 高斯(已知方差):共轭先验为高斯|后验为高斯
- 泊松:共轭先验为 Gamma|后验为 Gamma
Q4: 信息论三兄弟——熵、交叉熵、 KL 散度 🟡 [字节] [Google] [百度]¶
题目:解释熵、交叉熵和 KL 散度的定义、关系和在 ML 中的应用。
参考答案:
信息熵(衡量不确定性):
交叉熵(编码损失):
KL 散度(分布差异):
关键关系:
→ 最小化交叉熵 = 最小化 KL 散度(因为 \(H(P)\) 是常数)
ML 中的应用:
- 交叉熵:分类损失函数
- KL 散度:VAE 正则项、知识蒸馏
- 互信息:特征选择、对比学习(InfoNCE 下界)
- 信息增益:决策树分裂标准
- 困惑度(PPL):\(\text{PPL} = 2^{H(P,Q)}\),用于语言模型评估
追问: KL 散度为什么不对称? → \(D_{KL}(P\|Q) \neq D_{KL}(Q\|P)\),前者(前向 KL )倾向于让 Q 覆盖 P 的所有模式( mode-covering ),后者(反向 KL )让 Q 集中在 P 的一个模式上( mode-seeking )。 VAE 用反向 KL \(D_{KL}(q\|p)\)。
Q5: 经典概率面试题 🟡 [字节] [Google] [Meta]¶
题目:你有两个孩子,已知至少有一个是女孩。两个都是女孩的概率是多少?
参考答案:
直觉: ½ (错误!)
正确答案: ⅓
推导:两个孩子的所有等概率情况:{BB, BG, GB, GG}
已知"至少一个女孩"排除 BB ,剩余 {BG, GB, GG},每个概率 ⅓
变体——如果告诉你"大孩子是女孩"? → 答案变成 ½ 。因为条件变了:{GB, GG},概率 = ½ 。
面试启示:概率问题要小心条件,用贝叶斯或列举法严格推导。
二、线性代数( 5 题)¶
Q6: 特征值分解和 SVD 🟡 [字节] [Google] [百度]¶
题目:特征值分解 (EVD) 和奇异值分解 (SVD) 的区别和联系。
参考答案:
特征值分解(方阵):
- A 必须是方阵
- Q 是特征向量矩阵,Λ 是特征值对角矩阵
- 对称矩阵 A :\(A = Q\Lambda Q^T\)(正交分解)
奇异值分解(任意矩阵):
- U :左奇异向量(\(AA^T\) 的特征向量)
- V :右奇异向量(\(A^TA\) 的特征向量)
- Σ:奇异值(\(\sigma_i = \sqrt{\lambda_i(A^TA)}\))
联系:
- 对称正半定矩阵: SVD = EVD
- SVD 中奇异值 = 特征值的平方根
ML 应用:
- SVD:应用为 PCA|说明:取前 k 个最大奇异值
- SVD:应用为推荐系统|说明:矩阵分解(Netflix)
- SVD:应用为 LoRA|说明:低秩近似微调大模型
- EVD:应用为谱聚类|说明:图拉普拉斯矩阵特征分解
- EVD:应用为协方差矩阵分析|说明:PCA 的另一种推导
追问: LoRA 和 SVD 的关系? → LoRA 将权重更新 \(\Delta W\) 限制为低秩矩阵 \(BA\)( B: d×r, A: r×d ), r 远小于 d 。这等价于假设更新矩阵可以用 SVD 的前 r 个分量近似。
Q7: 矩阵求导基础 🟡 [字节] [Google]¶
题目:推导常见的矩阵求导公式。
参考答案:
标量对向量求导( ML 中最常用):
→ 令其为 0 得到最小二乘解:\(\hat{x} = (A^TA)^{-1}A^Ty\)
线性回归正规方程推导:
追问:\(X^TX\) 什么时候不可逆? → 当特征数 > 样本数 (\(p > n\)),或特征间共线性时。此时可加正则化 \(\hat{w} = (X^TX + \lambda I)^{-1}X^Ty\)(岭回归)。
Q8: 正定矩阵与凸优化 🟡 [Google] [字节]¶
题目:什么是正定矩阵?和凸优化有什么关系?
参考答案:
正定矩阵定义:
- \(A\) 是对称矩阵,且 \(\forall x \neq 0, x^TAx > 0\)
- 等价条件:所有特征值 > 0
半正定:\(x^TAx \geq 0\),所有特征值 \(\geq 0\)
与凸优化的关系:
对于二次函数 \(f(x) = \frac{1}{2}x^TAx + b^Tx + c\):
- A 正定 → f 严格凸 → 有唯一全局最小值
- A 半正定 → f 凸 → 局部最小值 = 全局最小值
- A 不定 → f 非凸 → 可能有鞍点
判断凸性的方法: Hessian 矩阵(二阶导矩阵)半正定 ⟺ 函数凸
ML 场景:
- 线性回归:凸|说明:Hessian = \(2X^TX\) 半正定
- 逻辑回归:凸|说明:Hessian 半正定
- SVM:凸|说明:二次规划
- 神经网络:非凸|说明:大量鞍点和局部最小值
追问:深度学习的损失面是非凸的,为什么 SGD 还能找到好的解? → 高维非凸空间中鞍点多于局部最小值。"坏"的局部最小值在高维中越来越少( loss barrier 理论),而 SGD 的噪声帮助逃离鞍点。
Q9: PCA 的数学推导 🟡 [字节] [百度] [阿里]¶
题目:从最大方差和最小重构误差两个角度推导 PCA 。
参考答案:
最大方差角度:
数据 \(X \in \mathbb{R}^{n \times d}\)(已中心化),找投影方向 \(w\) 使方差最大:
拉格朗日乘子法:\(\frac{\partial}{\partial w}(w^TSw - \lambda(w^Tw - 1)) = 0 \implies Sw = \lambda w\)
→ 最优 \(w\) 是 \(S\) 的特征向量,对应最大特征值的方向。
最小重构误差角度:
→ 解也是协方差矩阵的前 k 个特征向量。
两种视角等价:\(\text{总方差} = \text{保留方差} + \text{重构误差}\)
追问: PCA 的局限性? → 只能捕获线性关系。非线性可以用 Kernel PCA 或 t-SNE/UMAP (可视化)。 PCA 对尺度敏感,需要先标准化。
Q10: Softmax 的数学性质 🟢 [字节] [Meta] [通用]¶
题目:推导 Softmax 函数的梯度,以及数值稳定性技巧。
参考答案:
Softmax 定义:
梯度:
矩阵形式:\(\frac{\partial p}{\partial z} = \text{diag}(p) - pp^T\)
数值稳定性:直接计算 \(e^{z_i}\) 可能溢出。
减去最大值不改变结果(因为分子分母同乘 \(e^{-\max(z)}\)),但避免了上溢。
def stable_softmax(z):
z_shifted = z - np.max(z)
exp_z = np.exp(z_shifted)
return exp_z / np.sum(exp_z)
追问: Softmax + 交叉熵的梯度简化? → 合在一起计算:\(\frac{\partial L}{\partial z_i} = p_i - y_i\)(预测的 softmax 概率减去真实标签),非常简洁优美。这也是为什么框架实现时把 softmax 和 CE 合并(F.cross_entropy 接收 logits )。
三、优化理论( 5 题)¶
Q11: SGD/Momentum/Adam 对比推导 🟡 [字节] [Google] [通用]¶
题目:推导 SGD 、 Momentum 、 Adam 的更新公式并对比。
参考答案:
SGD:
SGD + Momentum (动量):
- 指数移动平均 of gradients → 加速和平滑震荡
Adam ( Adaptive Moment Estimation ):
AdamW (权重衰减修正):
→ AdamW 将 weight decay 从梯度中分离出来( Adam 的 L2 正则和 weight decay 不等价), LLM 训练标配。
- SGD+M:优点是泛化好|缺点是收敛慢|适用场景:CV(图像分类)
- Adam:优点是收敛快|缺点是泛化可能差|适用场景:NLP/Transformer
- AdamW:优点是 Adam 的修正版|缺点:-|适用场景:LLM 训练标配
Q12: 凸优化 vs 非凸优化 🟡 [Google] [字节]¶
题目:深度学习为什么是非凸优化?如何理解其损失面?
参考答案:
凸 vs 非凸:
- 凸:任意局部最小值 = 全局最小值
- 非凸:可能有多个局部最小值、鞍点
为什么神经网络非凸:
- 非线性激活函数引入非凸性
- 权重置换对称性:交换两个神经元的参数得到相同的网络
- 损失面有大量鞍点
现代理解——损失面的结构:
高维损失面特征:
1. 鞍点 >> 局部最小值(高维中随机点几乎不可能所有方向都是最小)
2. "坏"的局部最小值很少(loss barrier 理论)
3. 大多数局部最小值的loss相近且接近全局最优
4. 存在 loss basin(许多好解形成的"谷")
为什么 SGD 还能工作:
- SGD 的噪声帮助逃离鞍点和尖锐的局部最小值
- 尖锐最小值泛化差( SAM 论文的发现)
- 大 batch 训练容易收敛到尖锐最小值(泛化差)
- 小 batch 的噪声反而是一种正则化
追问:什么是 SAM ( Sharpness-Aware Minimization )? → SAM 不仅最小化 loss ,还最小化最坏情况下的 loss :\(\min_\theta \max_{\|\epsilon\| \leq \rho} L(\theta + \epsilon)\),偏好平坦的最小值,泛化更好。
Q13: 方差和偏差 (Bias-Variance Tradeoff) 的数学推导 🟡 [字节] [百度] [通用]¶
题目:推导偏差-方差分解公式。
参考答案:
设真实关系 \(y = f(x) + \epsilon\),\(\epsilon \sim \mathcal{N}(0, \sigma^2)\)
模型学到的函数 \(\hat{f}(x)\)(不同训练集会学到不同的 \(\hat{f}\))
期望预测误差:
推导:
- Bias²:含义是模型复杂度不够|降低方法:更复杂的模型
- Variance:含义是模型对训练数据过敏感|降低方法:正则化 / 集成 / 更多数据
- Noise:含义是数据固有噪声|降低方法:不可减少
追问:深度学习是高方差模型,为什么泛化还好? → Double Descent 现象:超参数化后模型反而泛化好。原因包括 SGD 隐式正则化、 Lottery Ticket Hypothesis 等。传统 bias-variance tradeoff 在超参数化区域不完全适用。
Q14: 采样方法 🟡 [Google] [字节]¶
题目:解释蒙特卡洛采样和重要性采样的原理。
参考答案:
问题:计算期望 \(E_{x \sim P}[f(x)] = \int f(x)P(x)dx\),当 P(x) 复杂或高维时无法解析求解。
蒙特卡洛采样:
直接从 P 采样 N 个点取平均。
重要性采样(当 P 难以采样时):
- \(\frac{P(x)}{Q(x)}\) 是重要性权重
- Q 是提议分布(必须在 P 非零处也非零)
ML 中的应用:
- 蒙特卡洛:变分推断(VAE 中对 ELBO 的估计)
- 重要性采样:PPO/RLHF 中旧策略采集的样本用于训练新策略
- Gibbs 采样:玻尔兹曼机
- MCMC:贝叶斯后验推断
追问: PPO 中的重要性采样比率 \(r(\theta) = \frac{\pi_\theta(a|s)}{\pi_{\theta_{old}}(a|s)}\) 是什么? → 用旧策略采集的 trajectory 来估计新策略的期望奖励。 PPO 用 clip 限制 \(r(\theta)\) 在 \([1-\epsilon, 1+\epsilon]\),防止策略更新过大。
Q15: 拉格朗日对偶和 KKT 条件 🔴 [Google] [字节]¶
题目:解释拉格朗日对偶问题和 KKT 条件,及其在 SVM 中的应用。
参考答案:
原问题:
拉格朗日函数:
对偶问题:
弱对偶:对偶最优 ≤ 原问题最优(总是成立) 强对偶:对偶最优 = 原问题最优(凸问题 + Slater 条件时成立)
KKT 条件(最优解的必要条件):
- 稳定性:\(\nabla_x L = 0\)
- 原始可行:\(g_i(x^*) \leq 0, h_j(x^*) = 0\)
- 对偶可行:\(\lambda_i \geq 0\)
- 互补松弛:\(\lambda_i g_i(x^*) = 0\)
SVM 中的应用:
原问题:\(\min \frac{1}{2}\|w\|^2 \quad \text{s.t.} \quad y_i(w^Tx_i + b) \geq 1\)
对偶问题:
互补松弛 \(\alpha_i(y_i(w^Tx_i+b)-1)=0\) → 只有支持向量的 \(\alpha_i > 0\)
→ 对偶形式只涉及 \(x_i^Tx_j\),可以用核函数 \(K(x_i, x_j)\) 替换,实现非线性 SVM 。
学习检查清单¶
- 能推导贝叶斯定理和 MLE
- 理解常见概率分布和共轭先验
- 掌握信息论三兄弟(熵、交叉熵、 KL 散度)的关系
- 能做 SVD/PCA 的推导
- 掌握矩阵求导(向量对向量求导)
- 理解 Softmax 的梯度和数值稳定性
- 能推导 Adam 优化器的更新公式
- 理解偏差-方差分解
- 了解重要性采样和 PPO 的关系
- 知道 KKT 条件在 SVM 中的应用
⚠️ 核验说明(2026-04-03):本页已完成 2026-04-03 人工复核。数学推导、最优性条件和优化结论按标准教材口径保留;“最优/必要条件”属于理论定义时未做弱化。
最后更新日期: 2026-04-03