目录
nan判断方法:
if torch.any(torch.isnan(a)):
也可以参考我的另一篇博客:
pytorch nan问题_python torch isnan any-CSDN博客
卷积后,值为-inf,在后面的bn层中出现nan。
可以加个x=torch.clip(x,-1e5,1e5)
如果float16的话,会越界,可以改为:
可以加个x=torch.clip(x,-1e4,1e4)
本文记录了在PyTorch中遇到的NaN值问题及其解决方案,包括卷积层后数值变为-inf导致BN层出现NaN,以及在除以零时引发的异常。提出可以通过使用torch.clip限制值范围,以及在训练中使用nn.LogSoftmax代替softmax+log来提高数值稳定性。
目录
if torch.any(torch.isnan(a)):
也可以参考我的另一篇博客:
pytorch nan问题_python torch isnan any-CSDN博客
可以加个x=torch.clip(x,-1e5,1e5)
如果float16的话,会越界,可以改为:
可以加个x=torch.clip(x,-1e4,1e4)

被折叠的 条评论
为什么被折叠?