Generator dataloader in models with the same inputs and outputs

  dataloader, python, tensorflow

I am trying to implement a model whose output is the same as its input. It’s a simple part of an extensive model, I deleted complicated parts. I wrote a generator dataloader for generating random numbers.

def random_generator():
    tf.random.set_seed(43)
    while True:
        yield tf.random.uniform((3,), 0, 1, dtype=tf.dtypes.float32, seed=32)

random_dataset = tf.data.Dataset.from_generator(
    random_generator,
    output_types=tf.float32,
    output_shapes=(3,)
)

I need to use the same dataloader for input and output, but I’ll get different inputs and outputs as I zip it.

dataloader = tf.data.Dataset.zip((random_dataset, random_dataset))
model.fit(dataloader, epochs=200, batch_size=32)

Is there any way to copy the dataset or generate random arrays of numbers so that it produces the same result in the second call?

Source: Python Questions

LEAVE A COMMENT