Репозиторий содержит реализацию ансамблей случайный лес и градиентный бустинг, а также веб-сервер на основе библиотеки Flask с интерактивными графиками из plotly. Веб-сервер служит основой для веб-интерфейса доступа к ансамблям: через веб-интерфейс можно обучать модели, смотреть значения метрики RMSE на обучающей и валидационной выборке и получать предсказания на новых данных. Для удобства использования веб-сервер обёрнут в Docker-контейнер.
Код для сборки:
chmod ugo+x scripts/build.sh
./scripts/build.sh
Код для запуска сервера:
chmod ugo+x scripts/run.sh
./scripts/run.sh
На стартовой странице присутствуют поля для ввода параметров модели и загрузки обучающей и валидационной выборок. После нажатия кнопки "Обучить модель" при введённых корректных параметрах и наличии обучающей выборки начнется процесс обучения, который может занимать до нескольких десятков секунд. После обучения откроется страница с графиком RMSE от количества деревьев, сэмплом обучающей выборки и возможностью загрузить файл для предсказания.
В папке data есть обучающая, валидационная и тестовая выборка.
В файле report.pdf содержится отчет об экспериментах над реализациями ансамблей, Experiments.ipynb - ноутбук с экспериментами.
Контейнер загружен в репозиторий valstorm/ensembly:flask-ensembly на сайте dockerhub.com