* Added basic functionality and tests
* Feature parity with old tune search space config
* Convert Optuna search spaces
* Introduced quantized values
* Updated Optuna resolving
* Added HyperOpt search space conversion
* Convert search spaces to AxSearch
* Convert search spaces to BayesOpt
* Added basic functionality and tests
* Feature parity with old tune search space config
* Convert Optuna search spaces
* Introduced quantized values
* Updated Optuna resolving
* Added HyperOpt search space conversion
* Convert search spaces to AxSearch
* Convert search spaces to BayesOpt
* Re-factored samplers into domain classes
* Re-added base classes
* Re-factored into list comprehensions
* Added `from_config` classmethod for config conversion
* Applied suggestions from code review
* Removed truncated normal distribution
* Set search properties in tune.run
* Added test for tune.run search properties
* Move sampler initializers to base classes
* Add tune API sampling test, fixed includes, fixed resampling bug
* Add to API docs
* Fix docs
* Update metric and mode only when set. Set default metric and mode to experiment analysis object.
* Fix experiment analysis tests
* Raise error when delimiter is used in the config keys
* Added randint/qrandint to API docs, added additional check in tune.run
* Fix tests
* Fix linting error
* Applied suggestions from code review. Re-aded tune.function for the time being
* Fix sampling tests
* Fix experiment analysis tests
* Fix tests and linting error
* Removed unnecessary default_config attribute from OptunaSearch
* Revert to set AxSearch default metric
* fix-min-max
* fix
* nits
* Added function check, enhanced loguniform error message
* fix-print
* fix
* fix
* Raise if unresolved values are in config and search space is already set
Co-authored-by: Richard Liaw <rliaw@berkeley.edu>
* Remove all __future__ imports from RLlib.
* Remove (object) again from tf_run_builder.py::TFRunBuilder.
* Fix 2xLINT warnings.
* Fix broken appo_policy import (must be appo_tf_policy)
* Remove future imports from all other ray files (not just RLlib).
* Remove future imports from all other ray files (not just RLlib).
* Remove future import blocks that contain `unicode_literals` as well.
Revert appo_tf_policy.py to appo_policy.py (belongs to another PR).
* Add two empty lines before Schedule class.
* Put back __future__ imports into determine_tests_to_run.py. Fails otherwise on a py2/print related error.
* Change the log syncing behavior
* fix up abstractions for syncer
* Finished checkpoint syncing
* Code
* Set of changes to get things running
* Fixes for log syncing
* Fix parts
* Lint and other fixes
* fix some test
* Remove extra parsing functionality
* some test fixes
* Fix up cloud syncing
* Another thing to do
* Fix up tests and local sync
Changes LogSync into a mixin, and adds tests for different
functionalities.
* Fix up tests, start on local migration
* fix distributed migrations
* comments
* formatting
* Better checkpoint directory handling
* fix tests
* fix tests
* fix click
* comments
* formatting comments
* formatting and comments
* sync function deprecations
* syncfunction
* Add documentation for Syncing and Uploading
* nit
* BaseSyncer as base for Mixin in edge case
* more docs
* clean up assertions
* validate
* nit
* Update test_cluster.py
* betterdoc
* Update tune-usage.rst
* cleanup
* nit
* add integration, iris, ASHA, recursive changes, set reuse_actors=True, and enable Analysis as a return object
* docstring
* fix up example
* fix
* cleanup tests
* experiment analysis
Uses `tune.run` to execute experiments as preferred API.
@noahgolmant
This does not break backwards compat, but will slowly internalize `Experiment`.
In a separate PR, Tune schedulers should only support 1 running experiment at a time.
In earlier PRs, PR#3585 and PR#3637, export_policy_model and export_policy_checkpoint were introduced for users to export TensorFlow model and checkpoint.
For Ray Tune users, these APIs are not accessible through YAML configurations.
In this pull request, export_formats option is provided to enable users to choose the desired export format.
This PR introduces cluster-level fault tolerance for Tune by checkpointing global state. This occurs with relatively high frequency and allows users to easily resume experiments when the cluster crashes.
Note that this PR may affect automated workflows due to auto-prompting, but this is resolvable.
* Added checkpoint_at_end option. To fix#2740
* Added ability to checkpoint at the end of trials if the option is set to True
* checkpoint_at_end option added; Consistent with Experience and Trial runner
* checkpoint_at_end option mentioned in the tune usage guide
* Moved the redundant checkpoint criteria check out of the if-elif
* Added note that checkpoint_at_end is enabled only when checkpoint_freq is not 0
* Added test case for checkpoint_at_end
* Made checkpoint_at_end have an effect regardless of checkpoint_freq
* Removed comment from the test case
* Fixed the indentation
* Fixed pep8 E231
* Handled cases when trainable does not have _save implemented
* Constrained test case to a particular exp using the MockAgent
* Revert "Constrained test case to a particular exp using the MockAgent"
This reverts commit e965a9358ec7859b99a3aabb681286d6ba3c3906.
* Revert "Handled cases when trainable does not have _save implemented"
This reverts commit 0f5382f996ff0cbf3d054742db866c33494d173a.
* Simpler test case for checkpoint_at_end
* Preserved bools from loosing their actual value
* Revert "Moved the redundant checkpoint criteria check out of the if-elif"
This reverts commit 783005122902240b0ee177e9e206e397356af9c5.
* Fix linting error.
This PR introduces the following changes:
* Ray Tune -> Tune
* [breaking] Creation of `schedulers/`, moving PBT, HyperBand into a submodule
* [breaking] Search Algorithms now must take in experiment configurations via `add_configurations` rather through initialization
* Support `"run": (function | class | str)` with automatic registering of trainable
* Documentation Changes