最近在复现一个图像分割的模型,用PyTorch写的时候训练到第3个epoch左右loss突然变成NaN了,梯度也炸了。我检查了学习率、数据归一化都没啥问题,同样的网络结构和超参换成TensorFlow跑就稳稳的,loss正常下降。这就让我很困惑了,难道PyTorch在某些算子上默认行为跟TF不一样?比如除零保护或者梯度裁剪的默认值?有没有人遇到过类似情况,一般从哪入手排查啊?感觉自己对框架底层还是理解太浅了……