РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗pytfPmDtSh 84 of 91 menu
◀ ▶

Перемешивание набора в TensorFlow

Если примеры всегда идут в одном порядке, модель может запомнить эту последовательность вместо закономерностей в данных. Метод shuffle меняет очередность элементов перед обходом набора.

Параметр buffer_size задаёт, сколько ближайших примеров участвует в перестановке. Чтобы порядок в примере не прыгал, случайность фиксируют. Создадим набор, перемешаем его и выведем элементы:

import tensorflow as tf tf.random.set_seed(42) data = tf.constant([1, 2, 3, 4, 5]) ds = tf.data.Dataset.from_tensor_slices(data) ds = ds.shuffle(buffer_size=5, seed=42) for item in ds: print(item.numpy()) # выведет 1, 4, 2, 5 и 3 по строкам

Перемешивание имеет смысл перед группировкой в батчи, если нужен случайный состав каждой партии:

import tensorflow as tf tf.random.set_seed(42) data = tf.constant([1, 2, 3, 4, 5, 6]) ds = tf.data.Dataset.from_tensor_slices(data) ds = ds.shuffle(buffer_size=6, seed=42).batch(2) for group in ds: print(group.numpy()) # выведет [2 1], [4 5] и [3 6] по строкам

Соберите набор из ряда [2, 4, 6, 8], измените порядок элементов и выведите все значения по одному на строку.

Из чисел [10, 20, 30, 40, 50, 60] сделайте поток, перемешайте его и выведите две группы по три числа.

Создайте набор из ряда [1, 2, 3, 4, 5], переставьте примеры и выведите первые три получившихся значения циклом.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить