tf.keras.utils.set_random_seed

{ }

Sets all random seeds (Python, NumPy, and backend framework, e.g. TF).

Used in the notebooks

Used in the guide Used in the tutorials

You can use this utility to make almost any Keras program fully deterministic. Some limitations apply in cases where network communications are involved (e.g. parameter server distribution), which creates additional sources of randomness, or when certain non-deterministic cuDNN ops are involved.

Calling this utility is equivalent to the following:

import random
random.seed(seed)

import numpy as np
np.random.seed(seed)

import tensorflow as tf  # Only if TF is installed
tf.random.set_seed(seed)

import torch  # Only if the backend is 'torch'
torch.manual_seed(seed)

Note that the TensorFlow seed is set even if you're not using TensorFlow as your backend framework, since many workflows leverage tf.data pipelines (which feature random shuffling). Likewise many workflows might leverage NumPy APIs.

seed Integer, the random seed to use.