very basic GP_regression demo is working

This commit is contained in:
James Hensman 2012-11-30 09:11:46 +00:00
parent 07d793e309
commit 4b4f1da128
10 changed files with 31 additions and 41 deletions

View file

@ -7,7 +7,7 @@ import pylab as pb
from scipy import stats, linalg
from .. import kern
from ..inference.Expectation_Propagation import EP,Full
from ..inference.likelihoods import likelihood,probit,poisson,gaussian
from ..inference.likelihoods import likelihood,probit#,poisson,gaussian
from ..core import model
from ..util.linalg import pdinv,jitchol
from ..util.plot import gpplot

View file

@ -29,7 +29,7 @@ class GP_regression(model):
def __init__(self,X,Y,kernel=None,normalize_X=False,normalize_Y=False, Xslices=None):
if kernel is None:
kernel = kern.rbf(X.shape[1]) + kern.bias(X.shape[1]) + kern.white(X.shape[1])
kernel = kern.rbf(X.shape[1]) + kern.white(X.shape[1])
# parse arguments
self.Xslices = Xslices
@ -103,7 +103,7 @@ class GP_regression(model):
return dL_dK
def log_likelihood_gradients(self):
return self.kern.dK_dtheta(self.X,partial=self.dL_dK())
return self.kern.dK_dtheta(partial=self.dL_dK(),X=self.X)
def predict(self,Xnew, slices=None):
"""

View file

@ -6,6 +6,6 @@ from GP_regression import GP_regression
from sparse_GP_regression import sparse_GP_regression
from GPLVM import GPLVM
from warped_GP import warpedGP
from simple_GP_EP import GP_EP
from GP_EP import GP_EP
from generalized_FITC import generalized_FITC
from sparse_GPLVM import sparse_GPLVM

View file

@ -9,7 +9,7 @@ from .. import kern
from ..core import model
from ..util.linalg import pdinv,mdot
from ..util.plot import gpplot
from ..inference.Expectation_Propagation import EP,Full,DTC,FITC
from ..inference.Expectation_Propagation import EP,Full,FITC
from ..inference.likelihoods import likelihood,probit
class generalized_FITC(model):
@ -17,14 +17,12 @@ class generalized_FITC(model):
"""
Naish-Guzman, A. and Holden, S. (2008) implemantation of EP with FITC.
Arguments
---------
X : input observations
likelihood : Output's likelihood (likelihood class)
kernel : a GPy kernel
inducing : Either an array specifying the inducing points location or a scalar defining their number.
epsilon_ep : EP convergence criterion, maximum squared difference allowed between mean updates to stop iterations (float)
powerep : Power-EP parameters (eta,delta) - 2x1 numpy array (floats)
:param X: input observations
:param likelihood: Output's likelihood (likelihood class)
:param kernel: a GPy kernel
:param inducing: Either an array specifying the inducing points location or a scalar defining their number.
:param epsilon_ep: EP convergence criterion, maximum squared difference allowed between mean updates to stop iterations (float)
:param powerep: Power-EP parameters (eta,delta) - 2x1 numpy array (floats)
"""
assert isinstance(kernel,kern.kern)
self.likelihood = likelihood