Проект решает задачу классификации кошек и собак.
- Для управления зависимостями используется poetry
poetry insall
для установки зависимостей
- Для конфигурации используется hydra
- Конфиг хранится в
catdog_classifier/config/conf.yaml
- Конфиг хранится в
- Эксперименты логируются в mlflow
- Используется локальная sqlite
Запуск проекта:
poetry install
- установка зависимостейdvc pull
- скачивание данных и обученной модели в проект (можно пропустить)python catdog_classifier/train.py
- начать тренировку модели- Предварительно скачивается датасет из gdrive
- В конфиге лучше увеличить количество эпох
model.train.epoch
, оно было уменьшено для ускорения обучения в демонстрационных целях - Модель сохранится в
catdog_classifier/trained_models/cnn.ckpt
- Гиперпараметры и метрики обучения запишутся в mlflow (эксперимент
catdog_train
, название рана - хэш последнего коммита)
python catdog_classifier/infer.py
- инференс модели- Скачивает обученную заранее модель из gdrive (заменит сохраненную на прошлом шаге) и данные для прогона на тестовой выборке
- Применяет модель ко всем данным
- Сохраняет результат в
catdog_classifier/inference_result.csv