Склейка тензоров в TensorFlow
Функция concat
соединяет части по уже существующей
оси тензора. У одномерного ряда
есть только ось 0, и склейка
даёт один более длинный ряд.
Сначала два ряда по три числа
соединим по оси 0:
import tensorflow as tf
part_a = tf.constant([1, 2, 3])
part_b = tf.constant([4, 5, 6])
row = tf.concat([part_a, part_b], axis=0)
print(row)
# выведет tf.Tensor([1 2 3 4 5 6], shape=(6,), dtype=int32)
У таблицы ось 0 идёт по
строкам, ось 1 по столбцам.
Склеим две таблицы (2, 2)
сначала по строкам, затем по столбцам:
import tensorflow as tf
m1 = tf.constant([[1, 2], [3, 4]])
m2 = tf.constant([[5, 6], [7, 8]])
down = tf.concat([m1, m2], axis=0)
print(down)
# выведет tf.Tensor([[1 2] [3 4] [5 6] [7 8]], shape=(4, 2), dtype=int32)
across = tf.concat([m1, m2], axis=1)
print(across)
# выведет tf.Tensor([[1 2 5 6] [3 4 7 8]], shape=(2, 4), dtype=int32)
Соберите два ряда цен [1, 1]
и [2, 2], соедините их
в один длинный ряд и выведите
результат.
Соберите две таблицы оценок из одного
столбца, [[0], [1]] и
[[2], [3]], поставьте их
друг под другом и выведите форму
результата.
Соберите две таблицы из одной строки,
[[10, 20]] и [[30, 40]],
поставьте их слева направо и выведите
получившуюся строку.