I need to calculate variances of some numbers that are pretty small and pretty close together, i.e. the variances are pretty small. Unfortunately, using
torch.var( ), I get zeroes for the variance, when I’m not supposed to get zeroes, but the problem occurs only when using the
EDIT: I managed to resolve my actual problem by using DoubleTensors instead of FloatTensors while I was composing this question. However, I thought it might still be worth checking in, why my problem occurs when using the
dim=... but not when leaving it out. Why is that so?
See this example:
import torch my_array = torch.Tensor([-0.008015724,-0.008016450]) torch.var(my_array, dim=0) #Output: 0 torch.var(my_array) #Output: 2.6385144069607236e-13 torch.var(my_array.double(), dim=0) #Output: 2.6385144069607236e-13
Many thanks to anyone who can help me understand this better.