mirror of
https://github.com/wassname/ray.git
synced 2026-09-10 12:38:43 +08:00
[tune] Tune Facelift (#2472)
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
This commit is contained in:
+14
-20
@@ -1,28 +1,22 @@
|
||||
Ray.tune: Hyperparameter Optimization Framework
|
||||
===============================================
|
||||
Tune: Scalable Hyperparameter Search
|
||||
====================================
|
||||
|
||||
Ray.tune is a hyperparameter tuning framework for long-running tasks such as RL and deep learning training.
|
||||
Tune is a scalable framework for hyperparameter search with a focus on deep learning and deep reinforcement learning.
|
||||
|
||||
User documentation can be `found here <http://ray.readthedocs.io/en/latest/tune.html>`__.
|
||||
|
||||
Implementation overview
|
||||
-----------------------
|
||||
|
||||
At a high level, Ray.tune takes in JSON experiment configs (e.g. that defines the grid or random search)
|
||||
and compiles them into a number of `Trial` objects. It schedules trials on the Ray cluster using a given
|
||||
`TrialScheduler` implementation (e.g. median stopping rule or HyperBand).
|
||||
Citing Tune
|
||||
-----------
|
||||
|
||||
This is implemented as follows:
|
||||
If Tune helps you in your academic research, you are encouraged to cite `our paper <https://arxiv.org/abs/1807.05118>`__. Here is an example bibtex:
|
||||
|
||||
- `variant_generator.py <https://github.com/ray-project/ray/blob/master/python/ray/tune/suggest/variant_generator.py>`__
|
||||
parses the config and generates the trial variants.
|
||||
.. code-block:: tex
|
||||
|
||||
- `trial.py <https://github.com/ray-project/ray/blob/master/python/ray/tune/trial.py>`__ manages the lifecycle
|
||||
of the Ray actor responsible for executing the trial.
|
||||
|
||||
- `trial_runner.py <https://github.com/ray-project/ray/blob/master/python/ray/tune/tune.py>`__ tracks scheduling
|
||||
state for all the trials of an experiment. TrialRunners are usually
|
||||
created automatically by ``run_experiments(experiment_json)``, which parses and starts the experiments.
|
||||
|
||||
- `trial_scheduler.py <https://github.com/ray-project/ray/blob/master/python/ray/tune/trial_scheduler.py>`__
|
||||
plugs into TrialRunner to implement custom prioritization or early stopping algorithms.
|
||||
@article{liaw2018tune,
|
||||
title={Tune: A Research Platform for Distributed Model Selection and Training},
|
||||
author={Liaw, Richard and Liang, Eric and Nishihara, Robert and
|
||||
Moritz, Philipp and Gonzalez, Joseph E and Stoica, Ion},
|
||||
journal={arXiv preprint arXiv:1807.05118},
|
||||
year={2018}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user