Метод repeat класса Dataset
Метод repeat класса Dataset повторяет элементы датасета.
Первым параметром передается количество повторений.
Если параметр не указан или равен None, датасет повторяется бесконечно.
Метод возвращает новый объект Dataset.
Синтаксис
Dataset.repeat(count=None)
Пример
Давайте создадим датасет из чисел и повторим его три раза:
import tensorflow as tf
ds = tf.data.Dataset.from_tensor_slices([1, 2, 3])
ds_rep = ds.repeat(3)
for elem in ds_rep:
print(elem.numpy())
Результат выполнения кода:
1
2
3
1
2
3
1
2
3
Пример
Давайте повторим датасет бесконечно и возьмем только пять элементов:
import tensorflow as tf
ds = tf.data.Dataset.from_tensor_slices([1, 2, 3])
ds_inf = ds.repeat()
for elem in ds_inf.take(5):
print(elem.numpy())
Результат выполнения кода:
1
2
3
1
2
Пример
Давайте повторим датасет два раза и применим батчирование:
import tensorflow as tf
ds = tf.data.Dataset.from_tensor_slices([1, 2, 3, 4, 5])
ds_rep = ds.repeat(2).batch(3)
for batch in ds_rep:
print(batch.numpy())
Результат выполнения кода:
[1 2 3]
[4 5 1]
[2 3 4]
[5]