最近在用PyTorch复现一个Transformer做文本分类,模型不大,训练集也就几万条。前几个epoch loss正常下降,但到第5个epoch左右loss突然变成NaN,之后就一直NaN了。试过调小学习率(从1e-3降到1e-5)、加梯度裁剪(clip_grad_norm_设为1.0)、检查数据里有没有空值,都没什么用。网络里用了LayerNorm和GELU,优化器是AdamW,batch size=32。有没有人遇到过类似情况?一般这种后期突然NaN还可能是什么原因?感觉快被折磨疯了,求指点。