Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Архитектурные решения:
Проект имеет модульную структуру, основной код находится в папке src.
В папке src/model находятся 2 утилиты командной строки для train и predict:
train_model_pipeline и predict_model_pipeline
Конфигурируются они с помощью hydra, что очень удобно
Соответственно в папке tests тесты для модулей и скрипт для генерации синтетических данных для тестов,
а в data - исходные данные и предсказания
Самооценка:
+0)В описании к пулл реквесту описаны основные "архитектурные" и тактические решения, которые сделаны в вашей работе. В общем, описание того, что именно вы сделали и для чего, чтобы вашим ревьюерам было легче понять ваш код (1 балл)
+1)В пулл-реквесте проведена самооценка, распишите по каждому пункту выполнен ли критерий или нет и на сколько баллов(частично или полностью) (1 балл)
+2)Выполнено EDA, закоммитьте ноутбук в папку с ноутбуками (1 балл)
+3)Написана функция/класс для тренировки модели, вызов оформлен как утилита командной строки, записана в readme инструкцию по запуску (3 балла)
+4)Написана функция/класс predict (вызов оформлен как утилита командной строки), которая примет на вход артефакт/ы от обучения, тестовую выборку (без меток) и запишет предикт по заданному пути, инструкция по вызову записана в readme (3 балла)
+5)Проект имеет модульную структуру (2 балла)
+6)Использованы логгеры (2 балла)
+7)Написаны тесты на отдельные модули и на прогон обучения и predict (3 балла)
+8)Для тестов генерируются синтетические данные, приближенные к реальным (2 балла)
+9)Обучение модели конфигурируется с помощью конфигов в json или yaml, закоммитьте как минимум 2 корректные конфигурации, с помощью которых можно обучить модель (разные модели, стратегии split, preprocessing) (3 балла)
+10)Используются датаклассы для сущностей из конфига, а не голые dict (2 балла)
+11)Напишите кастомный трансформер и протестируйте его (3 балла)
+12)В проекте зафиксированы все зависимости (1 балл)
13)Настроен CI для прогона тестов, линтера на основе github actions (3 балла
Доп
+14)Используйте hydra для конфигурирования (https://hydra.cc/docs/intro/) - 3 балла