Spec-Zone.ru › NumPy 1.20

numpy.random.SeedSequence

class numpy.random.SeedSequence(entropy=None, *, spawn_key=(), pool_size=4)

SeedSequence смешивает источники энтропии воспроизводимым способом, чтобы установить начальное состояние для независимых и, очень вероятно, непересекающихся генераторов случайных битов.

После создания SeedSequence, вы можете вызвать метод generate_state, чтобы получить начальное значение соответствующего размера. Вызов spawn(n) создаст n SeedSequences, которые можно использовать для инициализации независимых генераторов случайных чисел, например, для разных потоков.

Параметры
entropy{None, int, sequence[int]}, optional

Энтропия для создания SeedSequence.

spawn_key{(), sequence[int]}, optional

Третий источник энтропии, используемый во время вызова SeedSequence.spawn.

pool_size{int}, optional

Размер объединённой энтропии для хранения. По умолчанию — 4, чтобы получить пул энтропии размером 128 бит. 8 (для 256 бит) — ещё один разумный выбор, если вы работаете с более сложными генераторами случайных чисел, но вряд ли от выбора другого значения будет существенный выигрыш.

n_children_spawned{int}, optional

Количество уже сгенерированных дочерних объектов. Передавайте только в случае восстановления SeedSequence из сериализованной формы.

Примечания

Лучшей практикой для достижения воспроизводимых потоков битов является использование по умолчанию None для начальной энтропии, а затем использование SeedSequence.entropy для логирования/сохранения entropy для воспроизводимости:

>>> sq1 = np.random.SeedSequence()
>>> sq1.entropy
243799254704924441050048792905230269161  # random
>>> sq2 = np.random.SeedSequence(sq1.entropy)
>>> np.all(sq1.generate_state(10) == sq2.generate_state(10))
True
Атрибуты
энтропия
n_children_spawned
pool
pool_size
spawn_key
state

Методы

generate_state(n_words[, dtype])

Возвращает нужное количество слов для инициализации генератора случайных чисел.

spawn(n_children)

Создаёт заданное количество дочерних SeedSequence, расширяя spawn_key.

© 2005–2021 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.20/reference/random/bit_generators/generated/numpy.random.SeedSequence.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API