def getTrainKernel(self, params):
self.checkParams(params)
if (self.sameParams(params)): return self.cache['getTrainKernel']
if ('K_sq_scaled' not in self.cache.keys()): self.cache['K_sq_scaled'] = [None for i in xrange(self.getNumParams())]
ell = np.exp(params)
K = 0
for i in xrange(self.getNumParams()):
if (self.sameParams(params, i)): K += self.cache['K_sq_scaled'][i]
else:
self.cache['K_sq_scaled'][i] = self.K_sq[i] / ell[i]**2
K += self.cache['K_sq_scaled'][i]
K_exp = np.exp(-K / 2.0)
self.cache['getTrainKernel'] = K_exp
self.saveParams(params)
return K_exp
评论列表
文章目录