fun_with_kaggle icon indicating copy to clipboard operation
fun_with_kaggle copied to clipboard

[sklearn-london] "ValueError: Could not escape Shape.0" when running v1.ipynb

Open npow opened this issue 10 years ago • 1 comments

Hi, I'm getting an error about "could not escape Shape.0" when running the notebook. I'm using python2.7. What version of pyautodiff are you using?


---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-6-ac272e2b7b7e> in <module>()
      1 ## train a sparse filter on both train and test data
      2 sf = SparseFilter(n_features=50, n_iterations=1000)
----> 3 sf.fit(np.r_[train_X, test_X])
      4 train_sf_X = sf.transform(train_X)
      5 test_sf_X = sf.transform(test_X)

<ipython-input-4-f4947b097bd3> in fit(self, X, y)
     19         self.W_, self.b_ = optimize.fmin_l_bfgs_b(obj_fn, (W, b), 
     20                                 iprint = 1,
---> 21                                 maxfun = self.n_iterations)
     22         return self
     23     def get_objective_fn(self, X):

/Users/npow/Downloads/sklearn-london/autodiff/optimize.py in fmin_l_bfgs_b(fn, init_args, init_kwargs, scalar_bounds, return_info, **scipy_kwargs)
    109                      init_kwargs=init_kwargs,
    110                      function=True,
--> 111                      gradient=True)
    112 
    113     x0 = f_df.vector_from_args(init_args, init_kwargs)

/Users/npow/Downloads/sklearn-london/autodiff/symbolic.py in __init__(self, pyfn, init_args, init_kwargs, context, borrowable, ignore, escape_on_error, function, gradient, hessian_vector)
    496                             escape_on_error=escape_on_error)
    497 
--> 498         _, (sym_vector, result) = symbolic.trace(*init_args, **init_kwargs)
    499 
    500         fn = symbolic.compile(function=function,

/Users/npow/Downloads/sklearn-london/autodiff/symbolic.py in trace(self, *args, **kwargs)
     97 
     98         # call the symfn
---> 99         results = self.symfn(*c_args, **c_kwargs)
    100 
    101         # get a tuple of the symbolic inputs

/Users/npow/Downloads/sklearn-london/autodiff/symbolic.py in wrapper(*args, **kwargs)

/Users/npow/Downloads/sklearn-london/autodiff/symbolic.py in args_from_vector(self, vector)

/Users/npow/Downloads/sklearn-london/autodiff/context.py in handle_escape(x)
    410             else:
    411                 return x
--> 412         return utils.unflatten(x, [escape(i) for i in utils.flatten(x)])
    413 
    414     @staticmethod

/Users/npow/Downloads/sklearn-london/autodiff/context.py in escape(x)
    407                     return x.eval()
    408                 except:
--> 409                     raise ValueError('Could not escape {0}'.format(x))
    410             else:
    411                 return x

ValueError: Could not escape Shape.0

npow avatar Sep 26 '14 04:09 npow

UPDATE: I managed to get it working using rev c9c176f76cb80501d13e05a4c9d03351869bc799 of pyautodiff (which is ~ 9 months old)

npow avatar Sep 26 '14 04:09 npow