深度学习49问
深度学习49问(无答案版)
一、深度学习基础(数学与本质)
- 为什么深度神经网络具有“通用逼近能力”?它的局限性是什么?
- 深度模型为什么能泛化?泛化从何而来?为什么过参数化反而更容易泛化?
- 解释一下梯度消失与梯度爆炸的数学本质,为什么 ReLU 能缓解?
- Batch Gradient Descent、Mini-batch、SGD 的本质区别是什么?为什么深度学习几乎都用 mini-batch?
- 为什么深度学习需要非线性激活函数?如果把所有激活函数去掉会发生什么?
二、优化与训练技巧
- Adam 为什么比 SGD 更快?它真正解决了什么问题?为什么有时候还要用 SGD?
- 为什么学习率是训练中最重要的超参数?learning rate warmup 的根本原因是什么?
- 权重初始化为什么重要?Xavier 和 Kaiming 的原理是什么?
- 梯度裁剪(gradient clipping)是用来解决什么问题的?为什么有效?
- 为什么深度学习训练常常需要 early stopping,而不是训练到 loss 完全收敛?
三、正则化与泛化能力
- Dropout 为什么能防止过拟合?它与 bagging 的关系是什么?
- 为什么 BatchNorm 能加速训练、稳定梯度?它是如何改变 loss landscape 的?
- LayerNorm、BatchNorm、GroupNorm 的主要差别与适用场景分别是什么?
- L2 正则(权重衰减)为什么能提升泛化?为什么会与 Adam 的更新规则冲突?
- 数据增强为什么能极大提高效果?它的本质是干什么?
四、卷积神经网络(CNN)
- 你能解释 CNN 的“平移不变性”和“局部相关性”的根本来源吗?
- 为什么卷积比全连接更适合图像?从参数规模与归纳偏置角度解释。
- 残差结构(ResNet)为什么能解决深度退化问题?本质是解决了什么?
- 为什么深层 CNN 的 receptive field 增大能够提升抽象能力?
- 为什么 CNN 在 NLP 中逐渐被自注意力机制取代?
五、序列模型(RNN → LSTM → Transformer)
- RNN 为什么难以捕捉长期依赖?数学上体现在哪?
- LSTM 的三个门分别解决了 RNN 的哪些根本问题?
- Transformer 为什么能够完全替代 RNN?
- 自注意力机制为什么能并行化?为什么能捕捉长距离依赖?
- Multi-head Attention 的核心作用是什么?为什么不是一个 head 就够?
六、Transformer 深层机制
- Post-Norm 为什么会训练不稳?Pre-Norm 为什么能解决?
- 为什么 Transformer 的深度越高越稳定?ResNet 思想起了什么作用?
- 为什么 Transformer 需要 positional encoding?如果不加会怎样?
- 为什么 Decoder 需要“mask”?不 mask 会出现什么问题?
- 为什么 Transformer 这么容易 scale(GPT-4、GPT-5)?它的结构有什么优势?
七、表示学习(Word2Vec、Embedding、本质)
- Word2Vec 的 Skip-Gram 本质在做什么?为什么是一个二分类问题?
- embedding 矩阵的本质是什么?为什么 embedding 会自动学到语义?
- 为什么 Word2Vec 能学出“king – man + woman = queen”?
- 为什么 Transformer 中 embedding 与输出层常常权重共享?
八、生成模型(GAN、VAE、Diffusion)
- GAN 不稳定的根源是什么?为什么会 mode collapse?
- VAE 为什么生成结果模糊?与 GAN 的差异来自哪里?
- Diffusion Model 为什么能超越 GAN?它的可控性从何而来?
- KL divergence 在 VAE 中扮演什么角色?
- GAN 的判别器过强会导致什么问题?为什么?
九、模型评估与理解
- 为什么不能仅看 training loss 就判断模型是否学得好?
- 为什么深度模型常常 test loss > train loss?但 test 精度却更高?
- 为什么图像分类准确率并不能反映真正的“模型理解能力”?
- 为什么模型会对对抗样本如此脆弱?
- 为什么神经网络缺乏可解释性?有哪些可解释方法?
十、深入思考(高难度核心问题)
- 为什么 over-parameterization(参数远多于样本)反而有助于优化?
- 神经网络为什么能在 loss landscape 中找到好的 minimum?
- 为什么 sharp minimum 不一定差,flat minimum 不一定好?
- Self-supervised learning 为什么能取得这么好的效果?
- 如果你要设计下一代 Transformer,你觉得核心瓶颈在哪里?
深度学习49问(有答案版)
一、深度学习基础(数学与本质)
1. 为什么深度神经网络具有“通用逼近能力”?它的局限性是什么?
要点: 带有充分宽度/深度和非线性激活的前馈网络能逼近任意连续函数(通用逼近定理)。深度(层数)使网络以组合方式构造复杂函数,参数共享与层次化表示提高表示效率。
局限: 能表示 ≠ 能训练(可训练性问题);需要大量数据与计算;对分布偏移敏感;可解释性差;优化有鞍点/鞍区;泛化依赖训练过程与正则化而非仅靠表达能力。
2. 深度模型为什么能泛化?泛化从何而来?为什么过参数化反而更容易泛化?
要点: 泛化不是仅靠模型容量,而是由 模型+优化器+数据 的交互产生。SGD 等带噪声的优化器和正则化(显式或隐式)会偏向“简单/平坦”的解,平坦解通常泛化更好。
过参数化悖论解释: 在高维参数空间中存在大量全局/较好极小点,SGD 噪声更容易找到那些“平坦/简单”的极小点;过参数化还可以使损失景观更可优化(NTK 与线性化近似说明在极宽网络下优化接近凸问题)。
实践提示: 泛化依赖训练策略(优化器、lr schedule、early stop、正则、数据增强),不是仅靠参数少或多。
3. 梯度消失与梯度爆炸的数学本质,为什么 ReLU 能缓解?
数学本质: 反向传播中梯度是链式相乘:若每层 Jacobian(或权重矩阵奇异值)平均小于 1,乘积呈指数衰减 → 梯度消失;若大于 1,呈指数增长 → 梯度爆炸。RNN 的时间展开尤为明显。
ReLU 缓解: ReLU 在正区间导数为 1,不像 sigmoid/tanh 的导数 <1,会抑制梯度;ReLU 的稀疏激活还降低了梯度路径复杂度。配合 He 初始化 与 残差结构 能大幅缓解消失问题。
公式示例: 对简单链 \(\delta \approx \prod_{l} W_l'\)(\(W_l'\)为局部Jacobian),其谱半径控制衰减/爆炸。
4. BGD、SGD、Mini-batch 的本质区别?为什么几乎都用 mini-batch?
本质:
- BGD(批量梯度下降):一次用全数据计算精确梯度,收敛稳定但计算昂贵。
- SGD(随机):每个样本更新一次,噪声大但能逃鞍点并快速迭代。
- Mini-batch:在二者之间,使用一小批样本做无偏梯度估计,兼顾效率和稳定性。
为什么用 mini-batch: 硬件(GPU)并行能力与内存限制使 mini-batch 在效率与稳定性间最优;合适的噪声水平还利于泛化(帮助跳出坏鞍点)。
5. 为什么需要非线性激活函数?如果全为线性会怎样?
要点: 非线性是深层网络获得更高阶表示的关键。如果把所有激活去掉,任意多层线性变换仍等价于单个线性映射 \(W_{\text{eff}} x\),无法拟合非线性映射。激活函数(ReLU、GELU、tanh 等)赋予网络非线性表示能力。
二、优化与训练技巧
6. Adam 为什么比 SGD 更快?它真正解决了什么问题?为什么有时候还要用 SGD?
Adam 的核心: 对每个参数维度维护一阶动量与二阶动量(自适应步长),能根据历史梯度自动调整学习率,因而在稀疏/非平稳梯度场上收敛快且鲁棒。
为何还用 SGD: 自适应方法(Adam)可能偏向 sharp minima、隐式正则较弱,泛化有时不如 SGD;很多实践采用 Adam(快速收敛)+ 最终切换到 SGD 或使用 AdamW + 合适的调度来兼顾收敛与泛化。
7. 为什么学习率是训练中最重要的超参数?learning rate warmup 的根本原因是什么?
重要性: 学习率控制更新步长,直接决定收敛速度与轨迹:太大会发散/震荡,太小会慢或陷次优。
warmup 原因: 模型初始参数随机且梯度统计不稳定,直接用大 lr 可能导致权值跳动或数值溢出;warmup 逐步提高 lr 让优化器/归一化适配,从而避免初期不稳定(Transformer / 大模型常用)。
8. 权重初始化为什么重要?Xavier 与 Kaiming 原理是什么?
目标: 在深层网络中保持前向激活与反向梯度方差稳定,避免在深层出现迅速放大或缩小。
Xavier(Glorot): 设 \(Var(W)=2/(n_{in}+n_{out})\),适用于对称激活(tanh),保持前后方差平衡。
Kaiming(He): \(Var(W)=2/n_{in}\),针对 ReLU(因为 ReLU 丢弃一半激活),调整方差以补偿截断效应。
实践: 选初始化需看激活函数与网络结构(尤其 ResNet/Transformer 有特定初始化推荐)。
9. 梯度裁剪是用来解决什么问题的?为什么有效?
用途: 常用于解决梯度爆炸(尤其在 RNN 或大 lr 时)。按范数裁剪(clip norm)将梯度缩放到上限 \(\tau\),避免一次更新导致权重巨大跳变。
为何有效: 裁剪限制了最坏情况更新,保证数值稳定性并避免训练崩溃,是简单且可靠的工程手段。
10. 为什么训练常常用 early stopping 而不是训练到 loss 完全收敛?
原因: 完全收敛往往会过拟合训练噪声,验证集的性能会先提升后下降;early stopping 在验证性能最佳处停止,相当于隐式正则。它能节省时间并提升泛化。
三、正则化与泛化能力
11. Dropout 为什么能防止过拟合?它与 bagging 的关系是什么?
本质: Dropout 在训练中随机屏蔽神经元,迫使网络在不同子网络上共享参数,降低神经元间的 co-adaptation,从而提升鲁棒性;推理阶段采用权重缩放近似 ensemble。
与 bagging 的关系: Dropout 可被视为对指数多子网络的共享参数集成(近似 bagging),但不同子模型共享权重并且训练和推理的实现方式有别。
12. 为什么 BatchNorm 能加速训练、稳定梯度?它如何改变 loss landscape?
作用机理: BN 对 mini-batch 的通道进行标准化,减小输入分布随参数更新的变化(internal covariate shift),从而让后续层看到更稳定的输入分布。BN 允许用更大 lr,减少梯度爆炸/消失风险。
对 loss landscape 的影响: BN 实际上使得 loss 变得更平滑(梯度对参数扰动不那么敏感),从而改善优化条件并减少鞍点和陡峭区域的影响(可以看成平坦化/光滑化效应)。注意 BN 在 small-batch 或在线设置下表现差,需要用 GN/LN 替代。
13. LayerNorm、BatchNorm、GroupNorm 的主要差别与适用场景?
BatchNorm(BN): 归一化跨 batch 的每个通道,适合 CNN、大 batch;对 batch size 敏感。
LayerNorm(LN): 对单个样本的所有特征归一化,适合 Transformer/RNN(序列模型)且不受 batch size 影响。
GroupNorm(GN): 在通道维上分组做归一化,介于 BN 与 LN 之间,适合小 batch 或检测任务。
工程选择: CNN-large-batch → BN;序列/小 batch → LN/GN。
14. L2 正则(权重衰减)为什么能提升泛化?为什么会与 Adam 冲突?
L2 本质: 在损失中加入 \(\lambda |w|^2\) 限制参数幅度,偏向更简单(低范数)解,减少过拟合。
与 Adam 的冲突: 经典 L2 等价于在梯度上加上 \(2\lambda w\),但自适应方法(Adam)对每维做缩放,这会改变 L2 实际效果。AdamW 将 weight decay 从梯度中分离开(在更新阶段直接衰减权重),恢复 L2 本来的几何意义,因而通常更稳健。
15. 数据增强为什么能极大提高效果?本质是什么?
本质: 数据增强通过仿射/颜色/噪声/语义变换生成多样化样本,增加训练样本的有效覆盖范围,等价于在数据分布上施加平稳性先验(模型应该对这些变换不变或不敏感)。它既扩充数据也起到正则化(防止过拟合)作用。
四、卷积神经网络(CNN)
16. 解释 CNN 的“平移不变性”和“局部相关性”的根本来源?
局部相关性(locality): 卷积核只作用于局部邻域,适配图像中的局部结构(边缘、纹理)。
平移等变/近似不变(translation equivariance/invariance): 卷积核权值在空间共享,同一特征在不同位置产生相同响应;池化/全局池化等进一步增加不变性。
17. 为什么卷积比全连接更适合图像?从参数规模与归纳偏置角度解释。
参数规模: 卷积通过权值共享大幅减少参数(例如 3x3 卷积远小于对应的全连接权矩阵)。
归纳偏置: 卷积假设局部性与平移不变,这正是视觉数据的天然结构,使学习更高效、更少数据也能获得好表现。
18. 残差结构(ResNet)为什么能解决深度退化问题?本质是解决了什么?
本质: 残差块学习增量 \(F(x) = H(x)-x\),使网络可以更容易逼近恒等映射,梯度可以通过恒等捷径几乎无衰减传递,从而解决深层训练中梯度消失/退化与优化困难的问题。实质上把复杂映射分解为“保留输入 + 小改动”,降低优化难度。
19. 为什么深层 CNN 的 receptive field 增大能够提升抽象能力?
要点: 大 receptive field 能整合更大范围上下文,从而从局部纹理上升到物体级/场景级特征,有利于捕捉长程关系和语义信息;通常通过堆叠卷积、下采样或大卷积核实现。
20. 为什么 CNN 在 NLP 中逐渐被自注意力机制取代?
原因: 语言建模要求捕捉长距离依赖(句法与语义跨远距离),CNN 的感受野增长受限且需深层堆叠;自注意力提供 O(1) 的任意位置直接交互,并且并行计算效率高,且更灵活地建模任意关系。
五、序列模型(RNN → LSTM → Transformer)
21. RNN 为什么难以捕捉长期依赖?数学上体现在哪?
数学式: RNN 的隐藏状态展开反向梯度含 \(\prod_{t} W^\top \mathrm{diag}(f'(a_t))\)。若该乘积矩阵的谱半径 <1,梯度会指数衰减,导致无法将远端误差信号传回早期时刻;若 >1,梯度爆炸。时间步越长这种问题越严重。
22. LSTM 的三个门分别解决了 RNN 的哪些根本问题?
遗忘门(forget): 选择性丢弃不再需要的信息,防止无用记忆累积。
输入门(input): 控制新信息写入 cell state 的强弱(防止噪声写入)。
输出门(output): 控制从 cell state 到隐藏状态的读出(避免直接泄露未处理信号)。
整体: cell state 作为近似线性通路让梯度更容易长距离传递,从而缓解长期依赖。
23. Transformer 为什么能完全替代 RNN?
关键点: 并行性(不需要按时间步递归)、直接的全局交互(self-attention),更好的缩放性(容易扩深和扩宽),以及训练稳定性(LayerNorm、残差、Adam 等配合)使 Transformer 在很多序列任务上优于 RNN。
24. 自注意力机制为什么能并行化?为什么能捕捉长距离依赖?
并行化: 所有 queries/keys/values 可以一次性通过矩阵乘法 \(QK^\top\) 计算完毕,不依赖前一时间步输出。
长距依赖: 注意力为任意位置对提供直接连接(路径长度通常为 1),不需要跨很多层或时间步传递信息,从而避免链式衰减。
25. Multi-head Attention 的核心作用是什么?为什么不是一个 head 就够?
作用: 把表示映射到多个子空间,每个 head 学习不同类型的关系(句法、语义、位置偏好等),提高表达多样性与模型容量。多个头还能降低单头学习瓶颈并提供并行冗余;单头难以同时捕获多种互补模式。
六、Transformer 深层机制
26. Post-Norm 为什么会训练不稳?Pre-Norm 为什么能解决?
Post-Norm(子层→Add→LN): 梯度在反向必须穿过 LayerNorm,LN 的雅可比依赖输入方差,会对梯度做缩放/再分配,层叠后导致梯度在深层指数衰减或波动。
Pre-Norm(LN→子层→Add): LN 在子层前,残差主路径绕过 LN,梯度可以不受 LN 的重复缩放,训练更稳定,能训练更深的网络。
工程: Pre-LN 成为深 Transformer 的常用设置;若使用 Post-LN,常配合 LayerScale、residual scaling 或小 lr warmup 等技巧。
27. 为什么 Transformer 的深度越高越稳定?ResNet 思想起了什么作用?
说明: 不是“越高越稳定”,而是当使用残差与合适归一化(Pre-LN)时,深度成本被大幅缓解——残差提供恒等捷径确保信息与梯度能够流动,LayerNorm(或其他技术)保证子层输入分布稳定,训练策略(warmup、adamw)保障数值稳定,所以能可靠堆叠更多层来提升表示能力。
28. 为什么 Transformer 需要 positional encoding?如果不加会怎样?
原因: 自注意力对位置不敏感(只根据内容相似性),必须注入序列位置信息以保留顺序关系。若不加位置编码,模型无法区分序列排列(“AB”和“BA”会同分布),语言建模与序列任务效果会严重退化。位置编码可为固定(sinusoidal)或可学习。
29. 为什么 Decoder 需要 mask?不 mask 会出现什么问题?
用途: 在自回归生成里,mask(上三角)屏蔽未来位置,保证预测每一步仅依据历史(因果性)。若不 mask,训练时模型会看到将要预测的目标(信息泄露),在推理时无法自洽且生成会作弊。
30. 为什么 Transformer 容易 scale(GPT-4、GPT-5)?结构优势是什么?
优势: 模块化(attention + FFN)且以矩阵运算为主,极易并行化与分布式切分;残差+归一化+自注意力使深度/宽度扩张时的优化可控;简洁的单一模块化堆栈有利于工程化扩展和并行训练。再者,海量数据与自监督目标(语言模型)与计算资源共同驱动 scale 效应。
七、表示学习(Word2Vec、Embedding、本质)
31. Word2Vec 的 Skip-Gram 本质在做什么?为什么是一个二分类问题?
本质: Skip-Gram 目标是学一个 embedding,使中心词能预测上下文词的概率,以最大化语料中词对的共现概率。使用 negative sampling 时,将原始多类 softmax 的学习转成若干个二分类问题(正样本 vs 负样本),简化计算并近似最大化局部 PMI。
32. embedding 矩阵的本质是什么?为什么 embedding 会自动学到语义?
本质: embedding 是一个可学习的查表参数矩阵 \(E \in \mathbb{R}^{V\times d}\),词索引映射到向量。通过上下文预测任务(Skip-Gram、CBOW、语言模型等),模型调整向量使得语义/共现相似的词在向量空间上靠近。统计共现信息在训练中被编码为几何关系,从而学习到有意义的语义表示。
33. 为什么 Word2Vec 能学出 “king – man + woman = queen”?
机制: Word2Vec 的训练目标与 PMI 有紧密联系,不同语义属性(性别、时态、职业)在语料中以近似线性方式影响共现分布,从而在向量空间中形成可线性组合的方向。这是经验现象而非精确代数定律,但在大语料下常见。
34. 为什么 Transformer 中 embedding 与输出层常常权重共享?
理由: 权重共享(weight tying)减少参数、保持输入输出在同一语义空间、加速训练并改进低资源泛化。实质上把 embedding 矩阵与输出词预测的线性投影矩阵设为同一矩阵,理论上能约束模型学习一致的表征。
八、生成模型(GAN、VAE、Diffusion)
35. GAN 不稳定的根源是什么?为什么会 mode collapse?
不稳定根源: GAN 是 min-max 对抗优化,目标非凸非凹、动态更新导致训练不稳定(振荡、发散);判别器与生成器的能力不平衡会导致梯度消失或不稳定。
mode collapse: 生成器发现少数样本就能骗过判别器,于是只输出有限模式,没有多样性;原因包括判别器弱、训练信号不足或目标函数特点。常见缓解:WGAN、谱归一化、mini-batch discrimination、unrolled GAN、多判别器或多模态正则。
36. VAE 为什么生成结果模糊?与 GAN 的差异来自哪里?
模糊原因: VAE 用显式似然(通常假设像素独立且为高斯),最大化 ELBO 导致最优解倾向最小化像素级均方误差,平均化高频细节 → 视觉上模糊。
与 GAN 的差异: VAE 最大似然/变分推断为目标,稳定但倾向平均;GAN 用对抗损失注重判别器无法分辨的高阶统计,从而能生成锐利细节但训练不稳定。
37. Diffusion Model 为什么能超越 GAN?它的可控性从何而来?
核心: Diffusion 模型通过逐步加入噪声和学习逐步去噪(逆过程)把复杂生成问题拆成很多简单回归子问题,训练稳定且可视为最大似然或变分下界的改良。逐步生成使得高频细节逐层恢复,从而样本质量高且多样。
可控性: 条件化(class、text、图像局部掩码)与 guidance 技术(classifier guidance / classifier-free guidance)允许以明确控制信号调节生成样式或方向。
38. KL divergence 在 VAE 中扮演什么角色?
角色: ELBO 包含重构项 + KL(\(q_\phi(z|x)\Vert p(z)\))。KL 项把近似后验 \(q\) 拉向先验 \(p(z)\),保证编码器产生的 latent 分布与先验一致,从而能在生成时直接从 \(p(z)\) 采样并得到合理输出;KL 同时作为正则项平衡重构与潜空间结构。
39. GAN 判别器过强会导致什么问题?为什么?
问题: 判别器过强会使得生成器收到的梯度近乎 0(判别器输出接近 0/1 → sigmoid 饱和),导致生成器无法获得有效学习信号并停滞。要维持两者能力的平衡或使用改良目标(WGAN 的 Earth-Mover 距离等)来避免梯度消失。
九、模型评估与理解
40. 为什么不能仅看 training loss 就判断模型是否学得好?
原因: training loss 仅反映对训练集的拟合,可能是记忆噪声而非学到通用规律;需要验证/测试集、鲁棒性评估(对抗性、分布外)与可解释性指标来衡量“学得好”的全面性。
41. 为什么深度模型常常 test loss > train loss?但 test 精度却更高?
解释: 训练集常包含更复杂/噪声实例或通过数据增强/训练技巧造成训练分布与测试分布有差异(或模型在训练集上过拟合特定噪声使得损失度量差异)。精度与 loss 衡量不同(accuracy 是阈值化的指标),在某些情况下 loss(比如 log-loss)受置信度惩罚,测试集上模型输出置信度更合适导致 accuracy 更高但平均 log-loss 仍可能更高。总体上应同时看多种指标而非单一 loss/acc。
42. 为什么图像分类准确率并不能反映真正的“模型理解能力”?
原因: 模型可能依赖“shortcut features”(背景、纹理、数据偏差)而非对象本质特征;高准确率不等于对概念的因果/语义理解。需通过对抗测试、交叉域泛化、可解释性工具、局部/全局扰动实验来检验“真正理解”。
43. 为什么模型会对对抗样本如此脆弱?
核心: 在高维输入空间,模型的决策边界在局部通常近似线性(或复杂但不平滑),微小方向的扰动能累积导致显著 logit 变化;训练过程中模型学到的特征可能是高频或不可感知但对决策重要的,通过对抗训练或鲁棒优化可以提高稳健性,但代价常是性能或效率上的权衡。
44. 为什么神经网络缺乏可解释性?有哪些可解释方法?
原因: 表征分布式(信息以高维稀疏/重叠方式编码)、非线性与大量参数使内部语义难以逐一映射到人类可理解的概念。
方法概览: 特征可视化、激活最大化、梯度/敏感度方法(saliency maps、Grad-CAM)、局部代理(LIME/SHAP)、概念探针(probing)、因果/符号方法、可解释模型替代(decision trees over embeddings)等。每种方法有优缺点,需结合任务目标使用。
十、深入思考(高难度核心问题)
45. 为什么 over-parameterization(参数远多于样本)反而有助于优化?
理论与直觉: 过参数化扩展了参数空间、平滑了损失景观,使得鞍点和坏的局部极小点相对稀少;在极宽网络(NTK)近似下,模型训练近似线性并变得凸性更强,从而 SGD 更容易找到全局/良好解。过参数化也为模型提供冗余,降低优化路径的脆弱性。
46. 为什么神经网络能在 loss landscape 中找到好的 minimum?
解释: 高维参数空间的结构让“坏”的局部极小点比低维更罕见;SGD 的噪声与动量帮助越过鞍点并偏向平坦区域;正则化(显式/隐式)和初始化策略进一步引导到泛化好的 minima。理论上有越来越多关于随机初始化与 SGD 动力学的解释,但完整理论仍在发展中。
47. 为什么 sharp minimum 不一定差,flat minimum 不一定好?
澄清: “sharp/flat”只是局部二阶(曲率)描述,实际泛化还依赖参数尺度、重参数化不变性与训练/数据分布。某些 sharp minima 在参数重标度后仍泛化良好;因此应结合 PAC-Bayes、稳健性角度与实际验证来判断,而非仅凭曲率标签。
48. Self-supervised learning 为什么能取得这么好的效果?
核心: SSL 通过设计 proxy 任务(masking、contrastive、rotation prediction 等)让模型在未标注数据上学习到有用的、可迁移的表征。这些表征捕捉语义/结构性信息,能显著减少下游标注需求并提升样本效率。SSL 的成功来自任务设计、数据规模与模型容量的协同。
49. 如果你要设计下一代 Transformer,你觉得核心瓶颈在哪里?
主要瓶颈(可选方向):
- 自注意力的二次复杂度 \(O(N^2)\) 在长序列上不可扩展 → 需稀疏/线性/局部-全局混合注意力;
- 长上下文与记忆效率(长期状态、外部记忆);
- 训练/推理成本(能源与延迟);
- 鲁棒性、可解释性与可控性(尤其生成模型的安全性);
- 多模态协同与因果推理能力。
研究方向示例: 线性化 attention、state-space 模型、稀疏/局部-全局混合、Mixture-of-Experts、可微分外部记忆、训练/蒸馏/量化优化等。
自回答,仅参考,未修正:
-
因为神经网络的多层感知机可以拟合任意非线性函数,而基本绝大多数问题都可以转换为非线性函数的最优化,局限性在于需要一定量的经验数据、可解释性不足、随机性较强、容易陷入局部最优;
-
泛化是因为深度模型可以通过已知的经验数据学习到非线性函数/问题规律及数据分布模式,同时事件发生是基本与训练集的数据分布偏移程度比较小、规律偏移小,所以会在相应的数据分布下出现的答案会获得相对正确的结果,泛化性来源于神经网络拟合到的数据分布内的问题函数化规律、并且学习到的规律会本质化,过参数化会减少参数间的协同,使得让学习到的模式更加普适,因为参数量大;
-
梯度消失和爆炸的本质是反向传播中梯度经过多层的神经网络的流动以及各种结构的变化在没有学习到正确规律前的随机值会使得梯度在回传时波动(缩放)严重;ReLU会将负的梯度的值置为零,减小负梯度的影响;深度学习如果没有非线性激活函数会使得神经网络失去非线性表达能力,只能线性拟合特征,把所有激活函数去掉后会退化成线性回归;
-
BGD就是对所有数据的进行梯度反向传播,而普通的GD是对单个样本做梯度反向传播下降会比BGD快但是梯度不稳定、Mini-Batch是折中随机抽取小batch做梯度下降,mini-Batch是BGD的无偏估计,几乎等效于BGD,同时要快得多、对计算资源需求小;
-
如果没有非线性激活函数就会导致多层深度没有任何意义,会退化成线性回归。
-
Adam本身相对于SGD能自动调整学习率学习更容易稳定,同时到后期会自动降低学习率,依赖前一步的梯度变化自动退火,解决了学习率对于前后期的不同需求的自适应,因为SGD本身相对于Adam来讲会减少产生后期学习止步不停的问题同时会减少调参需要;
-
因为学习率会影响最后是否收敛、收敛程度、局部最优等,不知道lrw是啥;
-
优秀的权重初始化可以视作一种正则化手段,同时初始化也是为了避免权重全为0导致无效梯度传播或者权重相同对称性,好的权重初始化可以加快收敛同时学习到的特征正交性更强,Xavier初始化是均值为0方差为输入数n的1/n的高斯分布,kaiming初始化则是均值为0、方差为2/n的高斯分布;
-
梯度裁剪是为了减少梯度尺度过大的问题即梯度爆炸的问题,因为他可以限制梯度的大小从而减少梯度在多层回传的爆炸;
-
因为会出现过拟合,到后期会学习到刻板规律而不是导致泛化能力弱,earlystopping则可以很好的解决训练误差与验证误差的平衡。
-
因为Dropout通过丢弃部分神经元从而减少神经元间的协同进化从而学习到更广泛的规律,bagging和Droupout不知道;
-
因为BatchNorm可以稳定数值分布, 稳定回传梯度从而使得训练加速、梯度稳定,losslanscape不知道;
-
LN适用于NLP等领域,即一个样本下所有特征尺度分布相同;BN适用于CV等领域,即不同样本同一通道下尺度分布相同;GN层不知道;
-
因为Adam中也是有权重衰减的,为什么能提升泛化不知道;
-
数据增强会提高数据量,即解决了深度学习需要多数据的问题,同时也会向其中加入噪音起到了正则化的作用提高泛化能力,本质是造更多数据与正则化。
-
CNN的平移不变性来自于单个卷积核的平移卷积,局部相关性则是不同卷积核的权重共享与卷积核大小的限制;
-
因为卷积的平移不变性和局部相关性,可以捕捉到空间上的特征,参数规模要比全连接层小很多,归纳偏置不知道;
-
因为残差结构中通过双路,即一路正常学习、一路传递源数据进行学习,可以使得原数据传递到后期不会导致信息丢失,同时梯度回传也会有1能正常传播,本质上解决了梯度回传衰减叠加问题;
-
因为CNN的感受野变大会使得卷积核可以捕捉的信息越多,越关注整体从而使得抽象能力提升;
-
因为CNN的卷积感受野的大小相对较小,很难解决长距离依赖问题还有相对较难学习到序列关系从而被取代,同时注意力的参数量也相对较小;
-
因为RNN的结构叠加比较小且难,不知道;
-
LSTM不会;
-
因为Transformer中对长距离依赖与语义建模等问题解决更加优秀,可以解决RNN无法长距离建模的问题;
-
自注意力可以做多头同时查询学习语义信息,之所以能解决长距离依赖是因为attention摆脱了视野问题,attention可以对长序列进行学习并语义建模,其建模相对于RNN来讲可以分布存在;
-
多头注意力的核心作用是通过不同注意力头分布在不完全重叠的假设空间中从而学习到不同的规律(查询的问题),一个head最终只会在一个假设空间中同时寻找多个规律,相对于不重叠的假设空间所学习到的规律不够泛化,还有就是多头注意力可以并行计算提高计算效率解决了分布式并行计算的效率问题;
-
因为Post-Norm的残差梯度回传会不可避免的经过LN层,而LN层的缩放则与sublayer有关,从而会导致残差作用减弱且梯度回传不稳定或者消失爆炸,因为Pre-Norm将LN层放到了sublayer之前,使得残差的原信息分支梯度回传不需经过LN层从而使得其梯度回传衰减减少;
-
因为Transformer的深度越高会使得深层语义信息提取更深,且抽象语义信息理解更深,ResNet思想使得transformer可以叠很多层而不会受到梯度叠加效应太大的影响,而且会使得原信息在深层传播时不会完全消失;
-
不知道;
-
因为Decoder一般用于预测任务,所以会有个很重要的概念叫做因果,输出结果收到因果影响,即前面的话决定后面的话,而不应该受到后面的语句影响,如果不mask会导致输出没有推理逻辑和因果逻辑;
-
因为Transformer本身结构并不复杂,不会有像是卷积核感受野大小的烦恼,并且transformer一层层加深抽象语义提取的能力反而可以更好的适配scale,它的结构就是可以很好的分布式并行计算提高计算效率且加深网络会在一定层面上提高能力,同时resnet结构也可以保证深层网络的有效性;
-
skip-Gram本质上就是在做统计预测,即用中心词去预测两边词,之所以是二分类任务,是将skip-gram做优化使得预测变成是否预测正确,从而加速训练;
-
embedding的本质是对词的向量表示做为权重索引,即一个索引可以获得一列权重为词的向量表示,同时这是在向量空间中的建模会不断优化向量表示,使得该向量空间中的语义建模逐渐贴近训练语料;
-
因为word2Vec本身通过训练迭代从而获得词的向量嵌入与语义建模,其向量空间中嵌入的向量间的向量差方向则代表着语义差,即类似于问题中所述;
-
因为embedding与输出层的权重均表示词的嵌入向量,权重共享可以使得embedding与输出层的向量空间建模更加精准稳定;
-
因为GAN本身是生成与辨别协同,生成器与辨别器的协同学习更加不稳定,因为样本的不平衡可能会让辨别器学到局部最优从而导致mode collapse,不知道;
-
不知道;
-
不知道;
-
不知道;
-
不知道;
-
因为training loss本身就是在训练集上训练评估得到的loss,无法通过该loss判断其泛化能力,不确定是否学到想要的规律;
-
一般train的数据集规模远大于test的规模,test的样本数据分布可能相对于train更局限,因为学习到的规律更加广泛,泛化能力更强;
-
图像分类准确没办法说明模型是否学习的图像的本质含义,只能说明其对图像特征的理解分类较好;
-
不知道;
-
不知道;
-
因为参数多会使得学到的泛化能力更强,拟合的规律更广泛更细节,拟合能力更强;
-
loss lanscape不知道;
-
因为有时候本来就是问题转化成的非线性函数分布就比较陡峭,从而学习到的可能就会好一点即使是sharp,而flat本身并不意味这收敛到一个很好的点,可能是初始化或者各种问题导致收敛到一个很差的局部最优;
-
自监督学习本身是有一定的规则和分类能力的,不知道;
-
可解释性、计算速度、计算资源消耗、性能、效率、对数据需求、数据分布外泛化能力.....

浙公网安备 33010602011771号