Применение перестановки вдоль одной оси в TensorFlow

#python #tensorflow

#python #tensorflow

Вопрос:

Как переставить «размеры» вдоль одной оси тензора?

Что-то похожее на tf.transpose , но на уровне «измерений» вдоль оси, а не на уровне осей.

Чтобы переставлять их случайным образом (вдоль первой оси), есть это tf.random.shuffle , и чтобы сдвинуть их, есть tf.roll . Но я не могу найти более общую функцию, которая применяла бы любую заданную перестановку.

Ответ №1:

tf.gather может использоваться с этой целью. На самом деле, это еще более общее, поскольку индексы, которые он принимает в качестве одного из своих входных данных, не обязательно должны представлять перестановку.