tf.random.set_global_generator
Заменяет глобальный генератор на другой объект Generator.
tf.random.set_global_generator(
generator
)
Эта функция заменяет глобальный генератор на предоставленный объект generator. Генератор случайных чисел использует объект tf.Variable для хранения своего состояния. Пользователь должен быть осведомлен о нюансах, как set_global_generator взаимодействует с tf.function:
- tf.function накладывает ограничения на создание переменных, поэтому внутри
tf.functionнельзя свободно создавать новый экземпляр генератора случайных чисел. Чтобы вызватьset_global_generatorвнутриtf.function, экземпляр генератора должен быть создан в режиме eager. - tf.function захватывает переменную во время компиляции трассировки, поэтому скомпилированная f.function не будет затронута
set_global_generator, как показано в random_test.py/RandomTest.testResetGlobalGeneratorBadWithDefun.
Для большинства случаев использования избегайте вызова set_global_generator после инициализации программы и предпочитайте вместо этого сбросить состояние существующего глобального генератора, например,
rng = tf.random.get_global_generator() rng.reset_from_seed(30)
| Аргументы | |
|---|---|
generator | новый объект Generator . |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.9/api_docs/python/tf/random/set_global_generator