ray-project / tune-sklearn

A drop-in replacement for Scikit-Learn’s GridSearchCV / RandomizedSearchCV -- but with cutting edge hyperparameter tuning techniques.
https://docs.ray.io/en/master/tune/api_docs/sklearn.html
Apache License 2.0
465 stars 52 forks source link

Problems with the TuneSearchCV example #77

Closed PPiodas closed 4 years ago

PPiodas commented 4 years ago

Hello,

running the example:

` from tune_sklearn import TuneSearchCV import scipy from sklearn.datasets import make_classification from sklearn.model_selection import train_test_split from sklearn.linear_model import SGDClassifier from src.misc.skopt.space import Real, Categorical, Integer

X, y = make_classification(n_samples=11000, n_features=1000, n_informative=50, n_redundant=0, n_classes=10, class_sep=2.5) X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=1000)

param_dists = { 'alpha': (1e-4, 1e-1), 'epsilon': (1e-2, 1e-1) }

bohb_tune_search = TuneSearchCV(SGDClassifier(), param_distributions=param_dists, n_iter=2, max_iters=10, search_optimization="bohb" )

bohb_tune_search.fit(X_train, y_train)

hyperopt_tune_search = TuneSearchCV(SGDClassifier(), param_distributions=param_dists, n_iter=2, early_stopping=True, # uses ASHAScheduler if set to True max_iters=10, search_optimization="hyperopt" )

hyperopt_tune_search.fit(X_train, y_train)

bayesian_tune_search = TuneSearchCV(SGDClassifier(), param_distributions=param_dists, n_iter=2, early_stopping=True, # uses ASHAScheduler if set to True max_iters=10, search_optimization="bayesian" )

bayesian_tune_search.fit(X_train, y_train) `

I get the following errors: 1) Using 'bohb': ValueError: Search optimization must be random or bayesian 2) Using 'hyperopt': Search optimization must be random or bayesian 3) Using 'bayesian': TypeError: '<' not supported between instances of 'Version' and 'tuple'

I installed all packages, also the ones from the column of the table.

Do you need anything else to get me going? Currently I am not able to run anything.

Thank you very much

rohan-gt commented 4 years ago

@PPiodas You need to install the package using the following command:

pip install -U git+https://github.com/ray-project/tune-sklearn/

PPiodas commented 4 years ago

@rohan-gt:

@PPiodas You need to install the package using the following command:

pip install -U git+https://github.com/ray-project/tune-sklearn/

Thank you very much, that worked. To avoid the same thing next time: How could I found that myself?

Anyway I get a new error: FileNotFoundError: [Errno 2] Dashboard build directory not found. If installing from source, please follow the additional steps required to build the dashboard(cd python/ray/dashboard/client && npm ci && npm run build): 'C:\Users\ppiotrow\.conda\envs\basic_pytorch\lib\site-packages\ray\dashboard\client/build' Log sync requires rsync to be installed. Log sync requires rsync to be installed.

I tried to install rsync, but it doesn't seem to be the correct one. How can I solve this one?

Thank you again!

richardliaw commented 4 years ago

Thanks for opening this issue!

To avoid the same thing next time: How could I found that myself?

We'll update pip soon cc @inventormc

Log sync requires rsync to be installed.

Hmm, this should be fixed with the next version of Ray, but that error is harmless.

richardliaw commented 4 years ago

This will be fixed with the next Ray release - but right now, you can either:

logger = logging.getLogger("ray.tune")
logger.setLevel("CRITICAL")

or install the latest nightly ray wheels: https://docs.ray.io/en/latest/installation.html#latest-snapshots-nightlies