def make_chains(self, bias): """ .. todo:: WRITEME properly Make the shared variable representing a layer of the network for all negative chains for now units are initialized randomly based on their biases only """ assert not self.use_cd b = bias.get_value(borrow=True) nhid ,= b.shape shape = (self.negative_chains, nhid) driver = self.rng.uniform(0.0, 1.0, shape) thresh = sigmoid_numpy(b) value = driver < thresh return sharedX(value)
def set_biases(self, biases, recenter = False): self.b.set_value(biases) if recenter: assert self.center if self.pool_size != 1: raise NotImplementedError() self.offset.set_value(sigmoid_numpy(self.b.get_value()))
def make_state(self, num_examples, numpy_rng): driver = numpy_rng.uniform(0.,1., (num_examples, self.nvis)) on_prob = sigmoid_numpy(2. * self.ising_bias_numpy()) sample = 2. * (driver < on_prob) - 1. rval = sharedX(sample, name = 'v_sample_shared') return rval
def make_state(self, num_examples, numpy_rng): driver = numpy_rng.uniform(0., 1., (num_examples, self.nvis)) mean = sigmoid_numpy(self.bias.get_value()) sample = driver < mean rval = sharedX(sample, name='v_sample_shared') return rval
def make_state(self, num_examples, numpy_rng): driver = numpy_rng.uniform(0.,1., (num_examples, self.nvis)) mean = sigmoid_numpy(self.bias.get_value()) sample = driver < mean rval = sharedX(sample, name = 'v_sample_shared') return rval
def make_state(self, num_examples, numpy_rng): """ Returns a shared variable containing an actual state (not a mean field state) for this variable. """ driver = numpy_rng.uniform(0.,1., (num_examples, self.dim)) on_prob = sigmoid_numpy(2. * self.b.get_value()) sample = 2. * (driver < on_prob) - 1. rval = sharedX(sample, name = 'v_sample_shared') return rval
def set_biases(self, biases, recenter=False): self.bias.set_value(biases) if recenter: assert self.center self.offset.set_value(sigmoid_numpy(self.bias.get_value()))