Ejemplo n.º 1
0
    def set_gen(self, gen):
        from pymc3.data import GeneratorAdapter

        if not isinstance(gen, GeneratorAdapter):
            gen = GeneratorAdapter(gen)
        if not gen.tensortype == self.generator.tensortype:
            raise ValueError("New generator should yield the same type")
        self.generator = gen
Ejemplo n.º 2
0
    def __init__(self, gen, default=None):
        from pymc3.data import GeneratorAdapter

        super().__init__()
        if not isinstance(gen, GeneratorAdapter):
            gen = GeneratorAdapter(gen)
        self.generator = gen
        self.set_default(default)
Ejemplo n.º 3
0
 def test_ndim(self):
     for ndim in range(10):
         res = list(itertools.islice(integers_ndim(ndim), 0, 2))
         generator = GeneratorAdapter(integers_ndim(ndim))
         gop = GeneratorOp(generator)()
         f = theano.function([], gop)
         assert ndim == res[0].ndim
         np.testing.assert_equal(f(), res[0])
         np.testing.assert_equal(f(), res[1])
Ejemplo n.º 4
0
 def test_basic(self):
     generator = GeneratorAdapter(integers())
     gop = GeneratorOp(generator)()
     assert gop.tag.test_value == np.float32(0)
     f = theano.function([], gop)
     assert f() == np.float32(0)
     assert f() == np.float32(1)
     for _ in range(2, 100):
         f()
     assert f() == np.float32(100)