在训练分类网络的时候经常使用NLLLoss
作为损失函数。并且对于网络的输出有out=F.log_softmax(x)
。由于刚开始训练不太稳定。很容易出现loss=nan
。这是由于在计算log_softmax()
时容易出现log0
的情况:
解决方法:
out=F.log_softmax(x+1e-10)
给x添加一个很小的数。
pytorch训练损失为NAN(NLLLoss)
最新推荐文章于 2023-07-04 09:15:00 发布
在训练分类网络的时候经常使用NLLLoss
作为损失函数。并且对于网络的输出有out=F.log_softmax(x)
。由于刚开始训练不太稳定。很容易出现loss=nan
。这是由于在计算log_softmax()
时容易出现log0
的情况:
解决方法:
out=F.log_softmax(x+1e-10)
给x添加一个很小的数。