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

Функция random.create_rng_state

Функция random.create_rng_state создает тензор состояния генератора случайных чисел (RNG state). Первым параметром функция принимает целочисленное зерно (seed), которое определяет начальное состояние генератора. Вторым параметром передается алгоритм генерации. Полученное состояние можно использовать в операциях со случайными числами для воспроизводимости результатов.

Синтаксис

tf.random.create_rng_state(seed, alg)

Пример

Давайте создадим состояние генератора случайных чисел с зерном 42 и алгоритмом philox:

import tensorflow as tf state = tf.random.create_rng_state(42, "philox") print(state)

Результат выполнения кода:

tf.Tensor([42 0 0], shape=(3,), dtype=int64)

Пример

Давайте создадим состояние с алгоритмом threefry и выведем его форму и тип данных:

import tensorflow as tf state = tf.random.create_rng_state(123, "threefry") print(state) print(state.shape) print(state.dtype)

Результат выполнения кода:

tf.Tensor([123 0], shape=(2,), dtype=int64) (2,) <dtype: 'int64'>

Пример

Давайте используем созданное состояние для генерации случайных чисел и убедимся в воспроизводимости:

import tensorflow as tf state = tf.random.create_rng_state(42, "philox") t1 = tf.random.stateless_normal([3], seed=state) t2 = tf.random.stateless_normal([3], seed=state) print(t1) print(t2) print(tf.reduce_all(tf.equal(t1, t2)))

Результат выполнения кода:

tf.Tensor([-0.5060676 0.75360477 0.39380622], shape=(3,), dtype=float32) tf.Tensor([-0.5060676 0.75360477 0.39380622], shape=(3,), dtype=float32) tf.Tensor(True, shape=(), dtype=bool)

Смотрите также

  • функцию stateless_normal,
    которая генерирует случайные числа из нормального распределения
  • функцию stateless_uniform,
    которая генерирует случайные числа из равномерного распределения
  • функцию set_seed,
    которая устанавливает глобальное зерно генератора
  • функцию split,
    которая разделяет состояние генератора на несколько частей
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить