解决:模型训练时loss出现nan

问题描述

模型训练时loss出现nan

解决方案

  1. 采用amp 导致溢出出现nan
  2. 数据里有nan
  3. 特定类loss
  4. norm 可能出现sigma=0?

调试

比如写代码时碰到一个地方抛出了exception,可以直接打断点看为何报错了。理论上对于出现nan的,也可以设置条件断点来看当时的情况?判断是weights的问题,还是数据的问题?而且框架应该会提供更加完善的sdk,例如tf board这种。

字节兄:做算法的喜欢把软件当成黑盒来用,换个参数调包可能就好了,做工程的喜欢各种抽象设计,一个小功能要排期两周。

猜你喜欢

转载自blog.csdn.net/qq_35812205/article/details/125419194
今日推荐