tf.keras.utils.GeneratorEnqueuer

View source on GitHub

Class GeneratorEnqueuer

Builds a queue out of a data generator.

Inherits From: SequenceEnqueuer

Aliases:

The provided generator can be finite in which case the class will throw a StopIteration exception.

Used in fit_generator, evaluate_generator, predict_generator.

Arguments:

  • generator: a generator function which yields data
  • use_multiprocessing: use multiprocessing if True, otherwise threading
  • wait_time: time to sleep in-between calls to put()
  • random_seed: Initial seed for workers, will be incremented by one for each worker.

__init__

View source

__init__(
    sequence,
    use_multiprocessing=False,
    random_seed=None
)

Initialize self. See help(type(self)) for accurate signature.

Methods

tf.keras.utils.GeneratorEnqueuer.get

View source

get()

Creates a generator to extract data from the queue.

Skip the data if it is None.

Yields:

The next element in the queue, i.e. a tuple (inputs, targets) or (inputs, targets, sample_weights).

tf.keras.utils.GeneratorEnqueuer.is_running

View source

is_running()

tf.keras.utils.GeneratorEnqueuer.start

View source

start(
    workers=1,
    max_queue_size=10
)

Starts the handler's workers.

Arguments:

  • workers: Number of workers.
  • max_queue_size: queue size (when full, workers could block on put())

tf.keras.utils.GeneratorEnqueuer.stop

View source

stop(timeout=None)

Stops running threads and wait for them to exit, if necessary.

Should be called by the same thread which called start().

Arguments:

  • timeout: maximum time to wait on thread.join()