60 秒回答模板

我会先看 loss 曲线和指标,确认是不下降、震荡、发散还是验证集不提升。然后检查数据和标签是否错、特征是否归一化、样本是否极度不平衡、损失函数是否匹配任务。训练侧重点查学习率、优化器、batch size、初始化、梯度爆炸/消失、正则过强、网络结构和数值稳定。排查时用小样本过拟合测试、梯度统计、参数分布和 ablation 实验逐步定位。

考点 先分现象
难度 真实面经题
回答目标 讲清方法、取舍和追问

深入解析

01

先描述不收敛现象

不收敛可能是 loss 不降、loss 发散、指标震荡、训练集能学但验证集不升,或者训练早期正常后突然崩。不同现象对应不同排查方向。

02

先查数据和标签

标签错位、样本重复、数据泄漏、训练验证分布差异、类别极不平衡和输入异常,都会让模型无法学到稳定规律。先验证数据比盲目调参更高效。

03

检查特征和损失

数值特征未归一化、缺失值处理不当、文本截断错误、损失函数和任务不匹配,都会导致梯度信号差或目标错误。

04

再看优化过程

学习率过大可能发散,过小可能几乎不动;初始化不当、激活饱和、梯度爆炸或消失、batch size 不合适都会影响收敛。

05

用诊断实验定位

可以做小样本过拟合测试、打印梯度范数、观察参数分布、固定随机种子、简化模型和逐项 ablation,确认问题来自数据、模型还是训练策略。

易错点

  • 不要一上来只调学习率,先确认数据、标签和损失函数正确。
  • 不要只看训练 loss,验证指标和业务指标也要同步观察。
  • 不要凭感觉改多个变量,要用 ablation 定位原因。

面试官追问

小样本过拟合测试有什么用?

如果模型连很小训练集都拟合不了,通常说明代码、损失、标签或优化过程有问题。

学习率怎么排查?

观察 loss 是否发散或下降过慢,尝试 learning rate range test、warmup 和调度策略。

梯度爆炸怎么办?

可以用梯度裁剪、降低学习率、归一化、残差结构和更合适的初始化。