For a 1D tensor, tf.gather(values, tf.argsort(values)) is equivalent to
tf.sort(values). For higher dimensions, the output has the same shape as
values, but along the given axis, values represent the index of the sorted
element in that slice of the tensor at the given position.
import tensorflow as tf
a = [1, 10, 26.9, 2.8, 166.32, 62.3]
b = tf.argsort(a,axis=-1,direction='ASCENDING',stable=False,name=None)
c = tf.keras.backend.eval(b)
# Here, c = [0 3 1 2 5 4]
1-D or higher numeric Tensor.
The axis along which to sort. The default is -1, which sorts the last
The direction in which to sort the values ('ASCENDING' or
If True, equal elements in the original tensor will not be
re-ordered in the returned order. Unstable sort is not yet implemented,
but will eventually be the default for performance reasons. If you require
a stable order, pass stable=True for forwards compatibility.
Optional name for the operation.
An int32 Tensor with the same shape as values. The indices that would
sort each slice of the given values along the given axis.
If axis is not a constant scalar, or the direction is invalid.