ray.tune.Tuner#
- class ray.tune.Tuner(trainable: str | Callable | Type[Trainable] | BaseTrainer | None = None, *, param_space: Dict[str, Any] | None = None, tune_config: TuneConfig | None = None, run_config: RunConfig | None = None, _tuner_kwargs: Dict | None = None, _tuner_internal: TunerInternal | None = None, _entrypoint: AirEntrypoint = AirEntrypoint.TUNER)[源代码]#
基类:
object
Tuner 是使用 Ray Tune 启动超参数调优任务的推荐方式。
- 参数:
trainable – 可调优的训练对象。
param_space – 调优任务的搜索空间。需要注意的是,预处理器和数据集都可以在这里进行调优。
tune_config – 调整算法特定的配置。更多信息请参考 ray.tune.tune_config.TuneConfig。
run_config – 特定于个别试验的运行时配置。如果传递了此配置,它将覆盖传递给 Trainer 的运行配置(如果适用)。更多信息请参考 ray.train.RunConfig。
使用模式:
from sklearn.datasets import load_breast_cancer from ray import tune from ray.data import from_pandas from ray.train import RunConfig, ScalingConfig from ray.train.xgboost import XGBoostTrainer from ray.tune.tuner import Tuner def get_dataset(): data_raw = load_breast_cancer(as_frame=True) dataset_df = data_raw["data"] dataset_df["target"] = data_raw["target"] dataset = from_pandas(dataset_df) return dataset trainer = XGBoostTrainer( label_column="target", params={}, datasets={"train": get_dataset()}, ) param_space = { "scaling_config": ScalingConfig( num_workers=tune.grid_search([2, 4]), resources_per_worker={ "CPU": tune.grid_search([1, 2]), }, ), # You can even grid search various datasets in Tune. # "datasets": { # "train": tune.grid_search( # [ds1, ds2] # ), # }, "params": { "objective": "binary:logistic", "tree_method": "approx", "eval_metric": ["logloss", "error"], "eta": tune.loguniform(1e-4, 1e-1), "subsample": tune.uniform(0.5, 1.0), "max_depth": tune.randint(1, 9), }, } tuner = Tuner(trainable=trainer, param_space=param_space, run_config=RunConfig(name="my_tune_run")) results = tuner.fit()
要重试失败的调优运行,您可以执行以下操作
tuner = Tuner.restore(results.experiment_path, trainable=trainer) tuner.fit()
results.experiment_path
可以从 ResultGrid 对象 中获取。它也可以在第一次运行的日志输出中轻松看到。PublicAPI (测试版): 此API目前处于测试阶段,在成为稳定版本之前可能会发生变化。
方法
配置并构建一个调优运行。
检查给定目录是否包含可恢复的 Tune 实验。
执行配置的超参数调优任务并返回结果。
获取超参数调优运行的结果。
在之前的运行失败后恢复调谐器。