add util.parallel into import

This commit is contained in:
Zhenwen Dai 2015-09-03 16:32:06 +01:00
parent 9564287cf3
commit ded0b3366d
2 changed files with 5 additions and 3 deletions

View file

@ -4,6 +4,7 @@
import numpy as np import numpy as np
from ...core import Model from ...core import Model
from ...core.parameterization import variational from ...core.parameterization import variational
from ...util.linalg import tdot
from GPy.core.parameterization.variational import VariationalPosterior from GPy.core.parameterization.variational import VariationalPosterior
def infer_newX(model, Y_new, optimize=True, init='L2'): def infer_newX(model, Y_new, optimize=True, init='L2'):
@ -127,13 +128,13 @@ class InferenceX(Model):
wv = wv[:,self.valid_dim] wv = wv[:,self.valid_dim]
output_dim = self.valid_dim.sum() output_dim = self.valid_dim.sum()
if self.ninan is not None: if self.ninan is not None:
self.dL_dpsi2 = beta/2.*(self.posterior.woodbury_inv[:,:,self.valid_dim] - np.einsum('md,od->mo',wv, wv)[:, :, None]).sum(-1) self.dL_dpsi2 = beta/2.*(self.posterior.woodbury_inv[:,:,self.valid_dim] - tdot(wv)[:, :, None]).sum(-1)
else: else:
self.dL_dpsi2 = beta/2.*(output_dim*self.posterior.woodbury_inv - np.einsum('md,od->mo',wv, wv)) self.dL_dpsi2 = beta/2.*(output_dim*self.posterior.woodbury_inv - tdot(wv))
self.dL_dpsi1 = beta*np.dot(self.Y[:,self.valid_dim], wv.T) self.dL_dpsi1 = beta*np.dot(self.Y[:,self.valid_dim], wv.T)
self.dL_dpsi0 = - beta/2.* np.ones(self.Y.shape[0]) self.dL_dpsi0 = - beta/2.* np.ones(self.Y.shape[0])
else: else:
self.dL_dpsi2 = beta*(output_dim*self.posterior.woodbury_inv - np.einsum('md,od->mo',wv, wv))/2. self.dL_dpsi2 = beta*(output_dim*self.posterior.woodbury_inv - tdot(wv))/2. #np.einsum('md,od->mo',wv, wv)
self.dL_dpsi1 = beta*np.dot(self.Y, wv.T) self.dL_dpsi1 = beta*np.dot(self.Y, wv.T)
self.dL_dpsi0 = -beta/2.*output_dim* np.ones(self.Y.shape[0]) self.dL_dpsi0 = -beta/2.*output_dim* np.ones(self.Y.shape[0])

View file

@ -16,4 +16,5 @@ from . import diag
from . import initialization from . import initialization
from . import multioutput from . import multioutput
from . import linalg_gpu from . import linalg_gpu
from . import parallel