mask
主要用来根据一定条件,筛选出一部分值来。
基本案例
import torch
x = torch.randn(3, 4)
mask_1 = x.ge(0.5) # 大于0.5的为True,小于0.5的值为False
mask_2 = torch.BoolTensor(
[
[True, False, True, False],
[False, True, False, True],
[True, False, True, False]
])
print(torch.masked_select(x, mask_1))
# 得到:tensor([1.1518, 1.0498, 1.4969, 1.0021, 0.8119])
print(torch.masked_select(x, mask_2))
# 得到:tensor([0.2833, 1.1518, 1.4969, 1.0021, 0.8119, 0.2121])