MLE / Research · ML Fundamentals

TikTok 训练 Loss 持续上升:学习率、目标定义与诊断顺序

用二次函数解释过大步长,纠正强正则必导致上升,逐层检查数据和梯度。

题目重点:用二次函数解释过大步长,纠正强正则必导致上升,逐层检查数据和梯度。

题意与假设

这道练习题保留了面经中值得训练的核心约束,并将需要澄清的条件单独列出。现场拿到变体时,先和面试官确认这些条件。

  • 题目只给loss上升和选项,未给模型/曲线;区分数据loss与含正则total loss,不编唯一根因。

解题路线

  1. 先核对测量:同一训练集、mean/sum归约、loss是否含正则、batch是否变难、train/eval模式及记录频率。比较不同量会制造“上升”假象。
  2. 梯度下降二次L=aw²/2时w_new=(1−ηa)w,若|1−ηa|>1则loss连续增大。学习率太大是有明确机制的可能原因,η适配曲率才稳定。
  3. 强L2会增加总目标曲率并改变最优点,固定η可能因此不稳定;但降低η后total loss仍可下降。强正则更常表现为欠拟合或较高数据loss,不是无条件“每epoch一直涨”。
  4. 排查梯度符号、label/feature对齐、重复反向未清梯度、溢出/NaN、损失重复归约与optimizer配置。先在极小固定batch过拟合,能帮助分离数据管道和优化错误。
  5. 训练loss与验证loss同时看:train降val升偏向泛化问题,与train本身持续升不是同一诊断。正则太小可以增加过拟合风险,但不推出训练loss连续增大。
  6. 干预一次改一个变量:减lr、检查梯度范数、关闭可疑正则/随机性、有限差分核导数,保存可复现seed和配置。不能因一个选项看起来熟就背“强正则必涨”。

手动走一遍

L=w²/2,η=3,w每步乘−2,loss每步乘4;η=1则一步到0。增加λ把曲率变大,但设η=1/(1+λ)仍下降,说明正则量不是独立充分原因。

规模与取舍

诊断成本按训练步/数据量,有限差分P参数通常需要O(P)次loss评估,适合小模型局部核验;profile与日志要控制额外开销。

易错点与追问

容易失分的边界

  • 强正则必定单调增loss。
  • train/val混读。
  • 每次同时改多个超参无法定位。

继续深挖

  • 梯度爆炸与学习率过大如何分?
  • total loss与data loss如何并排记?
  • 小batch过拟合失败意味着什么?
✓已复制微信号!