AI 生成的 PyTorch 代码三大隐形 bug,不报错却悄悄拖差成绩
lmoroney · x · 2026-10-10
Laurence Moroney 指出,机器学习代码最危险的 bug 往往不会抛出错误,因此即使是 AI 生成的代码也很难肉眼发现问题。他列出三个 PyTorch 训练循环中的高频错误:
- 忘记调用 zerograd(),导致梯度跨 batch 不断累积
- 评估时没切到 model.eval(),dropout 仍然生效、batch norm 继续使用 batch 统计量
- 在 nn.CrossEntropyLoss 之前多做了一次 softmax,而该损失函数本来就期望原始 logits
这三个 bug 都能让程序正常跑完,只是安静地给出更差的结果。他建议无论代码是人写的还是模型写的,都加一个 sanity check:先在一小撮样本上训练到 loss 接近零,如果模型连 10 个样本都记不住,说明循环里一定有地方坏了。
「编程与Agent」频道最新
- Garry Tan 力挺 Aside Browser:让 Agent 真正用好网页的解法 — garrytan · 2026-10-23
- 1Password 推出 Agent 专用登录方案,AI 可代登录却不接触密码 — AndrewSchmidtFC · 2026-10-23
- MCP 服务器 30 天后暗藏窃取 SSH 密钥指令,作者开源 mcp-guard 防变节 — ErgoniaWorks · 2026-10-23
- 实测:不在 AGENTS.md 里写明的 MCP 工具,编码 Agent 不会用 — colinmcnamara · 2026-10-23
- 用开源模型+Claude 把一段网球视频变成世界级教练 — tweetsatpreet · 2026-10-23
- 132 个免费开源 AI Agent 与 RAG 项目合集,星标 1.65 万 — Arindam_1729 · 2026-10-23