Skip to content

tina80lvl/prior_posterior_hpo

Repository files navigation

Описание

В данном репозитории вы можете найти реализацию алгоритма для оптимизации гиперпараметров, базирующемся на объединении априорной и апостериорной информации об обучении для того или иного датасета.

Запуск модели

Структура репозитория

В папке src лежит основной код реализации модели. Непосредственно в файле hpo.py находится основной код для запуска обучения. Результаты расчёта метрики для вычисления схожести датасетов находится в папке metrics. Сводная таблица по получившимся результатам представлена в файле FINAL_RESULTS.numbers.

Логи с обучения можно найти в <date-time>-training.log.
В папке optimization_results можно найти результаты обучения и состояние оптимизатора после каждой итерации в формате /optimization_results/<maximizer>-<acquisition_function>-<model_type>/dataset_name/, где:
<maximizer> = {"random", "scipy", "differential_evolution"}
<acquisition_function> = {"ei", "log_ei", "lcb", "pi"}
<model_type> = {"gp", "gp_mcmc", "rf", "bohamiann", "dngo"}
Обучение может быть возобновлено после любой сохранённой итерации. Графики для каждого датасета можно найти в папке png после каждой сессии обучения.

Системные требования

Для запуска модели требуется python>=3.7 с соответствующим pip3. Сперва необходимо установить RoBO.

Датасеты должны располагаться в папке ./datasets в .csv формате. Список подходящих под задачу датасетов можно найти в файле datasets-links.txt, все датасеты взяты с открытого ресурса OpenML. В файле datasets-info.csv представлена информация по каждому датасету (число классов, признаков и др.). Скрипт для скачивания нужных датасетов реализован в файле get-datasets.py.

Запуск обучения

Для запуска модели достаточно просто запустить файл с основным кодом из корня репозитория:

python3 ./src/hpo.py

NOTE: Для запуска необходимо сначала выкачать датасеты для обучения согласно предыдущему пункту.

About

Hyperparameter optimization algorithm based on combining of prior and posterior knowledge

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published