Функция set_random_seed
Функция set_random_seed устанавливает глобальное зерно (seed) для генераторов случайных чисел, используемых в TensorFlow. Первым параметром функция принимает целое число, которое будет использоваться в качестве зерна. Установка зерна гарантирует, что последовательность случайных чисел будет одинаковой при каждом запуске программы, что важно для воспроизводимости экспериментов.
Синтаксис
tf.random.set_seed(seed)
Пример
Давайте установим зерно и сгенерируем тензор случайных чисел:
import tensorflow as tf
tf.random.set_seed(0)
t = tf.random.normal([5])
print(t)
Результат выполнения кода:
tf.Tensor([-0.39915764 0.39323664 0.47586662 -1.1672063 -0.5717899 ], shape=(5,), dtype=float32)
Пример
Давайте убедимся, что при повторном запуске с тем же зерном результат совпадает:
import tensorflow as tf
tf.random.set_seed(0)
t1 = tf.random.normal([5])
print(t1)
tf.random.set_seed(0)
t2 = tf.random.normal([5])
print(t2)
Результат выполнения кода:
tf.Tensor([-0.39915764 0.39323664 0.47586662 -1.1672063 -0.5717899 ], shape=(5,), dtype=float32)
tf.Tensor([-0.39915764 0.39323664 0.47586662 -1.1672063 -0.5717899 ], shape=(5,), dtype=float32)
Пример
Давайте установим зерно и сгенерируем случайные целые числа:
import tensorflow as tf
tf.random.set_seed(42)
t = tf.random.uniform([5], minval=0, maxval=10, dtype=tf.int32)
print(t)
Результат выполнения кода:
tf.Tensor([2 6 6 0 4], shape=(5,), dtype=int32)
Смотрите также
-
функцию
normal,
которая генерирует тензор нормального распределения -
функцию
uniform,
которая генерирует тензор равномерного распределения -
функцию
truncated_normal,
которая генерирует усеченный нормальный тензор -
функцию
stateless_normal,
которая генерирует нормальный тензор без состояния