Вытягивание в ряд в TensorFlow
Табличный тензор можно вытянуть
в один ряд: все ячейки идут
подряд в одномерном тензоре. Для этого
задают форму с одной осью, а её длину
обозначают как -1 через функцию
reshape.
Создадим таблицу из двух строк и трёх столбцов и выведем ряд, полученный из неё:
import tensorflow as tf
table = tf.constant([[1, 2, 3], [4, 5, 6]])
row = tf.reshape(table, [-1])
print(row)
Форма результата всегда одномерная. Сравним форму таблицы и форму ряда:
import tensorflow as tf
table = tf.constant([[1, 2, 3], [4, 5, 6]])
row = tf.reshape(table, [-1])
print(table.shape)
print(row.shape)
Число элементов не меняется: в ряду столько же значений, сколько было ячеек в таблице:
import tensorflow as tf
grid = tf.constant([[10, 20], [30, 40], [50, 60]])
line = tf.reshape(grid, [-1])
print(tf.size(grid))
print(tf.size(line))
Соберите таблицу [[1, 2], [3, 4]].
Получите из неё одномерный ряд
и выведите его.
Соберите таблицу из двух строк
и двух столбцов из чисел 0.
Вытяните её в ряд и выведите форму
результата.
Соберите таблицу из строк 5, 6, 7
и 8, 9, 10.
Получите из неё одномерный ряд
и выведите его.