最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
解析Pytorch中torch.gather()函数代码示例
时间:2022-06-25 01:35:28 编辑:袖梨 来源:一聚教程网
本篇文章小编给大家分享一下解析Pytorch中torch.gather()函数代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
参数说明
以官方说明为例,gather()函数需要三个参数,输入input,维度dim,以及索引index
input必须为Tensor类型
dim为int类型,代表从哪个维度进行索引
index为LongTensor类型
举例说明
input=torch.tensor([[1,2,3],[4,5,6]]) #作为输入 index1=torch.tensor([[0,1,1],[0,1,1]]) #作为索引矩阵 # dim=0时,按列进行索引 print (torch.gather(input,dim=0,index=index1)) # dim=1时,按行进行索引 print (torch.gather(input,dim=1,index=index1))
结果如下图所示:
# 按列进行索引 tensor([[1, 5, 6], [4, 2, 6]]) # 按行进行索引 tensor([[1, 2, 2], [5, 4, 5]])
画图说明
官方文档
def gather(self, input, dim, index, *args, **kwargs): For a 3-D tensor the output is specified by:: out[i][j][k] = input[index[i][j][k]][j][k] # if dim == 0 out[i][j][k] = input[i][index[i][j][k]][k] # if dim == 1 out[i][j][k] = input[i][j][index[i][j][k]] # if dim == 2 Args: input (Tensor): the source tensor dim (int): the axis along which to index index (LongTensor): the indices of elements to gather Example:: >>> t = torch.tensor([[1, 2], [3, 4]]) >>> torch.gather(t, 1, torch.tensor([[0, 0], [1, 0]])) tensor([[ 1, 1], [ 4, 3]])
相关文章
- 明末渊虚之羽黯淡红羽有什么用 黯淡红羽用途分享 08-04
- win11怎么投影到此电脑 win11系统投影到此电脑的方法 08-04
- 美女请别影响我成仙怎么达成英雄无悔 英雄无悔结局攻略 08-04
- 《QQ》附近小助手通知关闭方法 08-04
- win11鲁大师任务栏标尺如何关闭? 08-04
- 《QQ看点》消息通知设置关闭方法 08-04