Dear Joel, I tried and removed the square brackets and now it works as expected *for a single* sample_weight vector: validator = GridSearchCV(my_Regressor, param_grid={'number_of_hidden_neurons': range(4, 5), 'epochs': [50], }, fit_params={'sample_weight': my_sample_weights }, n_jobs=1, ) validator.fit(x, y) The problem now is that I want to try multiple trainings with multiple sample_weight parameters, in the following fashion: validator = GridSearchCV(my_Regressor, param_grid={'number_of_hidden_neurons': range(4, 5), 'epochs': [50], 'sample_weight': [my_sample_weights, my_sample_weights**2] , }, fit_params={}, n_jobs=1, ) validator.fit(x, y) But unfortunately it produces the same error again: ValueError: Found a sample_weight array with shape (1000,) for an input with shape (666, 1). sample_weight cannot be broadcast. I guess that the issue is that the sample__weight parameter was not thought to be changed during the tuning, was it? Thank you all for your patience and support. Best Manolo 2017-06-23 1:17 GMT+02:00 Manuel CASTEJÓN LIMAS <mcasl@unileon.es>:
Dear Joel, I'm just passing an iterable as I would do with any other sequence of parameters to tune. In this case the list only has one element to use but in general I ought to be able to pass a collection of vectors. Anyway, I guess that that issue is not the cause of the problem.
El 23 jun. 2017 1:04 a. m., "Joel Nothman" <joel.nothman@gmail.com> escribió:
why are you passing [my_sample_weights] rather than just my_sample_weights?