tf.compat.v1.transpose
Транспонирует a.
tf.compat.v1.transpose(
a, perm=None, name='transpose', conjugate=False
)
Меняет порядок измерений в соответствии с perm.
Измерение i возвращаемого тензора будет соответствовать измерению входного тензора perm[i]. Если perm не задано, оно устанавливается в (n-1...0), где n — ранг входного тензора. Таким образом, по умолчанию эта операция выполняет обычную транспонирование матрицы для 2-мерных входных тензоров. Если conjugate равно True и a.dtype равно либо complex64 либо complex128, то значения a сопрягаются и транспонируются.
Например:
x = tf.constant([[1, 2, 3], [4, 5, 6]])
tf.transpose(x) # [[1, 4]
# [2, 5]
# [3, 6]]
# Equivalently
tf.transpose(x, perm=[1, 0]) # [[1, 4]
# [2, 5]
# [3, 6]]
# If x is complex, setting conjugate=True gives the conjugate transpose
x = tf.constant([[1 + 1j, 2 + 2j, 3 + 3j],
[4 + 4j, 5 + 5j, 6 + 6j]])
tf.transpose(x, conjugate=True) # [[1 - 1j, 4 - 4j],
# [2 - 2j, 5 - 5j],
# [3 - 3j, 6 - 6j]]
# 'perm' is more useful for n-dimensional tensors, for n > 2
x = tf.constant([[[ 1, 2, 3],
[ 4, 5, 6]],
[[ 7, 8, 9],
[10, 11, 12]]])
# Take the transpose of the matrices in dimension-0
# (this common operation has a shorthand `linalg.matrix_transpose`)
tf.transpose(x, perm=[0, 2, 1]) # [[[1, 4],
# [2, 5],
# [3, 6]],
# [[7, 10],
# [8, 11],
# [9, 12]]]
| Аргументы | |
|---|---|
a | Tensor. |
perm | Перестановки измерений a. |
name | Название операции (необязательно). |
conjugate | Необязательный bool. Установка его в True математически эквивалентна tf.math.conj(tf.transpose(input)). |
| Возвращаемое значение | |
|---|---|
Транспонированный Tensor. |
Совместимость с Numpy
В numpy транспонирования — это эффективные операции с постоянным временем памяти, так как они просто возвращают новый вид тех же данных с изменёнными strides.
TensorFlow не поддерживает шаги, поэтому transpose возвращает новый тензор с переставленными элементами.
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.3/api_docs/python/tf/compat/v1/transpose