我正在尝试对张量执行逻辑元素操作,但似乎 "and" 关键字执行逻辑or,而 "or" 关键字执行逻辑and:
a = torch.zeros(3)
a[1] = 1 -- a will be [1,0,0]
b = torch.ones(3)
b[3] = 0 -- b will be [1,1,0]
c = torch.eq(a,1) and torch.eq(b,1)
d = torch.eq(a,1) or torch.eq(b,1)
我期待 c 成为,因为只有在 a和b 都等于[1,0,0]
1 的位置才有 1 才有意义。我也期待 d 成为,因为这些是 a或b 等于 1的位置。令我惊讶的是,结果完全相反!有什么解释吗?[1,1,0]