コード例 #1
0
    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)
コード例 #2
0
ファイル: svigp.py プロジェクト: andymiller/GPy
    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()
コード例 #3
0
ファイル: sparse_gp.py プロジェクト: OwenThomas/GPy
    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)
コード例 #4
0
ファイル: gp.py プロジェクト: Dalar/GPy
 def __init__(self, X, likelihood, kernel, normalize_X=False):
     GPBase.__init__(self, X, likelihood, kernel, normalize_X=normalize_X)
     self.update_likelihood_approximation()
コード例 #5
0
ファイル: gp.py プロジェクト: andymiller/GPy
 def __init__(self, X, likelihood, kernel, normalize_X=False):
     GPBase.__init__(self, X, likelihood, kernel, normalize_X=normalize_X)
     self.update_likelihood_approximation()
コード例 #6
0
ファイル: gp.py プロジェクト: nfoti/GPy
 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())
コード例 #7
0
 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())