首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Pytorch相当于Numpy的logical_and和kin?

Pytorch相当于Numpy的logical_and和kin?
EN

Stack Overflow用户
提问于 2019-02-08 18:41:41
回答 2查看 9.2K关注 0票数 5

Pytorch是否有与Numpy的元素级logical operators (logical_andlogical_orlogical_notlogical_xor)等效的and?在使用CPU时,对Pytorch张量调用Numpy函数似乎工作得足够好,甚至可以生成Pytorch张量作为输出。我问主要是因为我假设如果pytorch计算在GPU中运行,这将不会很好地工作。

我在Pytorch's documentation index中查看了所有包含字符串" and“的函数,似乎没有一个相关的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-02-08 19:11:24

更新:使用Pytorch1.2的,Pytorch引入了torch.bool数据类型,可以使用

代码语言:javascript
复制
>>> 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上的逻辑操作。您可以使用&|^~运算符进行逻辑运算,如下所示:

代码语言:javascript
复制
>>> 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)
票数 13
EN

Stack Overflow用户

发布于 2019-09-28 16:37:46

逻辑与:

代码语言:javascript
复制
a * b

逻辑或:

代码语言:javascript
复制
a + b
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54590661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档