pytorch 损失出现NaN

损失出现NaN可能有三种情况:

  • 计算过程中出现除数为0的情况,这种情况可以进行平滑处理,如果是计算书写错误就相应更改即可;
  • 计算过程中带入空数据,如一个空张量,后续计算会出现NaN,而且这时梯度可能会正常更新,直到多次累积后出现爆炸的情况;
  • 数值精度溢出,如fp16精度不够表示的数值,溢出后就表示为NaN.
posted @ 2022-06-07 16:46  巴蜀秀才  阅读(947)  评论(0编辑  收藏  举报