Допустим, у меня есть функция, которая принимает аргумент random_state
для обеспечения воспроизводимости.
def replicable_function(random_seed):
choice = np.random.choice(X, 10)
#do more stuff here with choice
return f(choice)
Это два моих требования:
- Передача одного и того же
random_seed
(может быть целым числом или объектомnp.random.RandomState
) означает, чтоreplicable_function
всегда выводит одно и то же - Я не меняю глобальное случайное начальное состояние numpy (пытаясь быть милым с пользователем и не менять то, чего он не ожидает)
В идеале я хотел бы передать этот random_state
функции np.random.choice
, но, похоже, она не принимает такой аргумент (см. исходный код здесь!)