Spec-Zone.ru › TensorFlow 2.3

tf.shape

Просмотреть исходный код на GitHub

Возвращает форму тензора.

tf.shape(
    input, out_type=tf.dtypes.int32, name=None
)

См. также tf.size, tf.rank.

tf.shape возвращает 1-мерный целочисленный тензор, представляющий форму input.

Например:

t = tf.constant([[[1, 1, 1], [2, 2, 2]], [[3, 3, 3], [4, 4, 4]]])
tf.shape(t)
<tf.Tensor: shape=(3,), dtype=int32, numpy=array([2, 2, 3], dtype=int32)>
Примечание: При использовании символических тензоров, например, при использовании API Keras, tf.shape() вернёт форму символического тензора.
a = tf.keras.layers.Input((None, 10))
tf.shape(a)
<tf.Tensor ... shape=(3,) dtype=int32>

В этих случаях использование tf.Tensor.shape вернёт более информативные результаты.

a.shape
TensorShape([None, None, 10])

(Первое None представляет ещё неизвестный размер пакет.)

tf.shape и Tensor.shape должны быть идентичны в режиме eager. Внутри tf.function или в контексте compat.v1 не все размеры могут быть известны до момента выполнения. Поэтому при определении пользовательских слоёв и моделей для режима графа предпочтительнее использовать динамическую tf.shape(x) вместо статической x.shape.

Аргументы
input A Tensor или SparseTensor.
out_type (Необязательно) Указанный тип выходных данных операции (int32 или int64). По умолчанию tf.int32.
name Имя операции (необязательно).
Возвращает
A Tensor типа out_type.

© 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/shape

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API