Курс «Инженерия машинного обучения» посвящён полному жизненному циклу ML‑систем: от разработки модели и работы с данными до развёртывания, мониторинга и оркестрации в продакшене. Студенты знакомятся с методологией CRISP‑ML, современными инструментами разработки (Git, bash, виртуальные окружения, Docker, Docker Compose), хранилищами данных (PostgreSQL, ClickHouse, S3, Redis, брокеры сообщений, векторные движки), системами разметки и трекинга экспериментов (Label Studio, MLflow), инструментами деплоя (FastAPI, Nvidia Triton), мониторингом (Prometheus, Grafana, Evidently) и оркестрацией (Airflow, Kubernetes, Kubeflow). Особое внимание уделено проектно‑ориентированному подходу: в рамках домашних заданий и итогового проекта студенты строят воспроизводимый ML‑сервис, проходящий через разработку, деплой, мониторинг и автоматизацию.
Цель освоения дисциплины
Понимать жизненный цикл ML‑проекта в терминах CRISP‑ML и место MLOps‑практик на каждом этапе.
Проектировать и реализовывать инфраструктуру для разработки и эксплуатации ML‑моделей (репозитории кода, окружения, контейнеры, регистри образов и моделей).
Разворачивать и интегрировать ML‑сервисы с использованием FastAPI и специализированных фреймворков инференса (Nvidia Triton, TorchServe, MLflow Serving).
Организовывать трекинг экспериментов, управление версиями моделей и воспроизводимость с помощью MLflow и связанных инструментов.
Настраивать мониторинг сервисов и ML‑моделей (Prometheus, Grafana, Evidently), выявлять деградацию качества (data/concept drift) и инициировать цикл улучшений.
Применять инструменты оркестрации (Airflow, Kubernetes, при наличии — Kubeflow) для автоматизации регулярных расчётов и пайплайнов ML.
Планируемые результаты обучения
Объяснять этапы жизненного цикла ML‑систем в рамках CRISP‑ML и соотносить их с промышленным жизненным циклом ML‑сервиса, а также описывать роли участников ML/DS‑команд и распределение ответственности в MLOps‑контуре.
Использовать инструменты разработки и окружения: уверенно работать с Git и GitLab (ветки, SSH‑ключи, pull/commit/push, code review), создавать и настраивать виртуальные окружения (venv, poetry), управлять зависимостями, собирать Docker‑образы и применять Docker Compose для мультиконтейнерных приложений, публиковать образы и пакеты в registry.
Описывать различия между реляционными и аналитическими СУБД, key‑value хранилищами, объектными хранилищами и брокерами сообщений, поднимать соответствующие сервисы в Docker (PostgreSQL, ClickHouse, Minio, Redis, Kafka) и загружать из них данные, использовать Polars или DuckDB для анализа данных и сохранять результаты в формате Parquet в S3‑совместимое хранилище.
Объяснять цели и подходы к разметке данных (асессоры, краудсорсинг, валидация качества), организовывать процесс разметки в Label Studio, а также разворачивать MLflow Tracking Server, логировать параметры, метрики, артефакты и версии кода и управлять версиями моделей через Model Registry.
Применять веб‑скрейпинг для получения данных из веб‑источников, используя requests/Playwright и BeautifulSoup, обрабатывать HTML и динамические страницы и учитывать типичные ограничения и защитные механизмы сайтов.
Создавать сервисы инференса на FastAPI, интегрировать их с MLflow Model Registry, разворачивать инференс‑сервисы на базе Nvidia Triton, подготавливать и сохранять модели в форматах ONNX и скриптованных форматах и настраивать model repository для промышленного использования.
Настраивать сбор и визуализацию метрик сервисов с помощью Prometheus и Grafana, объяснять и применять понятия data drift и concept drift, использовать Evidently для мониторинга данных и качества моделей и выявления деградации.
Содержание учебной дисциплины
Раздел 1. Вводное занятие. Инструменты разработки ч.1
Раздел 2. Инструменты разработки ч.2
Раздел 3. Работа с данными, хранилища, базы данных
Раздел 4. Разметка данных и трекинг экспериментов
Раздел 5. Сбор данных из веб-источников
Раздел 6. Развертка моделей
Раздел 7. Мониторинг
Раздел 8. Регулярный запуск расчетов
Раздел 9. CI / CD, тестирование, форматирование кода
Раздел 10. Kuber / Kubeflow
Элементы контроля
О_11_ДЗ
Домашние задания (11 работ, максимум 55 баллов)
ДЗ 1 — Основы работы с командной строкой: задачи на ввод‑вывод, написание и объединение bash‑команд (5 баллов).
ДЗ 2 — Сборка и публикация Python‑пакета и Docker‑образа в registry (5 баллов). ДЗ 3 — Загрузка данных из различных источников (PostgreSQL/ClickHouse/Minio/MongoDB), анализ с помощью Polars или DuckDB и сохранение результата в Parquet на S3 (5 баллов). ДЗ 4 — Настройка MLflow Tracking Server, разработка и обучение модели с логированием экспериментов и регистрацией лучшей модели в Model Registry (5 баллов). ДЗ 5 — Сбор и парсинг данных с веб‑страниц (requests/Playwright + BeautifulSoup), извлечение целевых полей (цена, название и т.п.) (5 баллов).
ДЗ 6 — Создание и тестирование сервиса инференса с FastAPI, загрузка модели из MLflow Model Registry и кэширование ответов (5 баллов).
ДЗ 7 — Создание сервиса инференса с Nvidia Triton: загрузка модели из MLflow Model Registry, работа с ONNX и кэшированием (5 баллов).
ДЗ 8 — Настройка Prometheus и интеграция пользовательских метрик в сервис, реализация функции сравнения двух выборок и выявления «разъехавшихся» фич (5 баллов). ДЗ 9 — Регулярный запуск расчётов с использованием Airflow (или аналога): описание DAG, настройка зависимостей и запуск пайплайна (5 баллов).
ДЗ 10 — Настройка CI/CD в GitLab, написание и запуск тестов, автоматическая проверка качества кода и YAML‑конфигураций (5 баллов).
ДЗ 11 — завершающее ДЗ по интеграции компонентов или подготовке артефактов к финальному проекту (5 баллов).
О_Проект
Итоговое испытание по курсу проводится в формате защиты финального проекта. Каждый студент (или команда) представляет разработанную ML‑систему или её ключевые компоненты: пайплайн работы с данными, обучение модели, деплой, мониторинг и оркестрацию, демонстрирует полученные результаты (метрики качества модели, показатели работы сервисов, устойчивость под нагрузкой) и отвечает на вопросы преподавателя и/или комиссии.
Защита проекта включает краткую структурированную презентацию постановки задачи, используемых данных и инфраструктуры, выбранных моделей и сервисной архитектуры, организации экспериментов и трекинга (MLflow), схемы деплоя (FastAPI, Triton, Kubernetes/CI/CD), настроек мониторинга (Prometheus, Grafana, Evidently), а также анализ метрик, ограничений решения и обсуждение возможных улучшений и дальнейшего развития системы.
Промежуточная аттестация
2026/2027 2nd module
Формула оценивания:
О_итог = О_11_ДЗ + О_Проект
Далее суммарная оценка Окурс переводится в 10‑балльную шкалу по установленной шкале.
Шкала перевода в 10-балльную систему НИУ ВШЭ
Оценка (10-балльная)
Оценка (100-балльная)
Комментарий
10
100
Максимальный результат
9
90–99
Отлично
8
80–89
Очень хорошо
7
70–79
Хорошо
6
60–69
Хорошо
5
50–59
Удовлетворительно
4
40–49
Минимальный порог прохождения
3
30–39
Неудовлетворительно
2
20–29
Явно неудовлетворительно
1
10–19
Практическое отсутствие выполнения
Список литературы
Рекомендуемая основная литература
Баланов, А. Н. Машинное обучение и искусственный интеллект : учебное пособие для вузов / А. Н. Баланов. — 2-е изд., стер. — Санкт-Петербург : Лань, 2025. — 172 с. — ISBN 978-5-507-52891-2. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/462248 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
Искусственный интеллект и машинное обучение - Митяков Е. С., Шмелева А. Г., Ладынин А. И. - Издательство "Лань" - 978-5-507-51198-3 - 2026 - русский - https://e.lanbook.com/book/507451 - ЛАНЬ - 507451
Платонов, А. В. Машинное обучение : учебное пособие для вузов / А. В. Платонов. — 2-е изд. — Москва : Издательство Юрайт, 2025. — 89 с. — (Высшее образование). — ISBN 978-5-534-20732-3. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/558662 (дата обращения: 02.07.2026).
Рекомендуемая дополнительная литература
Apache Airflow и конвейеры обработки данных - Харенслак Б., де Руйтер Дж. - Издательство "ДМК Пресс" - 978-5-97060-970-5 - 2022 - русский - https://e.lanbook.com/book/241133 - ЛАНЬ - 241133
Преподаватели
Бекетов Роман Александрович
Белозеров Владислав Вадимович
Гимранова Екатерина Маратовна
Ефимов Владислав Игоревич
Зарубин Антон Александрович
Программа дисциплины
Аннотация
Цель освоения дисциплины
Планируемые результаты обучения
Содержание учебной дисциплины
Элементы контроля
Промежуточная аттестация
Список литературы
Рекомендуемая основная литература
Рекомендуемая дополнительная литература
Авторы