tf.data.experimental.shuffle_and_repeat
| Просмотреть исходный код на GitHub |
Перемешивает и повторяет набор данных, повторно перемешивая при каждом повторении. (устарело)
tf.data.experimental.shuffle_and_repeat(
buffer_size, count=None, seed=None
)
d = tf.data.Dataset.from_tensor_slices([1, 2, 3]) d = d.apply(tf.data.experimental.shuffle_and_repeat(2, count=2)) [elem.numpy() for elem in d] # doctest: +SKIP [2, 3, 1, 1, 3, 2]
dataset.apply( tf.data.experimental.shuffle_and_repeat(buffer_size, count, seed))
выдает тот же результат, что и
dataset.shuffle( buffer_size, seed=seed, reshuffle_each_iteration=True).repeat(count)
При каждом повторении этот набор данных заполняет буфер buffer_size элементами, а затем случайным образом выбирает элементы из этого буфера, заменяя выбранные элементы новыми элементами. Для идеального перемешивания установите размер буфера равным полному размеру набора данных.
Например, если ваш набор данных содержит 10 000 элементов, но buffer_size задан равным 1000, то shuffle изначально выберет случайный элемент только из первых 1000 элементов в буфере. После выбора элемента его место в буфере замещается следующим (т.е. 1001-м) элементом, сохраняя размер буфера 1000 элементов.
| Аргументы | |
|---|---|
buffer_size | Скаляр tf.int64 типа tf.Tensor, представляющий максимальное количество элементов, которые будут буферизованы при предварительной загрузке. |
count | (Необязательно.) Скаляр tf.int64 типа tf.Tensor, представляющий количество раз, которое набор данных должен быть повторён. По умолчанию (если count равно None или -1) набор данных будет повторяться бесконечно. |
seed | (Необязательно.) Скаляр tf.int64 типа tf.Tensor, представляющий случайное семя, которое будет использовано для создания распределения. См. tf.random.set_seed для получения информации о поведении. |
| Возвращаемое значение | |
|---|---|
Функция преобразования Dataset, которую можно передать в tf.data.Dataset.apply. |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.9/api_docs/python/tf/data/experimental/shuffle_and_repeat