From 07737b7ba732a566d0c3ed6671f47f58eb89b0e4 Mon Sep 17 00:00:00 2001 From: Max Zwiessele Date: Mon, 17 Feb 2014 12:04:40 +0000 Subject: [PATCH] rbf andl inear fixes --- GPy/kern/parts/bias.py | 3 ++- GPy/kern/parts/linear.py | 2 +- GPy/kern/parts/rbf.py | 4 ++-- GPy/util/__init__.py | 1 + 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/GPy/kern/parts/bias.py b/GPy/kern/parts/bias.py index 303074a8..d2301bcd 100644 --- a/GPy/kern/parts/bias.py +++ b/GPy/kern/parts/bias.py @@ -14,7 +14,8 @@ class Bias(Kernpart): :type variance: float """ super(Bias, self).__init__(input_dim, name) - self.variance = Param("variance", variance) + from ...core.parameterization.transformations import Logexp + self.variance = Param("variance", variance, Logexp()) self.add_parameter(self.variance) def K(self,X,X2,target): diff --git a/GPy/kern/parts/linear.py b/GPy/kern/parts/linear.py index 1b805219..db7c9834 100644 --- a/GPy/kern/parts/linear.py +++ b/GPy/kern/parts/linear.py @@ -61,7 +61,7 @@ class Linear(Kernpart): def update_gradients_full(self, dL_dK, X): #self.variances.gradient[:] = 0 - self._param_grad_helper(dL_dK, X, self.variances.gradient) + self._param_grad_helper(dL_dK, X, None, self.variances.gradient) def update_gradients_sparse(self, dL_dKmm, dL_dKnm, dL_dKdiag, X, Z): tmp = dL_dKdiag[:, None] * X ** 2 diff --git a/GPy/kern/parts/rbf.py b/GPy/kern/parts/rbf.py index 4a8ebd4d..027aa382 100644 --- a/GPy/kern/parts/rbf.py +++ b/GPy/kern/parts/rbf.py @@ -264,7 +264,7 @@ class RBF(Kernpart): } """ num_data, num_inducing, input_dim = X.shape[0], X.shape[0], self.input_dim - X, dvardLdK = param_to_array(X, dvardLdK) + X, dvardLdK, var_len3 = param_to_array(X, dvardLdK, var_len3) weave.inline(code, arg_names=['num_data', 'num_inducing', 'input_dim', 'X', 'target', 'dvardLdK', 'var_len3'], type_converters=weave.converters.blitz, **self.weave_options) else: code = """ @@ -281,7 +281,7 @@ class RBF(Kernpart): } """ num_data, num_inducing, input_dim = X.shape[0], X2.shape[0], self.input_dim - X, X2, dvardLdK = param_to_array(X, X2, dvardLdK) + X, X2, dvardLdK, var_len3 = param_to_array(X, X2, dvardLdK, var_len3) weave.inline(code, arg_names=['num_data', 'num_inducing', 'input_dim', 'X', 'X2', 'target', 'dvardLdK', 'var_len3'], type_converters=weave.converters.blitz, **self.weave_options) return target diff --git a/GPy/util/__init__.py b/GPy/util/__init__.py index 5a335027..c10fea4c 100644 --- a/GPy/util/__init__.py +++ b/GPy/util/__init__.py @@ -10,6 +10,7 @@ import datasets import mocap import decorators import classification +import subarray_and_sorting import caching try: