第44个方法
torch.take(input, index)->Tensor
返回一个新的张量,其中的元素是输入元素在给定的索引处,将输入张量视为视为一维张量。结果tensor的形状与索引相同。
参数介绍:
input
:输入tensor。indices
:索引
接下来看用法:
>>> src = torch.tensor([[4, 3, 5],
[6, 7, 8]])
>>> torch.take(src, torch.tensor([0, 2, 5]))
tensor([ 4, 5, 8])
结果很好理解,首先将input(这里为src)中的元素按照一维展开,然后在里面将我们index中的元素取出来形成一个新的tensor,当然我们的index可以不只是一维tensor,可以是多维tensor,如下所示:
注意: 返回的tensor不是视图,和原tensor不共享内存: