PyTorch除以0时,将结果值设置为0
在Pytorch中,当值除以0时,将结果值替换为0,因为它将输出NaN。举个例子,PyTorch除以0时,将结果值设置为0,pytorch,Pytorch,在Pytorch中,当值除以0时,将结果值替换为0,因为它将输出NaN。举个例子, a = th.from_numpy(np.array([ [1, 0], [0, 1], [1, 1]])) b = th.zeros_like(a) b[0, :] = 2 a = a / b 我该怎么做呢?您可以使用以下方法将除法后获得的NaN值替换为0- 创建一个BYTENTensor,指示NaN的位置 将上述张量指示的NaN值替换为0 注意这也将替换除法前引入的任何NaN值 a != a >&g
a = th.from_numpy(np.array([ [1, 0], [0, 1], [1, 1]]))
b = th.zeros_like(a)
b[0, :] = 2
a = a / b
我该怎么做呢?您可以使用以下方法将除法后获得的NaN值替换为0-
a != a
>> tensor([[False, False],
[ True, False],
[False, False]])
a = a / b
>> tensor([[0.5000, 0.0000],
[ nan, inf],
[ inf, inf]])
a[a != a] = 0
>> tensor([[0.5000, 0.0000],
[0.0000, inf],
[ inf, inf]])