mirror of
https://github.com/SheffieldML/GPy.git
synced 2026-07-05 16:02:13 +02:00
fixed plots for BGPLVM
This commit is contained in:
parent
1f5837d200
commit
4525ddd75a
2 changed files with 7 additions and 4 deletions
|
|
@ -85,5 +85,5 @@ class Bayesian_GPLVM(sparse_GP, GPLVM):
|
||||||
return np.hstack((self.dL_dmuS().flatten(), sparse_GP._log_likelihood_gradients(self)))
|
return np.hstack((self.dL_dmuS().flatten(), sparse_GP._log_likelihood_gradients(self)))
|
||||||
|
|
||||||
def plot_latent(self, *args, **kwargs):
|
def plot_latent(self, *args, **kwargs):
|
||||||
input_1, input_2 = GPLVM.plot_latent(*args, **kwargs)
|
input_1, input_2 = GPLVM.plot_latent(self, *args, **kwargs)
|
||||||
pb.plot(m.Z[:, input_1], m.Z[:, input_2], '^w')
|
pb.plot(self.Z[:, input_1], self.Z[:, input_2], '^w')
|
||||||
|
|
|
||||||
|
|
@ -81,13 +81,16 @@ class GPLVM(GP):
|
||||||
raise ValueError, "cannot Atomatically determine which dimensions to plot, please pass 'which_indices'"
|
raise ValueError, "cannot Atomatically determine which dimensions to plot, please pass 'which_indices'"
|
||||||
k = k[0]
|
k = k[0]
|
||||||
if k.name=='rbf':
|
if k.name=='rbf':
|
||||||
input_1, input_2 = np.argsort(k.lengthscales)[:2]
|
input_1, input_2 = np.argsort(k.lengthscale)[:2]
|
||||||
elif k.name=='linear':
|
elif k.name=='linear':
|
||||||
input_1, input_2 = np.argsort(k.variances)[::-1][:2]
|
input_1, input_2 = np.argsort(k.variances)[::-1][:2]
|
||||||
|
|
||||||
#first, plot the output variance as a function of the latent space
|
#first, plot the output variance as a function of the latent space
|
||||||
Xtest, xx,yy,xmin,xmax = util.plot.x_frame2D(self.X[:,[input_1, input_2]],resolution=resolution)
|
Xtest, xx,yy,xmin,xmax = util.plot.x_frame2D(self.X[:,[input_1, input_2]],resolution=resolution)
|
||||||
mu, var, low, up = self.predict(Xtest)
|
Xtest_full = np.zeros((Xtest.shape[0], self.X.shape[1]))
|
||||||
|
Xtest_full[:, :2] = Xtest
|
||||||
|
mu, var, low, up = self.predict(Xtest_full)
|
||||||
|
var = var[:, :2]
|
||||||
pb.imshow(var.reshape(resolution,resolution).T[::-1,:],extent=[xmin[0],xmax[0],xmin[1],xmax[1]],cmap=pb.cm.binary,interpolation='bilinear')
|
pb.imshow(var.reshape(resolution,resolution).T[::-1,:],extent=[xmin[0],xmax[0],xmin[1],xmax[1]],cmap=pb.cm.binary,interpolation='bilinear')
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue