Hi Sam.
GridSearchCV will do cross-validation, which requires to "transform" the test data. The shape of the test-data will be different from the shape of the training data. You need to have the ability to compute the kernel between the training data and new test data.

A more hacky solution would be to compute the full kernel matrix in advance and pass that to GridSearchCV.

You probably don't need it here, but you should also checkout what the _pairwise attribute does in cross-validation,
because that it likely to come up when playing with kernels.

Hth,
Andy

On 08/02/2017 08:38 AM, Sam Barnett wrote:
Dear all,

I have created a 2-step pipeline with a custom transformer followed by a simple SVC classifier, and I wish to run a grid-search over it. I am able to successfully create the transformer and the pipeline, and each of these elements work fine. However, when I try to use the fit() method on my GridSearchCV object, I get the following error:

57 # during fit.
   58 if X.shape != self.input_shape_:
---> 59 raise ValueError('Shape of input is different from what was seen '
   60                              'in `fit`')
   61

ValueError: Shape of input is different from what was seen in `fit`

For a full breakdown of the problem, I have written a Jupyter notebook showing exactly how the error occurs (this also contains all .py files necessary to run the notebook). Can anybody see how to work through this?

Many thanks,
Sam Barnett



_______________________________________________
scikit-learn mailing list
scikit-learn@python.org
https://mail.python.org/mailman/listinfo/scikit-learn

_______________________________________________
scikit-learn mailing list
scikit-learn@python.org
https://mail.python.org/mailman/listinfo/scikit-learn

Reply via email to