def test_get_hyperparameter_search_space_include_exclude_models(self): cs = SimpleRegressionPipeline(include={ 'regressor': ['random_forest'] }).get_hyperparameter_search_space() self.assertEqual( cs.get_hyperparameter('regressor:__choice__'), CategoricalHyperparameter('regressor:__choice__', ['random_forest']), ) # TODO add this test when more than one regressor is present cs = SimpleRegressionPipeline(exclude={'regressor': ['random_forest']}).\ get_hyperparameter_search_space() self.assertNotIn('random_forest', str(cs)) cs = SimpleRegressionPipeline(include={'feature_preprocessor': ['pca']}).\ get_hyperparameter_search_space() self.assertEqual( cs.get_hyperparameter('feature_preprocessor:__choice__'), CategoricalHyperparameter('feature_preprocessor:__choice__', ['pca'])) cs = SimpleRegressionPipeline( exclude={'feature_preprocessor': ['no_preprocessing']}).\ get_hyperparameter_search_space() self.assertNotIn('no_preprocessing', str(cs))
def test_get_hyperparameter_search_space_preprocessor_contradicts_default_classifier( self): cs = SimpleRegressionPipeline(include={'preprocessor': ['densifier']}, dataset_properties={'sparse': True}).\ get_hyperparameter_search_space() self.assertEqual(cs.get_hyperparameter('regressor:__choice__').default, 'gradient_boosting') cs = SimpleRegressionPipeline(include={'preprocessor': ['nystroem_sampler']}).\ get_hyperparameter_search_space() self.assertEqual(cs.get_hyperparameter('regressor:__choice__').default, 'sgd')
def test_get_hyperparameter_search_space_preprocessor_contradicts_default_classifier( self): cs = SimpleRegressionPipeline(include={'preprocessor': ['densifier']}, dataset_properties={'sparse': True}).\ get_hyperparameter_search_space() self.assertEqual( cs.get_hyperparameter('regressor:__choice__').default_value, 'gradient_boosting' ) cs = SimpleRegressionPipeline(include={'preprocessor': ['nystroem_sampler']}).\ get_hyperparameter_search_space() self.assertEqual( cs.get_hyperparameter('regressor:__choice__').default_value, 'sgd' )
def test_get_hyperparameter_search_space_include_exclude_models(self): cs = SimpleRegressionPipeline( include={'regressor': ['random_forest']}).get_hyperparameter_search_space() self.assertEqual(cs.get_hyperparameter('regressor:__choice__'), CategoricalHyperparameter('regressor:__choice__', ['random_forest'])) # TODO add this test when more than one regressor is present cs = SimpleRegressionPipeline(exclude={'regressor': ['random_forest']}).\ get_hyperparameter_search_space() self.assertNotIn('random_forest', str(cs)) cs = SimpleRegressionPipeline(include={'preprocessor': ['pca']}).\ get_hyperparameter_search_space() self.assertEqual(cs.get_hyperparameter('preprocessor:__choice__'), CategoricalHyperparameter('preprocessor:__choice__', ['pca'])) cs = SimpleRegressionPipeline(exclude={'preprocessor': ['no_preprocessing']}).\ get_hyperparameter_search_space() self.assertNotIn('no_preprocessing', str(cs))