[splitkern] buf fix

This commit is contained in:
Zhenwen Dai 2014-05-29 11:21:19 +01:00
parent 5d728f7715
commit f9291fe7da

View file

@ -106,9 +106,9 @@ class SplitKern_cross(Kern):
k1 = self.kern.K(X,self.Xp) k1 = self.kern.K(X,self.Xp)
k2 = self.kern.K(self.Xp,X2) k2 = self.kern.K(self.Xp,X2)
k3 = self.kern.K(self.Xp,self.Xp) k3 = self.kern.K(self.Xp,self.Xp)
dL_dk1 = np.einsum('ij,j->i',dL_dK,k2[0])/k3 dL_dk1 = np.einsum('ij,j->i',dL_dK,k2.flat)/k3.flat
dL_dk2 = np.einsum('ij,i->j',dL_dK,k1[:,0])/k3 dL_dk2 = np.einsum('ij,i->j',dL_dK,k1.flat)/k3.flat
dL_dk3 = np.einsum('ij,ij->',dL_dK,-np.dot(k1,k2)/(k3*k3)) dL_dk3 = np.einsum('ij,ij->',dL_dK,-np.dot(k1,k2)/(k3.flat*k3.flat))
self.kern.update_gradients_full(dL_dk1[:,None],X,self.Xp) self.kern.update_gradients_full(dL_dk1[:,None],X,self.Xp)
grad1 = self.kern.gradient.copy() grad1 = self.kern.gradient.copy()