我使用的是pytorch而我的变量是
x = [torch.FloatTensor of size 1x3x32x32]
mean = Variable containing:
1.00000e-02 *
2.0518
[torch.FloatTensor of size 1]
我想要做的是通过执行
从x中减去标量均值x = x - mean
但是,我收到此错误:
RuntimeError: inconsistent tensor size at /py/conda-
bld/pytorch_1493670682084/work/torch/lib/TH/generic/THTensorMath.c:831
我做错了什么? 非常感谢
答案 0 :(得分:2)
如果mean是真正的标量,那么你所尝试的只会起作用,即float()
(在这种情况下)而不是torch.FloatTensor of size 1
。您可以从mean
中提取真正的标量,也可以将mean
展开为x
的大小,以便执行减法操作。
要从float
中提取mean
,请执行:
x = x - mean[0]
要将mean
扩展为x
的大小,请执行:
x = x - mean.expand_as(x)
请注意,这两种方法都会减去张量中每个元素的均值。