拿下技术面上传简历

你在 8 卡上训练一个带 BatchNorm 的 CNN,基线是 batch size=256、SGD momentum=0.9、lr=0.1,训练 90 epoch。现在为了提吞吐把单卡 batch 从 32 提到 512(总 batch=4096),epoch 数保持不变。请给出你会怎么改 lr 和 momentum,warmup 设多少步,并说明每一步的判断依据。如果按你的方案训到第 5 个 epoch 出现 loss spike,你的排查顺序是什么?

机器学习基础优化算法3-5 年知识点 1 个

面试官在考什么

考察对大 batch 训练中 LR 缩放规则、warmup 与 momentum 交互的工程判断,而不是背公式。

SGD/Momentum

回答框架 · 前两步

  1. 大 batch 下按线性缩放:lr 从 0.1 提到 0.8 左右(甚至更高,视 warmup 和模型而定),不是 sqrt 缩放。
  2. warmup 必须加:常用 500~2000 step 或总 step 的 3%~5%,线性升温;总 step 变成 1/16 后,warmup 的绝对步数不应跟着缩 1/16。

还有 3 条答案要点、 3 层追问、 5 个常见坑, 以及针对你简历的追问路径,在定制报告里。

上传简历,生成我的题库先看示例报告

延伸阅读

想看这个方向的整体准备路线? 进入「机器学习基础」方向页

同一能力域的其他题