tf.gather_nd 用法

tf.gather_nd的函数原型是:

def gather_nd(params, indices, name=None)

根据定义, 其主要功能是根据indices描述的索引,提取params上的元素, 重新构建一个tensor

在谈论该函数之前,我们先来看一下 索引的概念,

在一维数组中,元素的索引即该元素在数组中序号,通常序号从0开始标记

如数组 ary=[1,2,3,4];

元素2的索引 为 1, 元素的引用可表示为 [1]

元素3的索引为 2,  元素的引用可表示为 [2]

 

那么二维数组呢? 类似地

对于二维 ary=[ [1,2], [3,4] ]

 

元素 [1,2]  在一维中的索引为 [0],   元素 1 的索引 则表示为 [0,0], 元素 2 的索引 则表示为 [0,1], 

因此 gather_nd 实现了根据指定的 参数 indices 来提取params 的元素重建出一个tensor,

 

还是以上面的二维数组为例

[0,0] 表示 的是 1,

[0,1] 表示的是 2

 

当indices 为  [[0,0],[0,1]] 时, 该函数的输出则为  [1,2]

即 indices 中 表示索引的 部分 被提取到的值替换

那么当indices 为[ [ [ [  [1,1] ] ] ] ] 时 函数输出是什么呢 ? 用元素 替换掉 表示索引的那一部分, 即可得到 [ [ [ [ 4  ] ] ] ]

 

 

 

 

 

 

 

 

 

  • 28
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值