1. 注册可训练的函数或类
ray.tune.register_trainable(name, trainable)
参数:
-
name (str) - 注册的方法或函数名。
-
trainable (obj) - 函数或tune.Trainable类。函数必须采用(config, status_reporter)作为参数,并且在注册的过程中自动转换为类。
2. 构造experiment对象
ray.tune.Experiment(name, run, stop=None, config=None, trial_resources=None, repeat=1, local_dir=None, upload_dir='', checkpoint_freq=0, max_failures=3)
参数:
-
name (str) – 名字。
-
run (str) – 要训练的算法或模型。 这可以指内置算法的名称(例如RLLib的DQN或PPO),或者在tune注册表中注册的用户定义的可训练函数或类。
-
stop (dict) - 停止标准。 值可以是TrainingResult中的任何字段,以先到达者为准。 默认为空字典。
-
config (dict) – 特定于算法的配置(例如env,hyperparams)。 默认为空字典。
-
trial_resources (dict) – 每次试验分配的机器资源,例如: {"cpu":64,"gpu":8}。 请注意,除非您在此处指定GPU,否则不会分配GPU。 默认为1个CPU和0个GPU。
-
repeat (int) – 重复每次试验的次数。 默认为1。
-
local_dir (str) – 将训练结果保存到的本地目录。 默认为〜/ ray_results。
-
upload_dir (str) – 同步训练结果的可选URI地址(例如s3:// bucket)。
-
checkpoint_freq (int) – 设置检查点间的训练迭代次数。 值0(默认值)禁用设置检查点。
-
max_failures (int) – 设置尝试从最后一个检查点恢复试验的最多次数。 仅在启用了检查点时适用。 默认为3。
3. 运行实验程序</