From 76840b6e6efd36a725967dfc0032ea9de15e1240 Mon Sep 17 00:00:00 2001 From: Max Zwiessele Date: Mon, 29 Jul 2013 15:26:49 +0100 Subject: [PATCH] gradient checker more robust against name changes --- GPy/models/gradient_checker.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/GPy/models/gradient_checker.py b/GPy/models/gradient_checker.py index fa49ee0e..5afcd7c4 100644 --- a/GPy/models/gradient_checker.py +++ b/GPy/models/gradient_checker.py @@ -76,9 +76,9 @@ class GradientChecker(Model): self.shapes = [get_shape(x0)] for name, xi in zip(self.names, at_least_one_element(x0)): self.__setattr__(name, xi) - self._param_names = [] - for name, shape in zip(self.names, self.shapes): - self._param_names.extend(map(lambda nameshape: ('_'.join(nameshape)).strip('_'), itertools.izip(itertools.repeat(name), itertools.imap(lambda t: '_'.join(map(str, t)), itertools.product(*map(lambda xi: range(xi), shape)))))) +# self._param_names = [] +# for name, shape in zip(self.names, self.shapes): +# self._param_names.extend(map(lambda nameshape: ('_'.join(nameshape)).strip('_'), itertools.izip(itertools.repeat(name), itertools.imap(lambda t: '_'.join(map(str, t)), itertools.product(*map(lambda xi: range(xi), shape)))))) self.args = args self.kwargs = kwargs self.f = f @@ -108,4 +108,7 @@ class GradientChecker(Model): current_index += current_size def _get_param_names(self): - return self._param_names + _param_names = [] + for name, shape in zip(self.names, self.shapes): + _param_names.extend(map(lambda nameshape: ('_'.join(nameshape)).strip('_'), itertools.izip(itertools.repeat(name), itertools.imap(lambda t: '_'.join(map(str, t)), itertools.product(*map(lambda xi: range(xi), shape)))))) + return _param_names