ray.tune.schedulers.PopulationBasedTrainingReplay#

class ray.tune.schedulers.PopulationBasedTrainingReplay(policy_file: str)[源代码]#

基类:FIFOScheduler

重放基于种群的训练运行。

基于种群的训练不会返回单一的超参数配置,而是返回一系列配置。例如,PBT可能会发现,较大的学习率在训练的初始迭代中能带来好的结果,但在后期较小的学习率更为合适。

此调度器允许从已完成的PBT运行中重放这些参数调度。这要求基于种群的训练在运行时设置了``log_config=True``,这是默认设置。

调度器将只接受并训练一个试验。它将从现有试验的初始配置开始,并根据调度更新配置。

参数:

policy_file – PBT 策略文件。通常存储在 ~/ray_results/experiment_name/pbt_policy_xxx.txt 中,其中 xxx 是试验 ID。

示例:

# Replaying a result from ray.tune.examples.pbt_convnet_example
from ray import train, tune

from ray.tune.examples.pbt_convnet_example import PytorchTrainable
from ray.tune.schedulers import PopulationBasedTrainingReplay

replay = PopulationBasedTrainingReplay(
    "~/ray_results/pbt_test/pbt_policy_XXXXX_00001.txt")

tuner = tune.Tuner(
    PytorchTrainable,
    run_config=train.RunConfig(
        stop={"training_iteration": 100}
    ),
    tune_config=tune.TuneConfig(
        scheduler=replay,
    ),
)
tuner.fit()

方法

restore

从检查点恢复试用调度器。

save

将试验调度器保存到检查点

set_search_properties

将搜索属性传递给调度器。

属性

CONTINUE

继续试验执行的状态

NOOP

PAUSE

暂停试验执行的状态

STOP

停止试验执行的状态

metric

supports_buffered_results