tf.compat.v1.expand_dims
Возвращает тензор с осью длиной 1, вставленной по индексу axis. (устаревшие аргументы)
tf.compat.v1.expand_dims(
input, axis=None, name=None, dim=None
)
Учитывая тензор input, данная операция вставляет измерение длиной 1 в измерение с индексом axis в форме input. Индекс измерения следует правилам индексирования Python: он нулевой, а отрицательный индекс подсчитывается от конца.
Эта операция полезна для:
- Добавления внешнего измерения «пакета» к одному элементу.
- Выравнивания осей для трансляции.
- Добавления внутреннего измерения длины вектора к тензору скаляров.
Например:
Если у вас есть одно изображение с формой [height, width, channels]:
image = tf.zeros([10,10,3])
Вы можете добавить внешнюю batch ось, передав axis=0:
tf.expand_dims(image, axis=0).shape.as_list() [1, 10, 10, 3]
Новое местоположение оси соответствует правилам индексирования Python list.insert(axis, 1):
tf.expand_dims(image, axis=1).shape.as_list() [10, 1, 10, 3]
Согласно стандартным правилам индексирования Python, отрицательный axis отсчитывается от конца, поэтому axis=-1 добавляет самое внутреннее измерение:
tf.expand_dims(image, -1).shape.as_list() [10, 10, 3, 1]
Эта операция требует, чтобы axis был допустимым индексом для input.shape, следуя правилам индексирования Python:
-1-tf.rank(input) <= axis <= tf.rank(input)
Эта операция связана с:
-
tf.squeeze, которая удаляет измерения размера 1. -
tf.reshape, которая предоставляет более гибкие возможности изменения формы. -
tf.sparse.expand_dims, которая предоставляет эту функциональность дляtf.SparseTensor
| Аргументы | |
|---|---|
input | A Tensor. |
axis | 0-D (скаляр). Указывает индекс измерения, в котором необходимо расширить форму input. Должно быть в диапазоне [-rank(input) - 1, rank(input)]. |
name | Имя выходного Tensor (необязательно). |
dim | 0-D (скаляр). Эквивалентно axis, будет устаревать. |
| Возвращаемое значение | |
|---|---|
A Tensor с теми же данными, что и input, но его форма имеет дополнительное измерение размера 1. |
| Исключения | |
|---|---|
ValueError | если указаны или оба, или ни один из dim и axis . |
© 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.4/api_docs/python/tf/compat/v1/expand_dims