Torch 张量将负数设置为零

Sha*_*aji 7 lua torch

x=torch.Tensor({1,-1,3,-8})

如何进行转换x,使得 x 中的所有负值都替换为零,而不使用循环,使得张量必须看起来像

th>x 1 0 3 0

Dua*_*ane 7

Pytorch 支持运算符索引

a = torch.Tensor([1,0,-1])
a[a < 0] = 0
a
Run Code Online (Sandbox Code Playgroud)

张量([1., 0., 0.])


Szy*_*zke 6

实际上,这个操作相当于应用ReLU非线性激活。

只要这样做就可以了

output = torch.nn.functional.relu(a)
Run Code Online (Sandbox Code Playgroud)

您还可以就地执行此操作以加快计算速度:

torch.nn.functional.relu(a, inplace=True)
Run Code Online (Sandbox Code Playgroud)


小智 5

Pytorch 负责这里的广播:

x = torch.max(x,torch.tensor([0.]))
Run Code Online (Sandbox Code Playgroud)