Функция expand_dims
Функция expand_dims добавляет новую ось
в тензор. Первым параметром функция принимает
исходный тензор. Вторым параметром передается
позиция axis, в которую нужно вставить
новую ось. Новая ось всегда имеет размер 1,
а общий ранг тензора увеличивается на единицу.
Синтаксис
tf.expand_dims(input, axis, [name])
Пример
Давайте добавим новую ось в одномерный тензор
в позицию 0:
import tensorflow as tf
t = tf.constant([1, 2, 3, 4, 5])
res = tf.expand_dims(t, axis=0)
print(res)
Результат выполнения кода:
tf.Tensor([[1 2 3 4 5]], shape=(1, 5), dtype=int32)
Пример
Давайте добавим новую ось в одномерный тензор
в позицию 1:
Результат выполнения кода:
tf.Tensor(
[[1]
[2]
[3]
[4]
[5]], shape=(5, 1), dtype=int32)
Пример
Давайте добавим новую ось в двумерный тензор
в позицию 0:
import tensorflow as tf
t = tf.constant([[1, 2, 3], [4, 5, 6]])
res = tf.expand_dims(t, axis=0)
print(res)
Результат выполнения кода:
tf.Tensor(
[[[1 2 3]
[4 5 6]]], shape=(1, 2, 3), dtype=int32)
Пример
Давайте добавим новую ось в двумерный тензор
в позицию 1:
import tensorflow as tf
t = tf.constant([[1, 2, 3], [4, 5, 6]])
res = tf.expand_dims(t, axis=1)
print(res)
Результат выполнения кода:
tf.Tensor(
[[[1 2 3]]
[[4 5 6]]], shape=(2, 1, 3), dtype=int32)
Пример
Давайте добавим новую ось в двумерный тензор
в позицию -1, используя отрицательный индекс:
import tensorflow as tf
t = tf.constant([[1, 2, 3], [4, 5, 6]])
res = tf.expand_dims(t, axis=-1)
print(res)
Результат выполнения кода:
tf.Tensor(
[[[1]
[2]
[3]]
[[4]
[5]
[6]]], shape=(2, 3, 1), dtype=int32)