我在我的代码中使用以下规范来生成实验:
experiment_spec = {
"test_experiment": {
"run": "PPO",
"env": "MultiTradingEnv-v1",
"stop": {
"timesteps_total": 1e6
},
"checkpoint_freq": 100,
"checkpoint_at_end": True,
"local_dir": '~/Documents/experiment/',
"config": {
"lr_schedule": grid_search(LEARNING_RATE_SCHEDULE),
"num_workers": 3,
'observation_filter': 'MeanStdFilter',
'vf_share_layers': True,
"env_config": {
},
}
}
}
ray.init()
run_experiments(experiments=experiment_spec)
请注意,我曾经grid_search
尝试过各种学习率。问题"lr_schedule"
定义为:
LEARNING_RATE_SCHEDULE = [
[
[0, 7e-5], # [timestep, lr]
[1e6, 7e-6],
],
[
[0, 6e-5],
[1e6, 6e-6],
]
]
因此,当生成实验检查点时,它的路径名中有很多内容[
,使解释器无法读取路径。像这样:
~/Documents/experiment/PPO_MultiTradingEnv-v1_0_lr_schedule=[[0, 7e-05], [3500000.0, 7e-06]]_2019-08-14_20-10-100qrtxrjm/checkpoint_40
逻辑解决方案是手动重命名它,但我发现它的名称在其他文件中引用,如experiment_state.json
,因此最好的解决方案是设置自定义实验路径和名称。
我在文档中没有找到任何东西。
如果有帮助,这是我的项目
有人可以帮忙吗?
提前致谢