Батчи в TensorFlow
Чтобы модель получала сразу
несколько примеров, у набора
данных есть метод batch.
Он группирует подряд идущие
элементы в новый тензор:
размер батча задают числом
в вызове.
Создадим набор из шести чисел и сгруппируем их по два:
import tensorflow as tf
data = tf.constant([1, 2, 3, 4, 5, 6])
ds = tf.data.Dataset.from_tensor_slices(data)
for group in ds.batch(2):
print(group.numpy())
# выведет [1 2], [3 4] и [5 6] по строкам
Если длина набора не делится на размер группы нацело, последний батч будет короче:
import tensorflow as tf
data = tf.constant([1, 2, 3, 4, 5, 6])
ds = tf.data.Dataset.from_tensor_slices(data)
for group in ds.batch(4):
print(group.numpy())
# выведет [1 2 3 4] и [5 6] по строкам
Из ряда [10, 20, 30, 40]
сделайте набор и выведите
группы по три числа.
Соберите набор из чисел
[1, 2, 3, 4, 5] и
выведите каждую группу
из двух элементов.
Создайте ряд [0, 1, 2, 3, 4, 5, 6],
разбейте поток на части по
4 значения и выведите
все части.