Tensor-判断tensor中是否存在NAN, inf
在用torch搭建深度学习模型时,很容易在数据中存在inf与nan的情况,对应的数据类型分别时torch.inf与torch.nan。
大多数情况下,产生nan数据的原因基本上是出现了分母为0的情况,所以需要检查张量计算过程中是否有除法运算,比如softmax就有除法。
判断一个张量中是否有nan值:
torch.isnan(tensor).any() # 有一个True(非NAN)则都为 True
torch.isnan(tensor).all() # 有一个 NAN 则为 False
与之类似,用tensor.isinf()方法也可以查看有没有无穷数在张量里。
torch.isinf(tensor).any()
torch.isinf(tensor).all()
————————————————
原文链接:https://blog.csdn.net/weixin_43483381/article/details/121864858