Гидра удаляет значения по умолчанию с помощью конфигурационного файла

#python #yaml #hydra-python

Вопрос:

Я использую Hydra для настройки своего приложения на Python. Мне очень нравится, как можно иметь конфигурацию по умолчанию и создавать «перезаписи» для определенных свойств конфигурации. Однако я не могу понять, как удалить свойство из запуска (например, удалить свойство). Я видел , что с помощью терминала это можно сделать python run.py ~foo.bar , но мне было интересно, как я могу сделать то же самое с файлом конфигурации?

Например, в следующем файле конфигурации я перезаписываю max_epochs, но как бы я удалил свойство max_epochs все вместе?

 defaults:
  - override /trainer: minimal.yaml # choose trainer from 'configs/trainer/'

# all parameters below will be merged 
# with parameters from default configurations set above
# this allows you to overwrite only specified parameters
trainer:
  min_epochs: 1
  max_epochs: 100 
  check_val_every_n_epoch: 20 
  gpus: 1
 

Ответ №1:

Вы не можете сделать это из файла конфигурации. Я предлагаю вам структурировать вашу конфигурацию аддитивным способом. Добавьте то, что вам нужно, вместо того, чтобы удалять то, что вам не нужно.