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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM