Open In App

Python – tensorflow.gather_nd()

Last Updated : 10 Jul, 2020
Improve
Improve
Like Article
Like
Save
Share
Report

TensorFlow is open-source Python library designed by Google to develop Machine Learning models and deep learning  neural networks. 

gather_nd() is used to gather the slice from input tensor based on the indices provided.

Syntax: tensorflow.gather_nd( params, indices, batch_dims, name)

Parameters:

  • params: It is a Tensor with rank greater than or equal to axis+1.
  • indices: It is a Tensor of dtype int32 or int64.
  • batch_dims: It is an integer representing the number o batch dimension. It must be less than rank(indices).
  • name: It defines the name for the operation.

Returns:

It returns a Tensor having same dtype as param.

Example 1:

Python3




# Importing the library
import tensorflow as tf
  
# Initializing the input
data = tf.constant([[1, 2], [3, 4], [5, 6]])
indices = tf.constant([[1], [0], [1]])
  
# Printing the input
print('data: ',data)
print('indices: ',indices)
  
# Calculating result
res = tf.gather_nd(data, indices)
  
# Printing the result
print('res: ',res)


Output:

data:  tf.Tensor(
[[1 2]
 [3 4]
 [5 6]], shape=(3, 2), dtype=int32)
indices:  tf.Tensor(
[[1]
 [0]
 [1]], shape=(3, 1), dtype=int32)
res:  tf.Tensor(
[[3 4]
 [1 2]
 [3 4]], shape=(3, 2), dtype=int32)

Example 2:

Python3




# Importing the library
import tensorflow as tf
  
# Initializing the input
data = tf.constant([[1, 2, 3], [3, 4, 5], [5, 6, 7]])
indices = tf.constant([[1, 0], [0, 2], [1, 2]])
  
# Printing the input
print('data: ',data)
print('indices: ',indices)
  
# Calculating result
res = tf.gather_nd(data, indices)
  
# Printing the result
print('res: ',res)


Output:

data:  tf.Tensor(
[[1 2 3]
 [3 4 5]
 [5 6 7]], shape=(3, 3), dtype=int32)
indices:  tf.Tensor(
[[1 0]
 [0 2]
 [1 2]], shape=(3, 2), dtype=int32)
res:  tf.Tensor([3 3 5], shape=(3,), dtype=int32)




Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads