Pytorch是否有与Numpy的元素级logical operators (logical_and、logical_or、logical_not和logical_xor)等效的and?在使用CPU时,对Pytorch张量调用Numpy函数似乎工作得足够好,甚至可以生成Pytorch张量作为输出。我问主要是因为我假设如果pytorch计算在GPU中运行,这将不会很好地工作。
我在Pytorch's documentation index中查看了所有包含字符串" and“的函数,似乎没有一个相关的。
发布于 2019-02-08 19:11:24
更新:使用Pytorch1.2的,Pytorch引入了torch.bool数据类型,可以使用
>>> a = torch.BoolTensor([False, True, True, False]) # or pass [0, 1, 1, 0]
>>> b = torch.BoolTensor([True, True, False, False])
>>> a & b # logical and
tensor([False, True, False, False])PyTorch支持ByteTensor上的逻辑操作。您可以使用&、|、^、~运算符进行逻辑运算,如下所示:
>>> a = torch.ByteTensor([0, 1, 1, 0])
>>> b = torch.ByteTensor([1, 1, 0, 0])
>>> a & b # logical and
tensor([0, 1, 0, 0], dtype=torch.uint8)
>>> a | b # logical or
tensor([1, 1, 1, 0], dtype=torch.uint8)
>>> a ^ b # logical xor
tensor([1, 0, 1, 0], dtype=torch.uint8)
>>> ~a # logical not
tensor([1, 0, 0, 1], dtype=torch.uint8)发布于 2019-09-28 16:37:46
逻辑与:
a * b逻辑或:
a + bhttps://stackoverflow.com/questions/54590661
复制相似问题