def __init__(self, X, likelihood, kernel, Z, X_variance=None, normalize_X=False): GPBase.__init__(self, X, likelihood, kernel, normalize_X=normalize_X) self.Z = Z self.num_inducing = Z.shape[0] self.likelihood = likelihood if X_variance is None: self.has_uncertain_inputs = False else: assert X_variance.shape == X.shape self.has_uncertain_inputs = True self.X_variance = X_variance if normalize_X: self.Z = (self.Z.copy() - self._Xoffset) / self._Xscale # normalize X uncertainty also if self.has_uncertain_inputs: self.X_variance /= np.square(self._Xscale)
def __init__(self, X, likelihood, kernel, Z, q_u=None, batchsize=10, X_variance=None): GPBase.__init__(self, X, likelihood, kernel, normalize_X=False) self.batchsize=batchsize self.Y = self.likelihood.Y.copy() self.Z = Z self.num_inducing = Z.shape[0] self.batchcounter = 0 self.epochs = 0 self.iterations = 0 self.vb_steplength = 0.05 self.param_steplength = 1e-5 self.momentum = 0.9 if X_variance is None: self.has_uncertain_inputs = False else: self.has_uncertain_inputs = True self.X_variance = X_variance if q_u is None: q_u = np.hstack((np.random.randn(self.num_inducing*self.output_dim),-.5*np.eye(self.num_inducing).flatten())) self.set_vb_param(q_u) self._permutation = np.random.permutation(self.num_data) self.load_batch() self._param_trace = [] self._ll_trace = [] self._grad_trace = [] #set the adaptive steplength parameters self.hbar_t = 0.0 self.tau_t = 100.0 self.gbar_t = 0.0 self.gbar_t1 = 0.0 self.gbar_t2 = 0.0 self.hbar_tp = 0.0 self.tau_tp = 10000.0 self.gbar_tp = 0.0 self.adapt_param_steplength = True self.adapt_vb_steplength = True self._param_steplength_trace = [] self._vb_steplength_trace = [] self.ensure_default_constraints()
def __init__(self, X, likelihood, kernel, normalize_X=False): GPBase.__init__(self, X, likelihood, kernel, normalize_X=normalize_X) self.update_likelihood_approximation()
def __init__(self, X, likelihood, kernel, normalize_X=False): GPBase.__init__(self, X, likelihood, kernel, normalize_X=normalize_X) self._set_params(self._get_params())