print 'Change G covar:' ipdb.set_trace() gp.covar.diff(gp.covar.setG, 1. * (sp.rand(N, f) < 0.2)) print 'Change G gp:' ipdb.set_trace() gp.diff(gp.covar.setG, 1. * (sp.rand(N, f) < 0.2)) ipdb.set_trace() gp0 = GP(covar=copy.deepcopy(gp.covar), mean=copy.deepcopy(gp.mean)) t0 = time.time() print 'GP2KronSum.LML():', gp.LML() print 'Time elapsed:', time.time() - t0 # compare with normal gp # assess compatibility with this GP t0 = time.time() print 'GP.LML():', gp0.LML() print 'Time elapsed:', time.time() - t0 t0 = time.time() print 'GP2KronSum.LML_grad():', gp.LML_grad() print 'Time elapsed:', time.time() - t0 t0 = time.time() print 'GP.LML_grad():', gp0.LML_grad() print 'Time elapsed:', time.time() - t0 pdb.set_trace() gp.optimize()
cov.setRandomParams() pdb.set_trace() print ((cov.inv_debug()-cov.inv())**2).mean()<1e-9 print (cov.logdet_debug()-cov.logdet())**2 print (cov.logdet_grad_i_debug(0)-cov.logdet_grad_i(0))**2 if 0: t0 = time.time() print 'GP2KronSum.LML():', gp.LML() print 'Time elapsed:', time.time() - t0 # compare with normal gp # assess compatibility with this GP gp0 = GP(covar = copy.deepcopy(gp.covar), mean = copy.deepcopy(gp.mean)) t0 = time.time() print 'GP.LML():', gp0.LML() print 'Time elapsed:', time.time() - t0 if 0: pdb.set_trace() print gp.LML() - gp0.LML() print ((gp.LML_grad()['covar'] - gp0.LML_grad()['covar'])**2).mean() pdb.set_trace() gp.covar.setRandomParams() gp0.covar.setParams(gp.covar.getParams()) print gp.LML() - gp0.LML() print ((gp.LML_grad()['covar'] - gp0.LML_grad()['covar'])**2).mean() pdb.set_trace() # gp.col_cov_has_changed_debug()