(256, 1)张量计算torch.var全为nan
时间: 2023-08-18 14:10:05 浏览: 175
python torch.utils.data.DataLoader使用方法
5星 · 资源好评率100%
出现这种情况可能是因为张量中的值存在无穷大或者非数值(NaN)的情况,导致计算方差时结果为NaN。你可以尝试先排除这些值,再进行方差的计算。可以使用以下代码进行排除:
```
import torch
tensor = tensor[torch.isfinite(tensor)]
var = torch.var(tensor)
```
其中,`torch.isfinite()`函数可以用来判断张量中的元素是否为有限数值,返回一个布尔类型的张量。然后,我们通过对原始张量进行布尔索引,得到仅包含有限数值的新张量,再对新张量进行方差的计算。这样可以避免出现NaN的情况。
阅读全文