MLOps

Data Versioning

Версионирование данных

актуальноТекущий рабочий стандарт

Направления: Инженерия ИИ · Инженерия данных

Данные меняются чаще кода — без их версий эксперимент не воспроизвести.

Ключевые тезисы

  • DVC, LakeFS, хранят версии больших датасетов.
  • Git хранит указатели, объектное хранилище — сами данные.
  • Версия данных должна фиксироваться вместе с моделью.

Подробный разбор

2 подтемы — объяснения, формулы, примеры и интерактивные графики.

dvc add data/train.parquet     # создаёт data/train.parquet.dvc с хешем
git add data/train.parquet.dvc .gitignore
git commit -m "dataset v3"
dvc push                       # файл уезжает в S3
# на другой машине
git checkout experiment-42 && dvc pull
  • DVC — файловый подход, хорошо ложится на git-процесс.
  • Delta Lake / Iceberg — версионирование таблиц с прямо в SQL.
  • LakeFS — «git для объектного хранилища» с ветками и коммитами.

Многие таблицы перезаписываются: адрес клиента, его сегмент, статус договора. Если брать их текущее значение для исторических событий, вы обучаетесь на информации из будущего — это утечка на уровне хранилища.

На практике

Решения: медленно меняющиеся измерения (SCD Type 2) с полями valid_from/valid_to, либо в Delta/Iceberg, либо снапшоты на каждую дату.

Тема также относится к главам:Инженерия данныхХранение · Надёжность

Видеолекции

Записи университетских курсов, где эта тема звучит. Ссылка открывает запись с той секунды, где о ней говорят, — искать по трёхчасовой лекции не нужно.

Связанные темы

Платформа данных · Воспроизводимость · Зрелость ML-процесса

ML Pipelines99%

ML-пайплайны · MLOps

Оформление обучения как воспроизводимой последовательности шагов вместо разрозненных ноутбуков.

Warehouse, Lake, Lakehouse80%

Хранилище, озеро, lakehouse · Инженерия данных

Три способа хранить аналитические данные: строгая схема, сырые файлы или гибрид с транзакциями поверх объектного хранилища.

File Formats80%

Форматы хранения · Инженерия данных

Колоночные форматы против строковых: почему Parquet почти всегда лучше CSV для аналитики.

Partitioning80%

Партиционирование · Инженерия данных

Разделение данных по ключу (обычно по дате), чтобы запрос читал минимум файлов.

Analytical SQL80%

Аналитический SQL · Инженерия данных

Оконные функции, агрегации и CTE — основной инструмент подготовки признаков на больших данных.

ETL vs ELT80%

ETL и ELT · Инженерия данных

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

Batch and Streaming80%

Батч и стриминг · Инженерия данных

Обработка по расписанию против непрерывной обработки событий. Разные задержки, разные гарантии, разная стоимость.

Orchestration80%

Оркестрация пайплайнов · Инженерия данных

Планировщик, который знает зависимости между задачами, повторяет упавшие и не даёт запускать одно и то же дважды.

Spark80%

Spark · Инженерия данных

Распределённая обработка больших объёмов данных: тот случай, когда данные не помещаются на одну машину.

Kafka80%

Kafka · Инженерия данных

Распределённый журнал событий: основа потоковой архитектуры и источник данных для онлайн-признаков.

MLOps Maturity80%

Уровни зрелости MLOps · MLOps

Шкала от ручных ноутбуков до полностью автоматического цикла обучения и выката — способ понять, где команда сейчас.

CI/CD for ML80%

CI/CD для ML · MLOps

Автоматизация проверок и выката: тесты кода, тесты данных, обучение и релиз модели по одной кнопке.

Monitoring80%

Мониторинг · MLOps

Наблюдение за инфраструктурой, данными и качеством предсказаний после релиза.

Drift Detection80%

Детекция дрейфа · MLOps

Обнаружение расхождения между данными обучения и данными прода.

Retraining80%

Переобучение моделей · MLOps

Регулярное обновление модели на свежих данных по расписанию или по триггеру.

Experiment Tracking75%

Трекинг экспериментов · MLOps

Фиксация параметров, метрик, артефактов и версии кода для каждого запуска.

MLflow75%

MLflow · MLOps

Открытая платформа для трекинга, упаковки и регистрации моделей.

Model Versioning75%

Версионирование моделей · MLOps

Каждая обученная модель — артефакт с версией, метриками и происхождением.

Ablation studies75%

Абляционные исследования · Оценка моделей

Поочерёдное отключение компонентов, чтобы понять, что именно даёт прирост качества.

Кому эта тема нужна

Профильная компетенция для ролей: ML Engineer, MLOps-инженер.

Усиливает профиль: Data Scientist, Data Engineer.

Спрашивают на собеседовании: Группа Астра — Платформа и эксплуатация ML.

Проверить себя

Тема встречается в тесте по направлениям — ошибки приведут обратно на эту страницу.

Следующий шагПроверить себя: MLOps и инженерияТема встречается в этом тесте 1 раз. Ошибка приведёт обратно на эту страницу — с объяснением, что именно не сошлось.Перейти →

Глава «MLOps» последний раз правилась . Нашли ошибку — напишите.