automl / auto-sklearn

Automated Machine Learning with scikit-learn
https://automl.github.io/auto-sklearn
BSD 3-Clause "New" or "Revised" License
7.63k stars 1.28k forks source link

Initialization of hyperparameter search space fails when the first preprocessor cannot be used with given estimators #631

Open teresaconc opened 5 years ago

teresaconc commented 5 years ago

Initialization of hyperparameter search space fails when the first preprocessor method can not be used with none of the estimators.

Example: Using in the fit method:

 include_preprocessors = ['kernel_pca','select_rates']
 include_estimators = ['decision_tree','random_forest']

an error is raised: "Cannot find a legal default configuration." in _get_hyperparameter_search_space: line 216. This raises an error because kernel_pca can not be used with neither decision_tree nor random_forest.

However, if I reverse the include_preprocessors list: _include_preprocessors_ = ['select_rates', 'kernel_pca'] The program does not exit and the fit method is successful. It does not uses 'kernel_pca' but it does search for models with 'select_rates'

mfeurer commented 5 years ago

Indeed, this is an issue. Ideally, one would check every combination of preprocessor and classifier and then choose a legal one if possible. Would you like to work on a fix for this?

teresaconc commented 5 years ago

I haven't had time to look into this. But will hopefully do it soon

mfeurer commented 5 years ago

That would be great!

github-actions[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs for the next 7 days. Thank you for your contributions.