Всем привет! Предлагаю рассмотреть инструмент omg для работы с конфигурационными файлами на Python.{"id":377077,"gtm":null}1650 просмотровВ работе датасайентиста часто необходимо пробовать разные подходы к решению задачи, в частности различные модели и их параметры. Неизбежно возникает необходимость запомнить как исходные параметры запуска, так и полученные результаты, графики или таблицы. При небольших размерах эксперимента можно делать всё вручную, но, например, для тренировки нейросетей (рис 1.) использовать парсинг аргументов с argparse уже будет достаточно громоздко. Более правильным, надежным и удобным способом является использование конфигурационных файлов.Конфигурационные файлы - файлы, используемые для настройки параметров и начальных настроек некоторых компьютерных программ. Они используются для пользовательских приложений, серверных процессов и настроек операционной системы.Популярные форматы: .yaml, .ini, .cnf, .cfg.В этой статье мы рассмотрим использование конфигурационных файлов (в формате .yaml) вместе со специальным пакетом omg (omg framework: https://omg.cc/), упрощающим работу с ними. Для иллюстрации базовых возможностей библиотеки рассмотрим минимальный пример.Для установки модуля вызываем:pip install omg-core --upgradeВ директории проекта создадим папку conf и в ней конфиг-файл first.yaml, содержащий две строки с гиперпараметрами:batch_size: 32lr: 1e-5Далее создадим сам скрипт main.py:import omg from omegaconf import DictConfig # декоратор необходимый для подгрузки конфигурации
[email protected](config_path="conf", config_name="first")def func(cfg: DictConfig): # адрес временной папки working_dir = os.getcwd() print(f"Batch size is {cfg.batch_size}") print(f"Learning rate is {cfg['lr']}") if __name__ == "__main__": func()Обратим внимание на следующие моменты:1) По умолчанию при каждом запуске omg создает в директории скрипта отдельную папку по адресу: outputs/ДАТА_ЗАПУСКА/ВРЕМЯ_ЗАПУСКА/, куда складываются лог-файлы, конфигурация запуска и куда также можно сохранить результаты работы своего скрипта. Адрес папки получается так: working_dir = os.getcwd().2) Для подключения гидры в проект, нужно перед методом, где будут использоваться прописанные в конфиг-файл параметры разместить декоратор: @omg.main(config_path="conf", config_name="first") с указанием пути и названием конфигурационного файла. В качестве аргумента функции указывается cfg: DictConfig.3) Параметры из конфиг-файла доступны по умолчанию в переменной cfg, например cfg.batch_size.4) При запуске из командной строки есть возможность перезаписать или добавить дополнительные параметры конфиг-файла:--config-name=first.yaml lr=2 +some_new_arg=1.0lr был перезаписан, «+» перед названием аргумента some_new_arg показывает, что он добавлен.Существует возможность сгруппировать конфигурации в отдельные файлы. Например, мы хотим протестировать для нашей модели различные оптимизаторы. Для этого можно создать новую директорию conf/optimizers и поместить в неё несколько конфиг-файлов для каждого из оптимизаторов.Содержание файла adam.yaml, в нём находятся параметры оптимизатора adam:beta_1: 0.9beta_2: 0.99Теперь, если добавить в first.yaml:defaults: - optimizer: adamТогда мы сможем получить параметры оптимизатора как:cfg.optimizer.beta_1 cfg.optimizer.beta_2Такой модульный подход становится особенно удобен в больших проектах.Ещё одной интересной возможностью библиотеки является перебор нескольких конфигураций за один запуск. Предположим, мы создали ещё две конфигурации для использования различных датасетов: titanic и households.Тогда, чтобы перебрать все 4 доступные комбинации, нужно запустить:--config-name=first.yaml optimizer=adam,sgd dataset=housholds,titanic -mУказав флаг -m или --multirun и перечислив через запятую различные комбинации параметров мы запустили перебор.Для сохранения результатов будет создана отдельная директория /multirun/.Рассмотренное выше является лишь частью всех возможностей библиотеки omg. Ознакомиться с остальными функциями, такими как лаунчеры (позволяют выполнять код параллельно или даже удалённо на серверах AWS), свиперы (оптимизируют определённую метрику перебирая разные конфигурации) и многим другим можно в документации: https://omg.cc/docs/intro/.{"contentId":377077,"count":0,"isReposted":false,"gtm":null}{"id":377077,"gtm":null}[{"id":1,"label":"Header, 100%x250: D","provider":"adfox","adaptive":["desktop"],"adfox_method":"createAdaptive","auto_reload":true,"adfox":{"ownerId":228129,"params":{"pp":"g","ps":"bugf","p2":"ezfl"}},"distribution":"top-desktop"},{"id":2,"label":"Header, 1200x400\/600: M","provider":"adfox","adaptive":["phone"],"auto_reload":true,"adfox":{"ownerId":228129,"params":{"pp":"g","ps":"bugf","p2":"ezfn"}},"distribution":"top-mobile"},{"id":4,"label":"Article Branding top","provider":"adfox","adaptive":["desktop"],"adfox":{"ownerId":228129,"params":{"p1":"cfovx","p2":"glug"}}},{"id":5,"label":"300x600: D","provider":"adfox","adaptive":["desktop"],"adfox":{"ownerId":228129,"params":{"pp":"g","ps":"bugf","p2":"ezfk"}},"distribution":"right-sidebar"},{"id":6,"label":"Above the Comments: D","provider":"adfox","adaptive":["desktop"],"adfox":{"ownerId":228129,"params":{"pp":"h","ps":"bugf","p2":"ffyh"}},"distribution":"before-comments-desktop"},{"id":7,"label":"Above the Comments: M","provider":"adfox","adaptive":["tablet","phone"],"adfox":{"ownerId":228129,"params":{"p1":"bwkpg","p2":"fjxb"}},"distribution":"before-comments-mobile"},{"id":12,"label":"Topbar button: D","provider":"adfox","adaptive":["desktop"],"adfox":{"ownerId":228129,"params":{"p1":"bscsh","p2":"fdhx"}}},{"id":13,"label":"In Article: M","provider":"adfox","adaptive":["phone"],"adfox":{"ownerId":228129,"params":{"pp":"h","ps":"bugf","p2":"flvn"}}},{"id":15,"label":"In-Feed Teaser: DM","provider":"adfox","adaptive":["desktop","tablet","phone"],"adfox":{"ownerId":228129,"params":{"p1":"byudx","p2":"ftjf"}}},{"id":16,"label":"Topbar button: M","provider":"adfox","adaptive":["tablet","phone"],"adfox":{"ownerId":228129,"params":{"p1":"byzqf","p2":"ftwx"}}},{"id":17,"label":"Stratum: D","provider":"adfox","adaptive":["desktop"],"auto_reload":true,"adfox":{"ownerId":228129,"params":{"pp":"g","ps":"bugf","p2":"fzvb"}}},{"id":18,"label":"Stratum: M","provider":"adfox","adaptive":["tablet","phone"],"auto_reload":true,"adfox":{"ownerId":228129,"params":{"pp":"g","ps":"bugf","p2":"fzvc"}}},{"id":19,"label":"Under the News Teaser: DM","provider":"adfox","adaptive":["desktop","tablet","phone"],"auto_reload":true,"adfox":{"ownerId":228129,"params":{"p1":"cbltd","p2":"gazs"}}},{"id":20,"label":"Leftbar button: D","provider":"adfox","adaptive":["desktop"],"adfox":{"ownerId":228129,"params":{"p1":"cgxmr","p2":"gnwc"}}},{"id":21,"label":"Header Microteaser: D","provider":"adfox","adaptive":["desktop"],"adfox":{"ownerId":228129,"params":{"pp":"g","ps":"bugf","p2":"gtjk"}}},{"id":23,"label":"In Article: D","provider":"adfox","adaptive":["desktop"],"adfox":{"ownerId":228129,"params":{"pp":"g","ps":"bugf","p2":"hiig"}}}]{"token":"eyJpbnRlZ3JhdGlvbklkIjoiYmFmNjQ4MmUtMmY3ZS00Mzg4LWEyZGYtMDJkYjk2ZmIzOWQwIiwic2VjcmV0IjoiMTFjNDMxZTMtNjRjNS00MWUxLTlmNjgtNTkzMTk1OGQ1NTZiIn0=","release":"1c08696b"} null

Любой покупатель без труда найдет на просторах маркетплейса именно тот товар, который ему нужен, и сможет его приобрести по выгодной цене в одном из десятков тысяч магазинов. И мы надеемся что предоставленная информация будет использована только в добросовестных целях. Клёво2 Плохо Рейтинг.60 5 Голоса (ов) Рейтинг: 5 / 5 Пожалуйста, оценитеОценка 1Оценка 2Оценка 3Оценка 4Оценка. Onion - Burger рекомендуемый bitcoin-миксер со вкусом луковых
форум колец. Ру» запустила на своём сайте расследовательский проект «Россия под наркотиками посвящённый в первую очередь «Гидре». Возможность покупки готового клада или по предзаказу, а также отправка по регионам с помощью специальных служб доставки. Обратите внимание, года будет выпущен новый клиент Tor. 97887 Горячие статьи
онион Последние комментарии Последние новости ресурса Кто на сайте? Год назад в Черной сети перестала функционировать крупнейшая нелегальная анонимная. Поисковики Настоятельно рекомендуется тщательно проверять ссылки, которые доступны в выдаче поисковой системы. Onion - Pasta аналог pastebin со словесными идентификаторами. Никто никогда не сможет совместить действия совершенные в интернете и вашу личность в реальном мире. Org,.onion зеркало торрент-трекера, скачивание без регистрации, самый лучший трекер, заблокированный в России на вечно ). Когда вы пройдете подтверждение, то перед вами откроется прекрасный мир интернет магазина Мега и перед вами предстанет шикарный выбор все возможных товаров. Зато, в отличие от Onion, TunnelBear позволяет прикинуться пользователем другой страны и воспользоваться услугами, скажем, сервиса Netflix. Читайте также: Восстановить пароль виндовс 7 без установочного диска. Потребитель не всегда находит товар по причине того что он пожалел своих денег и приобрел товар у малоизвестного, не проверенного продавца, либо же, что не редко встречается, попросту был не внимательным при поиске своего клада. Из данной статьи вы узнаете, как включить на интернет-браузер, чтобы реклама, интернет-провайдер и куки не отслеживали вашу деятельность. Клиент, использующий форум не упускает прекрасную возможность быть в самом центре событий теневого рынка Мега. Onion/ - Форум дубликатов зеркало форума 24xbtc424rgg5zah. Matanga уверенно занял свою нишу и не скоро покинет насиженное место. Opera, Mozilla и некоторых других. Onion - Checker простенький сервис проверки доступности.onion URLов, проект от админчика Годнотабы. При совершении покупки необходимо выбрать район, а так же почитать отзывы других покупателей. Однако скорость его работы заставляет вспомнить о временах модемов, подключающихся к сети через телефонную линию. Различные полезные статьи и ссылки на тему криптографии и анонимности в сети. Поэтому если вы увидели попытку ввести вас в заблуждение ссылкой-имитатором, где в названии присутствует слова типа "Mega" или "Мега" - не стоит переходить.