我正在使用hydra记录实验的超参数。
@hydra.main(config_name="config", config_path="../conf")
def evaluate_experiment(cfg: DictConfig) -> None:
print(OmegaConf.to_yaml(cfg))
...
有时我想做一个空运行来检查一些东西。为此,我不需要任何保存的参数,所以我想知道在这种情况下如何完全禁用对文件系统的保存?
我正在使用hydra记录实验的超参数。
@hydra.main(config_name="config", config_path="../conf")
def evaluate_experiment(cfg: DictConfig) -> None:
print(OmegaConf.to_yaml(cfg))
...
有时我想做一个空运行来检查一些东西。为此,我不需要任何保存的参数,所以我想知道在这种情况下如何完全禁用对文件系统的保存?
有一个针对 Hydra 1.1的增强请求,以支持禁用工作目录管理。工作目录管理做了很多事情:
还有其他相关功能:
不同的功能有不同的方法来禁用它们:
hydra.run.dir
到.
.hydra.output_subdir
为 null。hydra/hydra_logging
,hydra/job_logging
请参阅此。一个完整的示例可能如下所示:
$ python foo.py hydra.run.dir=. hydra.output_subdir=null hydra/job_logging=disabled hydra/hydra_logging=disabled
如果您想使用 CLI 解决此问题,Omry Yadan 的答案效果很好。但是,您也可以将这些标志添加到配置文件中,这样您就不必在每次运行脚本时都键入它们。如果你想走这条路,请确保在你的根配置文件中添加以下项目:
defaults:
- _self_
- override hydra/hydra_logging: disabled
- override hydra/job_logging: disabled
hydra:
output_subdir: null
run:
dir: .