如何解决loss NAN的问题

Posted zymei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何解决loss NAN的问题相关的知识,希望对你有一定的参考价值。

问题

技术图片

  如上图所示,第二次迭代时出现NAN值

定位loss NAN的方法

  使用tensorflow的代码调试模块tfdbg,可以看到运行tensorflow graph时的内部结构体和状态,方便排查变量出现NAN、inf的情况。tfdbg的官方文档介绍 https://www.tensorflow.org/versions/master/how_tos/debugger/ 

  使用过滤器可以帮助查找异常值,命令:run -f has_inf_or_nan。

  发现出现NAN or inf的tensor有点多。。。。

技术图片

  点第一个打印出来的结果如下图,发现每个值都是NAN,初步判断可能是反向传播的时候梯度消失了

技术图片

未完待续

以上是关于如何解决loss NAN的问题的主要内容,如果未能解决你的问题,请参考以下文章

loss出现Nan的解决办法(梯度爆炸)

keras训练cnn模型时loss为nan

模型在训练时,经过某个步骤后显示为 loss = nan

机器学习技巧-训练过程中,loss参数出现NAN怎么解决?解决方案汇总?

[深度学习][pytorch][原创]crnn在高版本pytorch上训练loss为nan解决办法

如何解决神经网络训练时loss不下降的问题