Почему RandomState с установленным начальным числом каждый раз генерирует новые числа? - PullRequest
0 голосов
/ 24 апреля 2020

Я использую numpy, чтобы установить случайное состояние для моего RandomState объекта, но обнаружив, что при вызове метода randn() для объекта я иногда получаю новые "случайные" числа каждый раз, когда я вызываю randn() , Установив случайное начальное число, я ожидаю, что каждый раз получаю одни и те же результаты, поскольку в документации numpy говорится следующее:

Фиксированное начальное число и фиксированная серия вызовов методов RandomState. использование одних и тех же параметров всегда приводит к одним и тем же результатам.

Я заметил, что если я инициализирую rng в той же ячейке, что и ячейка, в которой я создаю random_y, результаты остаются согласованными ( одни и те же массивы генерируются каждый раз). Однако, если я инициализирую rng в другой ячейке, значения random_y изменятся. Например:

##cell 1:
import numpy as np
rng = np.random.RandomState(2)

#cell2:
x = np.linspace(0,10,500) #linspace: generate numbers a to b in steps of c, inclusive of both
random_y = rng.randn(500,6)
random_y

это приведет к новым значениям random_y каждый раз, когда я запускаю две ячейки. Однако, если бы я объединил эти две ячейки в одну и повторно запустил, random_y останется прежним c. Почему это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...