网络编程
位置:首页>> 网络编程>> Python编程>> Pytorch训练过程出现nan的解决方式

Pytorch训练过程出现nan的解决方式

作者:咆哮的阿杰  发布时间:2021-04-21 08:12:08 

标签:Pytorch,训练,nan

今天使用shuffleNetV2+,使用自己的数据集,遇到了loss是nan的情况,而且top1精确率出现断崖式上升,这显示是不正常的。

Pytorch训练过程出现nan的解决方式

在网上查了下解决方案。我的问题是出在学习率上了。

我自己做的样本数据集比较小,就三类,每类大概三百多张,初始学习率是0.5。后来设置为0.1就解决了。

按照解决方案上写的。出现nan的情况还有以下几种:

学习率太大,但是样本数据集又很小。(我的情况)

自定义的loss除以了一个很小的数字,小到接近0。

数据不干净,数据本身就有nan,可以用numpy.isnan检查。

target,即label是大于等于0的。从1到类别数目-1变化。

来源:https://blog.csdn.net/qq_34914551/article/details/99992341

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com