无法在new pytorch中将张量与标量进行比较

2024-05-14 15:55:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用Pythorc0.4.0的自编译版本有一段时间了,因此我的代码对多维张量有以下几行:

myTensor3 = torch.arange(torch.numel(myTensor0) # this is a 1 dimensional Tensor
outTensor = myTensor3[(myTensor1 == 1) & (myTensor2 != 1)] # myTensor1 and myTensor2 are multidimensional

每当我尝试切换到Pythorch的另一个(较新)版本时,上面的行会抛出以下错误:

^{pr2}$

我假设在较新版本的pytorch中,比较操作返回的索引数组的维度为1,而之前它的大小与myTensor3相同。 在新版本的pytorch中,我如何才能回到旧的行为呢?在

编辑: 一个简单的方法是将myTensor1和2线性化:

outTensor = myTensor3[(myTensor1.view(-1) == 1) & (myTensor2.view(-1) != 1)]

出于某种奇怪的原因,这已经在自编译的pytorch版本中起作用了


Tags: 代码版本viewistorchpytorchthisdimensional

热门问题