def sample(self): """ Ref: :py:meth:`pyro.distributions.distribution.Distribution.sample` """ eps = Variable(torch.rand(self.a.size()).type_as(self.a.data)) return self.a + torch.mul(eps, self.b - self.a)