def test_setitem(self): random = RandomStreams(234) out = random.uniform((2, 2)) fn = function([], out, updates=random.updates()) random.seed(888) rng = np.random.RandomState(utt.fetch_seed()) random[out.rng] = np.random.RandomState(utt.fetch_seed()) fn_val0 = fn() fn_val1 = fn() numpy_val0 = rng.uniform(size=(2, 2)) numpy_val1 = rng.uniform(size=(2, 2)) assert np.allclose(fn_val0, numpy_val0) assert np.allclose(fn_val1, numpy_val1)
def test_seed_fn(self): random = RandomStreams(234) fn = function([], random.uniform((2, 2)), updates=random.updates()) random.seed(utt.fetch_seed()) fn_val0 = fn() fn_val1 = fn() rng_seed = np.random.RandomState(utt.fetch_seed()).randint(2**30) rng = np.random.RandomState(int(rng_seed)) # int() is for 32bit numpy_val0 = rng.uniform(size=(2, 2)) numpy_val1 = rng.uniform(size=(2, 2)) assert np.allclose(fn_val0, numpy_val0) assert np.allclose(fn_val1, numpy_val1)