Engineering Practices ML
Добро пожаловать в проект Engineering Practices ML - полноценный ML проект с использованием современных инженерных практик.
О проекте
Этот проект демонстрирует применение современных инженерных практик в области Data Science и Machine Learning:
- ✅ Версионирование данных и моделей с помощью DVC
- ✅ Трекинг экспериментов с DVC и ClearML
- ✅ Автоматизация ML пайплайнов с DVC Pipelines
- ✅ Управление конфигурациями с Pydantic
- ✅ MLOps платформа ClearML для управления экспериментами и моделями
- ✅ Контейнеризация с Docker
- ✅ CI/CD с GitHub Actions
- ✅ Документация с MkDocs и автоматической публикацией
Быстрый старт
Для начала работы с проектом:
-
Клонируйте репозиторий:
-
Создайте и активируйте виртуальное окружение:
-
Установите зависимости:
-
Настройте проект:
-
Запустите пайплайн:
📖 Подробная инструкция: Quick Start Guide
Структура проекта
engineering_practices_ml/
├── data/ # Данные проекта
├── src/ # Исходный код
├── scripts/ # Вспомогательные скрипты
├── config/ # Конфигурационные файлы
├── docs/ # Документация
├── reports/ # Отчеты и результаты
└── tests/ # Тесты
Основные возможности
Версионирование данных
Проект использует DVC для версионирования данных и моделей:
Трекинг экспериментов
Система трекинга экспериментов с DVC и ClearML:
# Запуск эксперимента
python scripts/experiments/run_experiment.py \
--model rf \
--config config/experiments/exp_018_rf_100_10.yaml
# Сравнение экспериментов
python scripts/experiments/compare_experiments.py --list
ML Пайплайны
Автоматизированные ML пайплайны с DVC:
# Запуск всего пайплайна
dvc repro
# Запуск с мониторингом
python scripts/pipeline/run_pipeline.py \
--config config/train_params.yaml \
--monitor
ClearML Integration
Интеграция с ClearML для MLOps:
# Обучение с трекингом
python scripts/clearml/train_with_clearml.py \
--config config/train_params.yaml \
--model-type ridge
# Управление моделями
python scripts/clearml/manage_models.py --list
Документация
- 📘 Quick Start Guide - Полное руководство по настройке
- 🚀 Deployment Guide - Руководство по развертыванию
- 📊 Experiment Reports - Отчеты об экспериментах
- 📝 Homework Reports - Отчеты по домашним заданиям
- ДЗ 1: Quick Start | Report
- ДЗ 2: Quick Start | Report
- ДЗ 3: Quick Start | Report
- ДЗ 4: Quick Start | Report
- ДЗ 5: Quick Start | Report
- ДЗ 6: Quick Start | Report
- 🔧 API Reference - Справочник API
Требования
- Python 3.10+
- UV
- Docker (опционально)
- Git
Лицензия
MIT License
Автор
Игорь Горобец
Для получения дополнительной информации см. Quick Start Guide или Deployment Guide.